We have an application with 8000 users accessing in parallel(max). We are trying to bring in horizontal scaling. I came across MySQL NDB cluster. Should I go with it? Just for auto sharding and other features if I go with it, will it impact performance?


  1. Most of the tables in our database has foreign key relationship.
  2. It is a B2B application.
  3. This is one of the deployments.
  4. The db size is 900 MB.
  5. As customers grow the size is expected to grow.
  6. Both outer as well as inner Joins are used frequently.
  7. Host machine is Windows Server 2012
  8. The present 8000 user count is expected to grow to 100000 within 2 weeks.
  9. Queries per second with 8000 users = 110.086.

If not NDB Cluster, then what is the best way to bring in horizontal scaling? with less pain like auto sharding, auto replication,...etc.

  • How many queries per second? – Rick James Mar 18 '18 at 20:12
  • What is the size of the database? Also, do you mean horizontal scaling, i.e. adding more servers rather than upgrading the ones you have? – dbdemon Mar 18 '18 at 22:59
  • @dbdemon as ofnow db size is 900MiB. I meant horizontal scaling. This is to be done in future if data increases. – Mani Mar 19 '18 at 1:37
  • @RickJames currently total no of users=8000 and queries per second=110.086 per second.Used this to get queries/second – Mani Mar 19 '18 at 4:31

NDB is more complex to set up, but may provide a faster way to get to 13K qps sharded across multiple machines.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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