Todos os produtos
Search
Central de documentação

Hologres:Access MaxCompute Delta tables

Última atualização: Jun 28, 2026

A partir da versão V3.0.38 do Hologres, você pode consultar tabelas Delta do MaxCompute diretamente no Hologres, sem mover dados. A tabela Delta é um formato de tabela do MaxCompute para dados incrementais. Ela permite importações de dados em nível de minuto, usa AliORC como formato de arquivo subjacente, oferece suporte à semântica UPSERT e permite leitura e escrita de dados incrementais no formato Change Data Capture (CDC). Para obter mais informações sobre os conceitos de tabela Delta, consulte Termos.

Limitações

Capacidade

Suporte

Ler o snapshot mais recente de uma tabela Delta

Suportado

Gravar dados do Hologres de volta em uma tabela Delta

Não suportado

Pré-requisitos

Antes de começar, verifique se você tem:

Etapa 1: Crie uma tabela Delta no MaxCompute

Crie uma tabela Delta no MaxCompute usando um dos métodos a seguir:

O exemplo a seguir cria uma tabela Delta particionada chamada mf_dt:

CREATE TABLE IF NOT EXISTS mf_dt (
  pk  BIGINT NOT NULL PRIMARY KEY,
  val BIGINT NOT NULL
)
PARTITIONED BY (dd STRING, hh STRING)
TBLPROPERTIES ("transactional"="true");

A propriedade "transactional"="true" marca a tabela como uma tabela Delta.

Etapa 2: Grave dados na tabela Delta

O MaxCompute oferece dois métodos para carregar dados em uma tabela Delta:

O exemplo a seguir usa inserções em lote para carregar dados na tabela mf_dt:

-- Append rows to the dd='01', hh='01' partition
INSERT INTO TABLE mf_dt PARTITION (dd='01', hh='01')
VALUES (3, 30), (4, 4), (5, 5);

-- Overwrite the dd='01', hh='01' partition with new data
INSERT OVERWRITE TABLE mf_dt PARTITION (dd='01', hh='01')
VALUES (1, 1), (2, 2), (3, 3);

Etapa 3: Mapeie o projeto do MaxCompute no Hologres

Crie um mapeamento de source de dados externa no Hologres para permitir a descoberta e consulta das tabelas do MaxCompute. Dois métodos de mapeamento estão disponíveis:

O exemplo a seguir cria um mapeamento de banco de dados externo para um projeto do MaxCompute:

CREATE EXTERNAL DATABASE ext_database_mc WITH
  metastore_type 'maxcompute'
  mc_project      'mc_3_layer_project'
  comment         'mc three layer project';

Após criar o mapeamento, verifique se os schemas e tabelas são detectáveis:

-- List all schemas in the external database
SELECT * FROM hologres.hg_external_schemas('ext_database_mc');

-- List all tables in the default schema
SELECT * FROM hologres.hg_external_tables('ext_database_mc', 'default');

Etapa 4: Consulte a tabela Delta

Antes de consultar uma tabela Delta, defina o seguinte parâmetro GUC no nível da sessão:

SET hg_experimental_external_catalog_routing = 'odps:common_table';

Em seguida, consulte a tabela usando o nome em três partes external_database.schema.table:

SELECT * FROM ext_database_mc.mc_schema_name.mf_dt;

Próximos passos