21.6.7.1 Добавление узлов данных NDB Cluster онлайн: Общие вопросы
В этом разделе предоставляется общая информация о поведении и текущих ограничениях при добавлении узлов кластера NDB онлайн.
Перераспределение данных. Возможность добавления новых узлов онлайн включает средства реорганизации данных и индексов таблиц NDBCLUSTER таким образом, чтобы они распределялись по всем узлам данных, включая новые, с помощью инструкции ALTER
TABLE ... REORGANIZE PARTITION. Поддерживается реорганизация таблиц как для таблиц в оперативной памяти, так и для таблиц на диске. Это перераспределение в настоящее время не включает уникальные индексы (перераспределяются только упорядоченные индексы).
Перераспределение для таблиц NDBCLUSTER, уже существовавших до добавления новых узлов данных, не является автоматическим, но может быть выполнено с помощью простых SQL-запросов в mysql или другом приложении-клиенте MySQL. Однако все данные и индексы, добавленные в таблицы, созданные после добавления новой группы узлов, распределяются автоматически по всем узлам данных кластера, включая те, что были добавлены в рамках новой группы узлов.
Частичный запуск. Возможно добавление новой группы узлов без запуска всех новых узлов данных. Также возможно добавление новой группы узлов в деградированный кластер — то есть кластер, который запущен только частично, или где один или несколько узлов данных не работают. В последнем случае кластер должен иметь достаточно работающих узлов для работоспособности, прежде чем можно будет добавить новую группу узлов.
Воздействие на текущие операции. Обычные операции DML с использованием данных кластера NDB не препятствуют созданию или добавлению новой группы узлов, или реорганизации таблиц. Однако нельзя выполнять DDL одновременно с реорганизацией таблиц — то есть, нельзя выдавать другие инструкции DDL во время выполнения инструкции ALTER TABLE ...
REORGANIZE PARTITION. Кроме того, во время выполнения ALTER TABLE ...
REORGANIZE PARTITION (или любой другой инструкции DDL) нельзя перезапускать узлы данных кластера.
Обработка ошибок. Ошибки узлов данных во время создания группы узлов и реорганизации таблиц обрабатываются, как показано в следующей таблице:
Таблица 21.60 Обработка ошибок узлов данных во время создания группы узлов и реорганизации таблиц
| Ошибка во время | Ошибка в узле данных “Старый” | Ошибка в узле данных “Новый” | Ошибка системы |
|---|---|---|---|
| Создание группы узлов |
|
|
|
| Реорганизация таблиц |
|
|
|
Удаление групп узлов. Клиент 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.