Copiar Vertica de Esquema ou de todas as tabelas em um esquema de um cluster para outro Cluster físico

StackOverflow https://stackoverflow.com//questions/25046917

Pergunta

Eu estou tentando exportar e importar Vertica esquema de um cluster para outro cluster físico.Minha instância de Teste tem um único cluster e minha instância de produção de 3 clusters.

Eu explorei seguintes opções, mas eles estão limitados a movimentação de dados em um físico Vertica exemplo:

  1. EXPORTAR PARA VERTICA ..
  2. CÓPIA do esquema.tabela DE VERTICA ...

Gostaria de saber se existe uma opção para mover a Vertica esquema de um físico Vertica instância para outra, com diferente configuração de cluster.

Foi útil?

Solução

Esta é uma manipulação complicada, que tem muitos problemas:

  • Se você copiar o DDLS, perderá o valor atual das seqüências, o que pode significar a chave primária duplicada quando você insere dados.
  • Se as colunas estiverem configuradas como Auto_increment, você não poderá inserir dados nele como estiver na fonte (você não pode forçar uma coluna Auto_increment, embora acredite que isso possa ter sido corrigido em novos lançamentos).
  • Se você copiar DDLs entre clusters com um número diferente de nós, se nomes dos nó for parte da definição de projeção, você acabará com algo que você não quiser.
  • Como você notou, redes diferentes impedirão o uso de conexão.

Uma tentativa de ajudar com isso foi feita em Python através do Pipartica utilidade e especialmente O vertica_migrate script. Você pode encontrar o doc em https://pyverta.readthedocs.org .

Este é um trabalho complicado, e eu sei que há alguns problemas neste script, embora já me ajudou muito

.

Espero que isso tenha ajudado,

Outras dicas

Você pode usar um COPY FROM VERTICA ou EXPORT TO VERTICA para importar/exportar os dados para outro Vertica de banco de dados (independentemente da configuração de nó).Além disso, a tabela de destino tem de existir.Você pode usar EXPORT_OBJECTS para exportar o DDL.Ambos os métodos permitem a migração de dados a partir de uma versão de uma versão anterior do último grande lançamento (em execução 6.x, você pode importar a partir de 5.x).

No exemplo abaixo, eu vou usar EXPORT TO VERTICA para exportar dados a partir do banco de dados de origem para o banco de dados de destino.

Primeiro você deve criar uma conexão com o banco de dados:

CONNECT TO VERTICA VMart USER dbadmin PASSWORD '' ON 'VerticaTarget',5433;

Em seguida, use EXPORT TO VERTICA para exportar os dados de origem para o banco de dados de destino:

EXPORT TO VERTICA VMart.schema.customer_dimension FROM schema.customer_dimension;
                  |______________________________|     |_______________________|
                                 |                                 |
                              Target                            Source

DISCONNECT VMart;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top