Capacity calculator tool

Hi guys,

I made a simple webpage/tool that lets you calculate the amount of storage required for sets/bins/records. At this point the tool calculates on disk storage requirements without indexes or replication. It only supports the integer and string/blob types. Please use with caution and at your own risk.

Checkt it out at: https://geertjohan.net/aerospike-capacity-calculator/

The source lives at GitHub - GeertJohan/aerospike-capacity-calculator: Aerospike capacity calculator

Issues/PR’s are very welcome.

6 Likes

Just pushed some updates. Added primary key memory usage calculation and data-in-memory calculations.

Hi Geert Johan,

Thank you for creating this tool! We’ll have a look internally, and welcome feedback from the community users as well.

We always appreciate contributions from the community such as these. Please keep them coming!

Cheers,

Maud

1 Like

Oops! It looks like there were a few bugs in the last commit, those are fixed now and everything should work again. (I should have added tests…)

1 Like

@vshield something like this makes a lot more sense than giant excel sheets

Nice job GeertJohan

Appreciate your efforts.

Sure Albot, will consider and make all attempts to improve the planning :slight_smile:

Cheers

1 Like

Nice tool. Suggestions - 1 - on Block size, may be make it drop down with two options - 128 and 512, or keep fixed at 128. In reality it will always be 128 bytes read block size for SSD and used for rounding the record size. for older Aerospike revs, may be 512. 2 - If you want to be fussy, put 63 char limit on set name. 3 - totalsizeRecords is actual bytes of data + overhead == vs == totalsizeOnDisk - actual disk space required. you could omit the totalSizeofRecords - what one really needs is the totalSizeOnDisk. again just a fine point.

Great contribution, I am going to use for rough sizing estimates!

1 Like

Thanks @vshield, if you are missing features and/or are making improvements I’d be happy to take PR’s on github.

Thank you, GeertJohan for this sizing tool!

Two question:

  1. Using the tool shows that there is a per bin overhead of 28 bytes.

I am looking at documentation for sizing Aerospike and it does seem to indicate this - have things changed since the tool was released?

  1. There seems to be a large influence of block-size on the total size on disk. I cant seem to find docs explaining this. Has this changed as well?

Thanks!

Hi @linear

I honestly didn’t even know that tool was still up on my domain, haha. It’s been a long time since I worked on it so things may definitely have changed!

I’m not using Aerospike at the moment, so I’m not up-to-date with the latest and greatest in advancements and specs. I wonder if maybe the Aerospike Team would be interested in adopting this tool… @aerospike ?

@linear Since you mentioned in the other thread, you are an EE customer, you should have access to Aerospike Academy. Please audit the Intro course, module 4 - Sizing - video recording - that will give a good starting point. There is one update since then, Server Ver 6.0x+ added 4 bytes to identify end of record on device storage.