25.2 Обзор кластера NDB
- 25.2.1 Основные понятия кластера NDB
- 25.2.2 Узлы, группы узлов, фрагментные копии и разделы кластера NDB
- 25.2.3 Требования к оборудованию, программному обеспечению и сети для кластера NDB
- 25.2.4 Что нового в MySQL NDB Cluster 8.4
- 25.2.5 Добавленные, устаревшие или удаленные опции, переменные и параметры в NDB 8.4
- 25.2.6 MySQL-сервер с InnoDB по сравнению с NDB Cluster
- 25.2.7 Известные ограничения кластера NDB
Кластер NDB — это технология, которая позволяет кластеризовать базы данных в оперативной памяти в системе без общего ресурса. Архитектура без общего ресурса позволяет системе работать с очень недорогим оборудованием и с минимальными требованиями к оборудованию или программному обеспечению.
Кластер NDB разработан таким образом, чтобы не иметь единой точки отказа. В системе без общего ресурса каждый компонент должен иметь собственную память и диск, а использование механизмов совместного хранения данных, таких как сетевые общие ресурсы, сетевые файловые системы и SAN, не рекомендуется и не поддерживается.
Кластер NDB интегрирует стандартный MySQL-сервер с кэшируемым кластерным хранилищем, называемым NDB (что расшифровывается как “Cетевая База Данных”). В нашей документации термин NDB относится к части настройки, специфичной для хранилища, в то время как “MySQL NDB Cluster” относится к сочетанию одного или нескольких MySQL-серверов с NDB хранилищем.
Кластер NDB состоит из набора компьютеров, известных как узлы, на каждом из которых выполняется один или несколько процессов. Эти процессы, известные как узлы, могут включать MySQL-серверы (для доступа к данным NDB), узлы данных (для хранения данных), один или несколько серверов управления и, возможно, другие специализированные программы доступа к данным. Взаимосвязь этих компонентов в кластере NDB показана здесь:
Рисунок 25.1 Компоненты кластера NDB
Все эти программы работают вместе, образуя кластер NDB (см. Раздел 25.5, «Программы кластера NDB»). Когда данные хранятся с помощью хранилища NDB, таблицы (и данные таблиц) хранятся в узлах данных. Такие таблицы напрямую доступны со всех других MySQL-серверов (узлов SQL) в кластере. Таким образом, в приложении для расчета заработной платы, хранящем данные в кластере, если одно приложение обновляет зарплату сотрудника, все остальные MySQL-серверы, которые запрашивают эти данные, сразу же увидят это изменение.
Узел SQL кластера NDB 8.4 использует демона сервера mysqld, который такой же, как и mysqld, поставляемый с дистрибутивами MySQL Server 8.4. Следует помнить, что экземпляр mysqld, независимо от версии, который не подключен к кластеру NDB, не может использовать хранилище NDB и не может получить доступ к данным кластера NDB.
Данные, хранящиеся в узлах данных кластера NDB, могут быть дублированы; кластер может обрабатывать сбои отдельных узлов данных без каких-либо других последствий, кроме того, что небольшое количество транзакций будет прервано из-за потери состояния транзакции. Поскольку ожидается, что прикладные программы, использующие транзакции, будут обрабатывать сбои транзакций, это не должно стать источником проблем.
Отдельные узлы могут быть остановлены и перезапущены, а затем могут снова присоединиться к системе (кластеру). Поэтапный перезапуск (при котором все узлы перезапускаются по очереди) используется при внесении изменений в конфигурацию и обновлении программного обеспечения (см. Раздел 25.6.5, «Выполнение поэтапного перезапуска кластера NDB»). Поэтапный перезапуск также используется в процессе добавления новых узлов данных в работу (см. Раздел 25.6.7, «Добавление узлов данных кластера NDB в работу»). Дополнительную информацию об узлах данных, о том, как они организованы в кластере NDB, и о том, как они обрабатывают и хранят данные кластера NDB, см. в Разделе 25.2.2, «Узлы, группы узлов, фрагментные копии и разделы кластера NDB».
Резервное копирование и восстановление баз данных кластера NDB можно выполнить с помощью встроенных функций клиента управления кластером NDB и программы ndb_restore, включенной в дистрибутив кластера NDB. Дополнительную информацию см. в Разделе 25.6.8, «Онлайн-резервное копирование кластера NDB» и Разделе 25.5.23, «ndb_restore — Восстановление резервной копии кластера NDB». Вы также можете использовать стандартные функции MySQL для этой цели в mysqldump и MySQL-сервере. Дополнительную информацию см. в Разделе 6.5.4, «mysqldump — Программа резервного копирования баз данных».
Узлы кластера NDB могут использовать различные механизмы передачи для межузловой связи; в большинстве реальных развертываний используется TCP/IP по стандартному оборудованию Ethernet со скоростью 100 Мбит/с или выше.
© 2025 Oracle
Licensed under the GPLv2 License.