Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was sind die Einschränkungen bei der Implementierung von MySQL NDB Cluster?

2 Millionen Datenbanken? Ich nehme an, Sie meinten "Zeilen".

Was die Einschränkungen angeht:Eines der wichtigsten Dinge, die Sie beachten sollten, ist, dass NDB/MySQL-Cluster keine Allzweckdatenbank ist. Vor allem Verknüpfungsoperationen, aber auch Unterabfragen und Bereichsoperationen (Abfragen wie:Bestellungen, die zwischen jetzt und vor einer Woche erstellt wurden), können erheblich langsamer sein, als Sie vielleicht erwarten. Dies liegt zum Teil daran, dass die Daten auf mehrere Knoten verteilt sind. Obwohl einige Verbesserungen vorgenommen wurden, kann die Join-Leistung immer noch sehr enttäuschend sein.

Auf der anderen Seite, wenn Sie mit vielen (vorzugsweise kleinen) gleichzeitigen Transaktionen umgehen müssen (normalerweise Aktualisierungen/Einfügungen/Löschungen einzelner Zeilen nach Primärschlüssel) und es Ihnen gelingt, alle Ihre Daten im Speicher zu halten, dann kann es sehr schwierig sein skalierbare und performante Lösung.

Sie sollten sich fragen, warum Sie Cluster wollen. Wenn Sie einfach Ihre normale Datenbank, die Sie jetzt haben, nur mit einer zusätzlichen Verfügbarkeit von 99.999 % wünschen, werden Sie möglicherweise enttäuscht sein. Sicherlich kann MySQL-Cluster Ihnen eine hervorragende Verfügbarkeit und Betriebszeit bieten, aber die Arbeitslast Ihrer App ist möglicherweise nicht sehr gut für die Dinge geeignet, für die Cluster gut sind. Außerdem können Sie möglicherweise eine andere Hochverfügbarkeitslösung verwenden, um die Betriebszeit Ihrer ansonsten traditionellen Datenbank zu erhöhen.

Übrigens - hier ist eine Liste der Einschränkungen gemäß dem Dokument:http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-limitations.html

Aber was auch immer Sie tun, probieren Sie Cluster aus und sehen Sie, ob es gut für Sie ist. MySQL-Cluster ist nicht "MySQL + 5 Neunen". Du wirst es herausfinden, wenn du es versuchst.