Копирование схемы Vertica или всех таблиц в схеме из одного физического кластера на другой физический кластер
-
21-12-2019 - |
Вопрос
Я пытаюсь экспортировать и импортировать схему Vertica из одного физического кластера на другой физический кластер. Мой экземпляр теста имеет один кластер, и мой экземпляр производства имеет 3 кластера.
Я исследовал следующие варианты, но они ограничены перемещениями данных на одном физическом экземпляре Vertica:
- Экспорт в вертикальную вершину ..
- Скопируйте схему. Товары от Vertica ...
хотел бы знать, есть ли возможность перемещать схему Vertica из одного физического экземпляра Vertica к другому, с разной конфигурацией кластера.
Решение
Это сложные манипуляции, которые имеют много вопросов:
- .
- Если вы копируете DDLS, вы потеряете текущее значение последовательностей, которые могут означать дубликат первичного ключа при вставке данных.
- Если столбцы настроены как auto_increment, вы не сможете вставлять данные в нем, так как он находится на источнике (вы не можете заставить столбец auto_increment, хотя я считаю, что это могло быть исправлено в новых выпусках).
- Если вы копируете DDL между кластерами с другим количеством узлов, если имена узлов являются частью определения проекции, вы получите то, что вы не хотите.
- Как вы заметили, разные сети предотвратит использование подключения.
Попытка помочь с этим было сделано в Python через pyvertica утилиты и специально vertica_migrate скрипт. Вы можете найти DOC в https://pyvertica.readtheDocks.orgs .
Это сложная работа, и я знаю, что в этом скрипте есть некоторые проблемы, хотя это уже помогло мне много .
Надеюсь, это помогло,
Другие советы
Вы можете использовать либо использовать либо COPY FROM VERTICA
или EXPORT TO VERTICA
Чтобы импортировать / экспортировать данные в другую базу данных Vertica (независимо от конфигурации узла). Кроме того, целевая таблица должна уже существовать. Вы можете использовать EXPORT_OBJECTS
< / a> Экспортировать DDL. Оба метода позволяют миграцию данных из версии, которая является более ранним выпуском из последнего основного выпуска (работает 6.x, вы можете импортировать с 5.x).
Вы должны сначала создать подключение к другой базе данных:
CONNECT TO VERTICA VMart USER dbadmin PASSWORD '' ON 'VerticaTarget',5433;
.
Затем используйте EXPORT TO VERTICA
для экспорта данных из источника в целевую базу данных:
EXPORT TO VERTICA VMart.schema.customer_dimension FROM schema.customer_dimension;
|______________________________| |_______________________|
| |
Target Source
DISCONNECT VMart;
.