MySQL Cluster
MySQL Cluster to technologia umożliwiająca realizację założeń klastrowej bazy danych utrzymywanej w pamięci operacyjnej i na dysku twardym(opcjonalnie). Stworzona zgodnie z założeniami architektury shared nothing . Jest to technologia charakteryzująca się wysoką dostępnością i redundancją danych. Mechanizmem bazodanowym MySQL Cluster jest NBD("NDB" znaczy Network Database).
Spis treści |
Architektura [edytuj]
Najważniejszymi założeniami MySQL Cluster są:
Replikacja danych [edytuj]
MySQL Cluster używa synchronicznej replikacji danych z użyciem podwójnego zatwierdzenia dokonanych zmian w bazie danych. Synchroniczna replikacja danych gwarantuje wysoką dostępność danych. Od wersji MySQL 5.1 dostępna jest takża replikacja asynchroniczna pomiędzy klastrami.
Horyzontalne partycjonowanie danych [edytuj]
Hybrydowe przechowywanie danych [edytuj]
Dane w MySQL Cluster mogą być przechowywane w pamięci operacyjnej i na dysku twardym.
[edytuj]
MySQL Cluster nie posiada w swoim sytemie pojedynczych punktów awarii. Gwarantuje to prawidłową prace bazy nawet gdy ulegnie awarii pojedynczy węzeł danych lub węzeł zarządzający danymi.
Implementacja [edytuj]
W MySQL Cluster jest zbudowany na podstawie trzech typów węzłów:
- Węzeł danych(program ndbd): Węzeł przechowujący dane.
- Węzeł zarządzający(program ndb_mgmd): Węzeł zarządzający i konfigurujący klaster.
- Węzeł API(program mysqld): Węzeł obsługujący zapytania od klienta do bazy danych .
Ograniczenia [edytuj]
Różne węzły systemu mogą znajdować się na różnych komputerach. Wiąże się z tym koszt połączenia sieciowego. Koszt ten może znacznie zmniejszyć szybkość działania MySQL Cluster.
Pozostałe ograniczenia są opisane tutaj:
MySQL Cluster Limitations 5.1.
MySQL Cluster Limitations 5.5.