Esta página oferece uma visão geral das maneiras de migrar dados para dentro e para fora do AlloyDB para PostgreSQL.
Importando dados
É possível migrar dados para o AlloyDB de duas maneiras:
Importando manualmente arquivos que contêm seus dados.
Usando Google Cloud o Database Migration Service para migrar o conteúdo de uma instância ativa inteira do PostgreSQL para um novo cluster do AlloyDB. Para mais informações, consulte Migrar usando o Database Migration Service.
Importar dados arquivados de arquivos
O AlloyDB permite importar dados de arquivos localizados em um bucket do Cloud Storage. O AlloyDB oferece suporte a vários formatos de arquivo para importação de dados, incluindo:
CSV, com o conteúdo de uma tabela por arquivo, carregado usando
psql.DMP, um arquivo binário de um banco de dados PostgreSQL inteiro, importado usando
pg_restore.SQL, uma reconstrução de texto simples de um banco de dados PostgreSQL, processada com
psql.
Migrar uma instância ativa com o Database Migration Service
Como alternativa à importação manual de arquivos de despejo de dados, você pode usar o Database Migration Service para AlloyDB. Esse serviço permite migrar todo o conteúdo de uma instância ativa do PostgreSQL, incluindo todos os bancos de dados e metadados, para um novo cluster do AlloyDB. O Database Migration Service pode ajudar você a fazer a transição dos aplicativos atuais para usar o AlloyDB como novo armazenamento de dados com tempo de inatividade mínimo.
Locais compatíveis com dados importados
O AlloyDB oferece suporte aos seguintes locais:
- O conjunto completo de locais fornecidos pela ICU.
- Um conjunto limitado de locais fornecidos por
libc:C.UTF-8en_US.utf8
Se o banco de dados que você quer importar para o AlloyDB for padrão para um local libc diferente dos dois listados aqui, ainda será possível importar os dados, mas esse padrão não será transferido. Para garantir que as consultas SQL que usam ORDER BY classifiquem os resultados corretamente, talvez seja necessário realizar outras etapas após a importação dos dados.
Recomendamos permitir que o novo banco de dados use o local padrão do AlloyDB: C.UTF-8, fornecido por libc. Em seguida, associe
ordenações a todas as
colunas que as consultas do aplicativo possam envolver em ORDER BY
cláusulas, nomeando uma ordenação adequada baseada em ICU para cada uma delas. É possível
fazer isso usando ALTER TABLE DDL
consultas, como a seguinte:
ALTER TABLE TABLE_NAME
ALTER COLUMN COLUMN_NAME
SET DATA TYPE COLUMN_DATA_TYPE
COLLATE "COLLATION_NAME";
Um novo cluster do AlloyDB define centenas de agrupamentos
com base em locais fornecidos pela ICU, e você pode adicionar mais usando o recurso
CREATE COLLATION do PostgreSQL. Para conferir a lista completa de nomes de agrupamento baseados em ICU definidos em um cluster do AlloyDB, execute a consulta a seguir em qualquer uma das instâncias:
SELECT collname FROM pg_collation WHERE collprovider = 'i';
Além dos agrupamentos baseados em ICU, o AlloyDB oferece suporte ao agrupamento integrado do PostgreSQL chamado ucs_basic. Essa ordenação usa a ordem padrão de pontos de código Unicode para permitir uma classificação especialmente eficiente. Recomendamos o uso dele com colunas cuja ordem de classificação adequada corresponda à da lista de pontos de código Unicode.
Exportação de dados
É possível usar utilitários de linha de comando para exportar os dados do AlloyDB para arquivos armazenados em um bucket do Cloud Storage, em vários formatos:
CSV, exportando uma tabela por arquivo, usando
psql.DMP, usando
pg_dumppara criar um arquivo binário portátil de todo o banco de dados.SQL, usando
pg_dumppara criar uma lista de instruções DDL e SQL para reconstruir o banco de dados.