25.6.7.1 Добавление узлов данных NDB Cluster онлайн: общие вопросы
В этом разделе приводится общая информация о работе и текущих ограничениях при добавлении узлов NDB Cluster онлайн.
Перераспределение данных. Возможность добавления новых узлов онлайн включает возможность реорганизации данных таблиц NDBCLUSTER и индексов таким образом, чтобы они были распределены по всем узлам данных, включая новые, с помощью инструкции ALTER
TABLE ... REORGANIZE PARTITION. Поддерживается реорганизация таблиц как в памяти, так и на диске. Это перераспределение в настоящее время не включает уникальные индексы (перераспределяются только упорядоченные индексы).
Перераспределение для таблиц NDBCLUSTER, уже существующих до добавления новых узлов данных, не происходит автоматически, но может быть выполнено с помощью простых SQL-инструкций в mysql или другом приложении-клиенте MySQL. Однако все данные и индексы, добавленные в таблицы, созданные после добавления новой группы узлов, распределяются автоматически между всеми узлами данных кластера, включая добавленные в рамках новой группы узлов.
Частичный запуск. Можно добавить новую группу узлов, не запустив все новые узлы данных. Также можно добавить новую группу узлов в деградировавший кластер — то есть, кластер, запущенный только частично, или где один или несколько узлов данных не работают. В последнем случае кластер должен иметь достаточно запущенных узлов, чтобы быть работоспособным, прежде чем можно будет добавить новую группу узлов.
Влияние на текущие операции. Обычные операции DML с использованием данных NDB Cluster не препятствуют созданию или добавлению новой группы узлов, или реорганизации таблиц. Однако одновременное выполнение DDL с реорганизацией таблиц невозможно — то есть, нельзя выдавать другие инструкции DDL во время выполнения инструкции ALTER TABLE ...
REORGANIZE PARTITION. Кроме того, во время выполнения ALTER TABLE ...
REORGANIZE PARTITION (или выполнения любой другой инструкции DDL) невозможно перезапустить узлы данных кластера.
Обработка ошибок. Ошибки узлов данных во время создания группы узлов и реорганизации таблиц обрабатываются, как показано в следующей таблице:
Таблица 25.38 Обработка ошибок узлов данных во время создания группы узлов и реорганизации таблиц
| Ошибка во время | Ошибка в узле данных “Старый” | Ошибка в узле данных “Новый” | Ошибка системы |
|---|---|---|---|
| Создание группы узлов |
|
|
|
| Реорганизация таблиц |
|
|
|
Удаление групп узлов. Клиент ndb_mgm поддерживает команду DROP NODEGROUP, но удалить группу узлов можно только тогда, когда ни один узел данных в группе не содержит данных. Поскольку в настоящее время нет возможности “очистить” конкретный узел данных или группу узлов, эта команда работает только в следующих двух случаях:
После выдачи
CREATE NODEGROUPв клиенте ndb_mgm, но до выдачи каких-либо инструкцийALTER TABLE ... REORGANIZE PARTITIONв клиенте mysql.-
После удаления всех таблиц
NDBCLUSTERс помощьюDROP TABLE.TRUNCATE TABLEне подходит для этой цели, так как узлы данных по-прежнему хранят определения таблиц.
© 2025 Oracle
Licensed under the GPLv2 License.