In MySQL website I see below definition for MySQL Cluster.

MySQL Cluster is a technology that enables clustering of in-memory databases in a shared-nothing system.

I want to use Clustering for a chat application like viber that there are some Ejabberd servers, which use MySQL as database.Is it necessary that databases use in-memory tables. according this definition all databases and tables should be in-memory or not?

This is the link of MySQL Cluster definition.

2 Answers 2


In NDB Cluster, data does not have be memory-resident, but I think the indexes do.

This technology is good for high availability and high activity. It is not for the typical RDBMS application.

NDB's Replication is based on "eventual consistency", where in you can do conflicting inserts/updates, but define the rules of which one wins.

While it is closely related to the rest of MySQL, NDB Cluster is not identical; there will be some coding changes if you migrate.

  • what do you mean by "coding changes". If I migrate the database to NDB what considerations do I need to take care of
    – amir jj
    Mar 28, 2016 at 7:02

I saw below sentence in Oracle document and I think this is the answer :

MySQL Cluster supports disk-based as well as in-memory data. However, there are some limitations on disk storage to be aware of. For example, non-indexed data can reside on disk but indexed columns must always be in memory. The larger the database, the more likely you will need more memory/hardware.

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.