I have an NDB cluster which consists of 4 data nodes. Some of the configuration parameters and system resources as :

CPU: 32
RAM: 128GB
Replication factor: 2
Data memory: 70GB
Index memory: 10GB

I am planning to extend cluster capacity. I have two options to achieve this:

  1. I can add more RAM to data nodes so data memory and index memory will be able to double up
  2. I can add 4 data nodes more to cluster so total data memory and index memory increases too

I am not sure which one is a better solution while extending cluster capacity. If I choose first option data size stored per node will be bigger. On the other hand what about 140GB DataMemory per data node? Are there any recommended maximum value for DataMemory ve IndexMemory parameters?

  • database servers do most of their stuff in memory (conversion, calculation, extrapolation etc). CPU handles compilation and recompilation. To see where you should invest in first, query the usage statistics of your server. Index memory will be favourable to index those large tables and keep them there while the data may just be beneficial should you run short on storage.
    – WickedFan
    Commented Nov 8, 2017 at 23:04

1 Answer 1


140GB DataMemory is no problem. So the easiest change is to upgrade memory. Adding nodes increases both memory and CPU capacity. But adding nodes also changes the scalability, so could be both beneficial and negative dependent on the scalability of your application.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.