Fork me on GitHub

Calculate storage and memory capacity requirements/limits for an Aerospike namespace. This calculator does not (yet) calculate: secondary indexes, replication, single bin sets, data/integer in index.

This calculator only shows absolute usage, you should always over-provision both SSD and RAM. Consult the official Aerospike documentation for more information

The Blob size and Records numeric fields accept 'k', 'm' and 'b'. e.g.: "1.2b" == "1,200,000,000"

Use at your own risk. This is not an official Aerospike tool! Manually verify these calculations by doing your own.

More information about capacity planning: aerospike.com/docs/operations/plan/capacity

Source for this calculator (PR's welcome!): github.com/GeertJohan/aerospike-capacity-calculator

 

Namespace configuration

Storage:
Block size: bytes
Data in memory:

Sets



Start by adding a new set or .

Set {{$index+1}}: {{set.name}}

Name: 9 + {{set.name.length}} = {{set.nameSize()}} bytes
Records: {{set.numRecords | numeraljs:'0,0'}} records

Bins in {{set.name}}

Name Type Data size Device size Memory size Options
8 28 + 2 + 8 = 38 5 + {{bin.size}} = {{28+5+bin.size}} bytes 12 + 0 + 0 = 12 5 + {{bin.size}} = {{12+5+bin.size}} bytes
{{set.binsDeviceSize()}} bytes {{set.binsMemorySize()}} bytes

Device requirements

How many bytes are required to store all records?

Set Record size Record size on disk Records Total size Total size on disk
{{set.name}} 64 + {{set.nameSize()}} + {{set.binsDeviceSize()}} = {{set.recordDeviceSize()}} {{set.recordDeviceSizeOnDisk()}} {{set.numRecordsText}} {{set.recordDeviceSize()*set.numRecords | numeraljs:'0.[00]b'}} {{set.recordDeviceSizeOnDisk()*set.numRecords | numeraljs:'0.[00]b'}}
{{namespace.totalRecordDeviceSize() | numeraljs:'0.[00]b'}} {{namespace.totalRecordDeviceSizeOnDisk() | numeraljs:'0.[00]b'}}

Memory requirements

Primary indexes

How many RAM is required to store the primary keys?

Set Index size
{{set.name}} 64 * {{set.numRecordsText}} = {{64*set.numRecords | numeraljs:'0.[00]b'}}
{{64*namespace.totalNumRecords() | numeraljs:'0.[00]b'}}

Data in memory

How many RAM is required to store the data in-memory?

Set Record size Records Total size
{{set.name}} 2 + {{set.binsMemorySize()}} = {{set.recordMemorySize()}} {{set.numRecordsText}} {{set.recordMemorySize()*set.numRecords | numeraljs:'0.[00]b'}}
{{namespace.totalRecordMemorySize() | numeraljs:'0.[00]b'}}