Todos os produtos
Search
Central de documentação

Hologres:DataHub real-time synchronization

Última atualização: Sep 18, 2026

Transmita dados do DataHub para o Hologres para análises em tempo real, monitoramento, relatórios ou processamento complexo de dados. A combinação das funcionalidades do DataHub e do Hologres aumenta a eficiência e a precisão dos seus pipelines de dados. Este tópico descreve como crie um DataConnector para sincronizar dados do DataHub e apresenta soluções para problemas comuns.

Informações gerais

O DataHub pode atuar como source ou destino de dados, o que permite sincronizar dados de um tópico para outros service da Alibaba Cloud em real-time/quasi-real-time. Isso simplifica o fluxo de dados entre diferentes service. Para mais informações sobre o recurso de sincronização de dados do DataHub, consulte Overview.

A tabela a seguir descreve os mapeamentos entre conceitos no DataHub e no Hologres.

DataHub

Hologres

Project

Database

Topic

Table

Modos e políticas de sincronização

Modos de sincronização

Modo

Descrição

Inserção individual

Insere dados do DataHub no Hologres um a um. Este modo é adequado para sincronizar todos os dados do DataHub com o Hologres.

Reprodução

Reproduz no banco de dados Hologres de destino as operações de alteração executadas no projeto DataHub de origem, garantindo a consistência dos dados. As operações de alteração são obtidas por meio da análise de logs binários. Este modo é indicado quando você sincroniza dados de uma origem para o DataHub usando o Data Transmission Service (DTS) e, em seguida, sincroniza os dados com o Hologres. Nesse caso, o DataHub funciona como os logs binários.

Nota

Quando o DTS sincroniza dados com o DataHub, colunas adicionais são incluídas nos dados sincronizados para descrever as operações. Os nomes dessas colunas adicionais podem conflitar com nomes de colunas existentes no tópico DataHub de destino. Para mais informações sobre como evitar esses conflitos, consulte Modify the naming rules for additional columns.

Políticas de sincronização

Política

Descrição

Replace

Quando ocorre um conflito de chave primária durante a gravação, os dados originais são sobrescritos pelos novos dados. Isso garante a consistência entre os bancos de dados de origem e destino.

Ignore

Quando ocorre um conflito de chave primária durante a gravação, os novos dados são ignorados e nenhuma atualização é feita. Esse comportamento evita a gravação de dados duplicados e preserva a integridade dos dados no banco de destino.

Precauções

  • Somente dados de tópicos do tipo TUPLE no DataHub podem ser sincronizados com o Hologres.

  • Antes de gravar dados em uma tabela particionada na instância do Hologres, crie uma tabela filha. Para mais informações, consulte CREATE PARTITION TABLE.

  • Cada DataConnector ocupa conexões. O número de conexões ocupadas por cada DataConnector equivale ao número de shards no tópico DataHub.

Preparativos

  1. Ative o DataHub e prepare seus dados. Para mais informações, consulte Get started with DataHub.

  2. Adquira uma instância do Hologres e crie uma tabela. Este tópico utiliza uma tabela chamada lineitem como exemplo. Para mais informações, consulte Purchase a Hologres instance e Connect to Hologres by using HoloWeb to create a table.

    A tabela a seguir descreve os mapeamentos entre tipos de dados no DataHub e no Hologres.

    DataHub

    Hologres

    TINYINT

    SMALLINT

    SMALLINT

    SMALLINT

    INTEGER

    INTEGER

    BIGINT

    BIGINT

    FLOAT

    REAL

    DOUBLE

    DOUBLE PRECISION

    DECIMAL

    DECIMAL

    STRING

    TEXT

    BOOLEAN

    BOOLEAN

    TIMESTAMP

    TIMESTAMPTZ

    Por exemplo, execute as instruções a seguir para crie uma tabela:

    BEGIN;
    CREATE TABLE lineitem ( 
    L_ORDERKEY BIGINT NOT NULL,
    L_PARTKEY BIGINT NOT NULL,
    L_SUPPKEY BIGINT NOT NULL,
    L_LINENUMBER BIGINT NOT NULL,
    L_QUANTITY DECIMAL(20,10),
    L_EXTENDEDPRICE DECIMAL(20,10),
    L_DISCOUNT DECIMAL(20,10),
    L_TAX DECIMAL(20,10),
    L_RETURNFLAG TEXT,
    L_LINESTATUS TEXT,
    L_SHIPDATE TIMESTAMPTZ,
    L_COMMITDATE TIMESTAMPTZ,
    L_RECEIPTDATE TIMESTAMPTZ,
    L_SHIPINSTRUCT TEXT,
    L_SHIPMODE TEXT,
    L_COMMENT TEXT
    );
    CALL set_table_property('lineitem', 'orientation', 'column');
    COMMIT;

Crie um DataConnector

  1. Faça logon no console do DataHub e clique em no tópico que você criou para acesse a página de detalhes do tópico.

  2. No canto superior direito, clique em + Connector.

  3. Clique em Hologres e configure os parâmetros no painel Create connector.

    Parâmetro

    Descrição

    Instance

    O ID da instância do Hologres. Acesse o console do Hologres para obter o Instance ID.

    Database

    O nome do banco de dados Hologres para o qual você deseja sincronizar dados do DataHub.

    Table

    O nome da tabela Hologres que recebe dados do DataHub. Este exemplo utiliza lineitem.

    Primary Key Conflict Policy

    A política de atualização de dados em caso de conflito de chave primária. Valores válidos:

    • replace: quando ocorre um conflito de chave primária durante a gravação, os dados originais são sobrescritos pelos novos dados. Este é o valor padrão.

    • ignore: quando ocorre um conflito de chave primária durante a gravação, os novos dados são ignorados. Nenhuma atualização é feita e os dados originais são mantidos.

    Para mais informações sobre políticas de sincronização de dados, consulte Synchronization policies neste tópico.

    Replication Scenario

    O modo utilizado para a sincronização de dados. Valores válidos:

    • default: os dados são inseridos um a um. Este é o valor padrão.

    • dts: selecione esta opção ao usar o DTS para sincronizar dados com o DataHub com as novas regras de nomenclatura para colunas adicionais ativadas.

    • dts_old: utilize este modo ao usar o DTS para sincronizar dados com o DataHub sem ativar as novas regras de nomenclatura para colunas adicionais.

    Para mais informações sobre modos de sincronização de dados, consulte Synchronization modes neste tópico.

    Import Fields

    Os campos a sincronizar com o Hologres. É possível sincronizar todos ou parte dos campos do tópico DataHub, conforme as necessidades do seu negócio.

    Authentication Mode

    O modo de autenticação do acesso à instância do Hologres. Valor padrão: AccessKey.

    Access Key ID

    O AccessKey ID da conta da Alibaba Cloud usada para acessar a instância do Hologres. Obtenha o AccessKey ID na página AccessKey Pair.

    AccessKey secret

    O AccessKey secret da conta da Alibaba Cloud usada para acessar a instância do Hologres. Obtenha o AccessKey secret na página AccessKey Pair.

    Timestamp Unit

    A unidade de timestamp utilizada pelo DataConnector na sincronização de dados. Valores válidos:

    • MICROSECOND: este é o valor padrão.

    • MILLISECOND.

    • SECOND.

  4. Clique em Create para iniciar a sincronização de dados.

    Após a criação do DataConnector, visualize o status da sincronização em tempo real na aba Data Synchronization Tasks da página de detalhes do tópico.

  5. Consulte os dados sincronizados no Hologres.

    Conecte a instância do Hologres a uma ferramenta de desenvolvimento e verifique se os dados estão sendo sincronizados com a instância em tempo real. Para mais informações sobre ferramentas de desenvolvimento, consulte Overview. Por exemplo, execute a instrução a seguir para consultar os dados sincronizados:

    SELECT COUNT(*) FROM lineitem;

Erros comuns e solução de problemas

Esta seção descreve erros comuns relatados ao utilizar o Hologres e apresenta as respectivas soluções.

  • Erro 1

    • Descrição do problema

      ErrorMessage: Import field not found in dest schema.
    • Causas

      • A tabela Hologres de destino não contém os campos especificados como campos de importação no DataConnector.

      • O parâmetro Synchronization Scenarios está definido como default, mas as colunas adicionais geradas ao sincronizar dados com o DataHub via DTS foram configuradas como campos de importação no DataConnector.

    • Soluções

      • Crie uma tabela Hologres e adicione os campos ausentes. Também é possível modifique o parâmetro Import Fields do DataConnector para remover os campos adicionais.

      • Crie um DataConnector e defina o parâmetro Synchronization Scenarios como dts ou dts_old.

  • Erro 2

    • Descrição do problema

      ErrorMessage: Column type not match with Holo column.
    • Causa

      Os tipos de dados dos campos no tópico DataHub não correspondem aos tipos de dados dos campos na tabela Hologres.

    • Solução

      Crie uma tabela Hologres e especifique tipos de dados válidos com base nos mapeamentos de tipos de dados.

  • Erro 3

    • Descrição do problema

      ErrorMessage: Not import column xxx not allow null and no default value.
    • Causa

      A tabela Hologres de destino contém campos não especificados como campos de importação no DataConnector. Esses campos possuem a propriedade not null configurada, mas não têm valores padrão definidos.

    • Solução

      Crie uma tabela Hologres. Para campos não especificados como campos de importação no DataConnector, defina valores padrão ou remova a propriedade not null.