Todos os produtos
Search
Central de documentação

Hologres:IMPORT FOREIGN SCHEMA

Última atualização: Sep 18, 2026

IMPORT FOREIGN SCHEMA cria tabelas externas em lote e mapeia automaticamente os esquemas de tabelas de uma fonte de dados remota para o Hologres. Use esta instrução em vez de criar cada tabela externa manualmente.

O Hologres oferece suporte a duas fontes de dados:

  • Tabelas do MaxCompute: importe tabelas externas dos modelos de duas ou três camadas do MaxCompute.

  • Tabelas Paimon no Data Lake Formation (DLF): importe tabelas externas de tabelas Paimon no DLF.

Sintaxe

IMPORT FOREIGN SCHEMA remote_schema
    [ { LIMIT TO | EXCEPT } ( table_name [, ...] ) ]
    FROM SERVER server_name
    INTO local_schema
    [ OPTIONS ( option 'value' [, ... ] ) ]

Parâmetros

Parâmetro

Descrição

remote_schema

O nome do esquema remoto a importar. Para o modelo de duas camadas do MaxCompute: o nome do projeto. Para o modelo de três camadas do MaxCompute: odps_project_name#odps_schema_name. Para o DLF: o nome do metadatabase.

table_name

Os nomes das tabelas a importar. Use com LIMIT TO para especificar um subconjunto, ou use com EXCEPT para excluir tabelas específicas.

server_name

O nome do servidor externo. Para o MaxCompute: use odps_server, pré-criado no Hologres. Para o DLF: use o nome do servidor externo do seu catálogo Paimon.

local_schema

O nome do esquema do Hologres onde as tabelas externas são criadas, por exemplo, public.

options

Controla o comportamento durante a importação. Consulte Opções abaixo.

Opções

Opção

Valores

Descrição

if_table_exist

error (padrão), ignore, update

Ação executada quando já existe uma tabela externa com o mesmo nome. error interrompe a criação da tabela. ignore ignora a tabela e continua importando as demais. update reimporta e sobrescreve a tabela existente.

if_unsupported_type

skip (padrão), error

Ação executada quando uma tabela contém tipos de dados não suportados pelo Hologres. skip pula as tabelas afetadas e registra quais foram ignoradas. error interrompe a importação e informa quais tabelas contêm tipos não suportados.

prefix

Qualquer string

Prefixo adicionado aos nomes das tabelas externas criadas no Hologres. Requer o Hologres V1.1.26 ou posterior.

suffix

Qualquer string

Sufixo adicionado aos nomes das tabelas externas criadas no Hologres. Requer o Hologres V1.1.26 ou posterior.

Notas de uso

  • Inclua sempre a cláusula LIMIT TO para especificar quais tabelas importar. Se omitida, o Hologres cria tabelas externas para todas as tabelas do projeto do MaxCompute de destino.

  • O Hologres suporta apenas a criação de tabelas externas do MaxCompute. Os nomes das tabelas externas devem corresponder aos nomes das tabelas equivalentes no MaxCompute.

  • As opções prefix e suffix exigem a versão V1.1.26 ou posterior do Hologres. Para versões anteriores, consulte Common errors when preparing for an upgrade ou entre em contato com o suporte online.

  • O modelo de três camadas do MaxCompute exige a versão V1.3 ou posterior do Hologres. Usar a sintaxe de duas camadas em um modelo de três camadas retorna um erro semelhante a:

    failed to import foreign schema:Table not found - table_xxx

    Para versões anteriores, consulte Common errors when preparing for an upgrade.

  • Para obter informações gerais sobre o modelo de três camadas do MaxCompute, consulte Schema operations.

Exemplos

Modelo de duas camadas do MaxCompute

Os exemplos a seguir importam tabelas externas do projeto public_data do MaxCompute para o Hologres.

Importe uma tabela e atualize-a se já existir:

IMPORT FOREIGN SCHEMA public_data LIMIT TO
  (customer)
  FROM SERVER odps_server INTO public
  OPTIONS (if_table_exist 'update');

Importe várias tabelas em lote:

IMPORT FOREIGN SCHEMA public_data LIMIT TO (
  customer,
  customer_address,
  customer_demographics,
  inventory,
  item,
  date_dim,
  warehouse
)
FROM SERVER odps_server INTO public
OPTIONS (if_table_exist 'update');

Importe para um esquema personalizado:

CREATE SCHEMA testdemo;

IMPORT FOREIGN SCHEMA public_data LIMIT TO (
  customer,
  customer_address,
  customer_demographics,
  inventory,
  item,
  date_dim,
  warehouse
)
FROM SERVER odps_server INTO testdemo
OPTIONS (if_table_exist 'update');

SET search_path TO testdemo;

Retorne um erro se a tabela já existir:

IMPORT FOREIGN SCHEMA public_data LIMIT TO (
  customer,
  customer_address
)
FROM SERVER odps_server INTO public
OPTIONS (if_table_exist 'error');

Ignore tabelas que já existam:

IMPORT FOREIGN SCHEMA public_data LIMIT TO (
  customer,
  customer_address
)
FROM SERVER odps_server INTO public
OPTIONS (if_table_exist 'ignore');

Modelo de três camadas do MaxCompute

O modelo de três camadas adiciona uma camada de esquema entre o projeto e a tabela. Especifique remote_schema como odps_project_name#odps_schema_name.

O exemplo a seguir importa a tabela odps_region_10g do esquema tpch_10g no projeto odps_hologres do MaxCompute:

IMPORT FOREIGN SCHEMA "odps_hologres#tpch_10g" LIMIT TO (
  odps_region_10g
)
FROM SERVER odps_server INTO public
OPTIONS (if_table_exist 'error', if_unsupported_type 'error');

Fonte de dados DLF

Para uma fonte de dados DLF, especifique o nome do metadatabase como remote_schema e o servidor externo do seu catálogo Paimon como server_name.

O exemplo a seguir importa a tabela customer do metadatabase github_events do DLF. Para as etapas de configuração, consulte Access a Paimon catalog based on DLF.

IMPORT FOREIGN SCHEMA github_events LIMIT TO (
  customer
)
FROM SERVER paimon_server INTO public
OPTIONS (if_table_exist 'update');

Próximos passos