2 millions de bases de données? Je suppose que vous vouliez dire "rangées".
Quoi qu'il en soit, en ce qui concerne les limitations: l'une des choses les plus importantes à garder à l'esprit est que NDB/MySQL Cluster n'est pas une base de données à usage général. Plus particulièrement, les opérations de jointure, mais aussi les sous-requêtes et les opérations de plage (requêtes comme: commandes créées il y a une semaine) peuvent être considérablement plus lentes que ce à quoi vous pourriez vous attendre. Cela est dû en partie au fait que les données sont réparties sur plusieurs nœuds. Bien que certaines améliorations aient été apportées, les performances de Join peuvent être très décevantes. D'un autre côté, si vous avez besoin de gérer de nombreuses (de préférence petites) transactions simultanées (généralement des mises à jour/insertions/suppressions de lignes simples par clé primaire) et de garder toutes vos données en mémoire, alors peut être une solution très évolutive et performante.
Vous devriez vous demander pourquoi vous voulez un cluster. Si vous voulez simplement votre base de données ordinaire que vous avez maintenant, sauf avec 99,999% de disponibilité supplémentaire, alors vous pourriez être déçu. Il est certain que le cluster MySQL peut vous fournir une disponibilité et une disponibilité exceptionnelles, mais la charge de travail de votre application n'est peut-être pas très bien adaptée aux besoins du cluster. De plus, vous pourrez peut-être utiliser une autre solution à haute disponibilité pour augmenter la disponibilité de votre base de données traditionnelle.
BTW - Voici une liste des limitations par la doc: http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-limitations.html
Mais quoi que vous fassiez, essayer cluster, voir si son bon pour vous. Le cluster MySQL n'est pas "MySQL + 5". Vous découvrirez quand vous essayez.