Aerospike in-memory DB uses much memory than expected

If you have multiple namespaces, sum for the cluster after computing for each. The memory-size setting of the namespace config is used by the server to trigger evictions and stop-writes.

And, as you note, the memory used by Aerospike process (~1GB) per node, is a good estimate, included default SPRIG (256) memory. However, remember, min RAM allocated for PI (arena stage) is in index-stage-size chunks - 1 GB default - each namespace has its separate arena stages.

Finally, if you get node sizing using a 3 node cluster as per above slides, then deploy a 4 node cluster. 4th node allows extra headroom for rolling upgrades.

I would suggest you review the sizing module video recording of Introduction to Aerospike course in Aerospike Academy. Even CE users get access to the Intro course.

Side note - in SSD storage estimate, in current server version (6.x+), there is an extra 4byte overhead per record stored on device. NA for memory storage.