Todos os produtos
Search
Central de documentação

DataHub:CLI

Última atualização: Aug 25, 2026

Use a ferramenta de linha de comando para acessar seus projetos do DataHub e executar comandos.

Pré-requisitos

  • Java 8 ou versão posterior instalada.

Instale e configure o cliente

  1. Baixe e extraia o pacote da ferramenta de linha de comando datahub_console.tar.gz.

  2. A extração do pacote cria os diretórios bin, conf e lib.

  3. Acesse o diretório conf e insira as informações de ak e endpoint no arquivo datahub.properties conforme abaixo:

    datahub.accessid=
    datahub.accesskey=
    datahub.endpoint=

    Detalhes dos parâmetros:

    Parâmetro

    Obrigatório

    Descrição

    Exemplo

    datahub.accessid

    Sim

    AccessKey id da sua conta Alibaba Cloud ou usuário RAM.

    N/A

    datahub.accesskey

    Sim

    AccessKey Secret correspondente ao AccessKey id especificado.

    N/A

    datahub.endpoint

    Sim

    Endpoint do service DataHub.

    Defina o endpoint de acordo com a região e o tipo de rede do seu projeto DataHub. Para obter uma lista de endpoints disponíveis, consulte DataHub Endpoints.

    https://dh-cn-hangzhou.aliyuncs.com

Execute o cliente

Inicie o cliente usando um dos métodos a seguir:

  • Opção 1: No diretório bin do caminho de instalação do cliente, clique em duas vezes no arquivo datahubcmd.bat (para Windows) para iniciar o cliente. A inicialização é bem-sucedida quando o prompt DataHub=> é exibido.

  • Opção 2: Na janela de linha de comando do sistema, acesse o diretório bin do caminho de instalação do cliente. Execute o comando datahubcmd (para Windows) ou sh datahubcmd.sh (para Linux ou macOS). A inicialização é bem-sucedida quando o prompt DataHub=> é exibido.

Ajuda sobre comandos

Para obter ajuda sobre os comandos, use um dos métodos abaixo.

  • Opção 1: Visualize as informações de ajuda diretamente no cliente.

    • Visualize todos os comandos:

      help
    • Filtre comandos relacionados por palavra-chave. Por exemplo, para obter uma lista de tópicos:

      DataHub=>help lt
      NAME
              lt - List topic
      
      SYNOPSYS
              lt [-p] string
      
      OPTIONS
              -p  string
                      projectName
                      [Mandatory]
      
  • Opção 2: Na janela de linha de comando do sistema, acesse o diretório bin no caminho de instalação do cliente e execute o comando a seguir para visualizar a ajuda de todos os comandos.

    ...\bin>datahubcmd help

Referência de comandos

Projeto

  • Crie um projeto

    cp -p test_project  -c test_comment
    • -p: Nome do projeto.

    • -c: Descrição do projeto.

  • Exclua um projeto

    Importante

    Antes de excluir um projeto, exclua todos os recursos associados, como tópicos, assinaturas e tarefas de sincronização de dados. Caso contrário, a operação falhará.

    dp -p test_project
    • -p: Nome do projeto.

  • Listar projetos

    lp

Tópico

  • Crie um tópico

    ct -p test_project -t test_topic -m TUPLE -f [(name,string,true)] -s 3 -l 3 -c test_comment
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -m: Tipo do tópico. Valores válidos: BLOB ou TUPLE.

    • -f: Schema para um tópico do tipo tuple. Formato: [(fieldName,fieldType,isNull)]. Separe múltiplos campos com vírgulas.

    • -s: Quantidade de shards.

    • -l: Ciclo de vida dos dados, em dias. O valor deve estar entre 1 e 7.

    • -c: Descrição do tópico.

  • Exclua um tópico

    dt -p test_project -t test_topic
    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Obter informações do tópico

    gt -p test_project -t test_topic
    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Exportar o schema de um tópico para um arquivo JSON

    gts -f filepath -p test_project -t test_topic
    • -f: Caminho onde o arquivo JSON será salvo.

    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Listar tópicos

    lt -p test_project
    • -p: Nome do projeto.

  • Crie um tópico a partir de um arquivo JSON

    rtt -s 3 -l 3 -c test_comment -f filepath -p test_project -t test_topic
    • -s: Quantidade de shards.

    • -l: Ciclo de vida dos dados em dias. Intervalo válido: 1 a 7.

    • -f: Caminho do arquivo.

    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Atualize o ciclo de vida do tópico

    utl -p test_project -t test_topic -l 3 -c test_comment
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -l: Ciclo de vida do tópico.

    • -c: Descrição do tópico.

  • Adicionar um campo ao tópico

    anf -p test_project -t test_topic -l [(f1,STRING)]
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -l: Novo campo a adicionar. Formato: [(fieldName,fieldType)].

Connector

  • Crie um connector ODPS

    coc -p test_project -t test_topic -m SYSTEM_TIME -e odpsEndpoint -op odpsProject -ot odpsTable -oa odpsAccessId -ok odpsAccessKey -tr 60 -c (field1,field2) -tf ds hh mm
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -m: Tipo de sincronização. Para sincronização com ODPS, os tipos suportados são SYSTEM_TIME, USER_DEFINE, EVENT_TIME e META_TIME.

    • -e: Endpoint do ODPS. Use obrigatoriamente um endpoint de rede clássica.

    • -op: Nome do projeto ODPS.

    • -oa: AccessKey id para acesso ao ODPS.

    • -ok: AccessKey Secret para acesso ao ODPS.

    • -tr: Intervalo de tempo da partição em minutos. Valor padrão: 60.

    • -tf: Formato da partição. Use ds para partições diárias, ds hh para horárias e ds hh mm para partições no nível de minuto.

  • Adicionar um campo a um connector ODPS

    acf -p test_project -t test_topic -c connectorId -f fieldName
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: id do connector. Disponível na aba Data Synchronization.

    • -f: Nome do novo campo.

  • Crie um connector MySQL/RDS

    cdc -p test_project -t test_topic -h host -po 3306 -ty mysql -d mysql_database -ta msyql_table -u username -pa password -ht IGNORE -n (field1,field2)
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -h: Host. Use obrigatoriamente um endpoint de rede clássica.

    • -po: Porta.

    • -ty: Tipo de destino. Valores válidos:

      • SINK_MYSQL: cria um connector para sincronizar dados com MySQL.

      • SINK_ADS: cria um connector para sincronizar dados com ADS.

    • -d: Nome do banco de dados.

    • -ta: Nome da tabela.

    • -u: Nome de usuário.

    • -pa: Senha.

    • -ht: Modo de inserção. Valores válidos:

      • IGNORE

      • OVERWRITE

    • -n: Campos a sincronizar. Exemplo: (field1,field2).

  • Crie um connector DataHub

    cdhc -p test_project -t test_topic -sp sinkProject -st sinkTopic -m AK -i accessid k accessKey
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -sp: Projeto de destino para importação de dados.

    • -st: Tópico de destino para importação de dados.

    • -m: Tipo de autenticação

    • AK: Autentica via AccessKey. Requer accessId e accessKey.

    • STS: Autentica via Security Token Service (STS).

  • Crie um connector FC

    cfc -p test_project -t test_topic -e endpoint -s service -f function -au AK -i accessId -k accessKey -n (field1,field2)
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -e: Endpoint do Function Compute (FC). Use obrigatoriamente um endpoint de rede clássica.

    • -s: Nome do service FC.

    • -f: Nome da função FC.

    • -au: Método de autenticação

    • AK: Autentica via AccessKey. Requer accessId e accessKey.

    • STS: Autentica via STS.

    • -n: Campos a sincronizar. Exemplo: (field1,field2).

  • Crie um connector Hologres

    chc -p test_project -t test_topic -e endpoint -cl (field,field2) -au AK -hp holoProject -ht holoTopic -i accessId -k accessKey -m Delimiter -l 1 -b false -n (field1,field2)
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -e: Endpoint.

    • -cl: Campos a sincronizar com o Hologres.

    • -au: Método de autenticação. Atualmente, apenas a autenticação AK é suportada para connectors Hologres.

    • -m: Tipo de parsing:

      • Delimiter: Requer a especificação das propriedades lineDelimiter, parseData e columnDelimiter.

      • InformaticaJson: Requer a especificação da propriedade parseData.

  • Crie um connector OTS

    cotsc -p test_project -t test_topic -i accessId -k accessKey -it instanceId -m AK -t table -wm PUT -c (field1,field2)
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -it: Nome da instância do Tablestore (OTS).

    • -m: Tipo de autenticação. Padrão: STS.

    • AK: Autentica via AccessKey. Forneça um accessId e accessKey.

    • STS: Autentica via STS.

    • -t: Nome da tabela OTS.

    • -wm: Modo de escrita. Modos suportados:

      • PUT

      • UPDATE

    • -c: Campos a sincronizar. Exemplo: (field1,field2).

  • Crie um connector Elasticsearch

    cec -p test_project -t test_es -e endpoint:9200 -i f1 -u user -w password -n (f1,f2) -ty (f1,f2) -r (f1,f2) -c (f1,f2) -ti "1970-01-01 00:00:00"
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -e: Endpoint do Elasticsearch. Deve ser um endpoint interno e porta no formato internal_endpoint:internal_port.

    • -i: Índice. Para mais informações sobre índices, consulte Create a connector to synchronize data to Elasticsearch.

    • -u: Nome de usuário para acesso ao Elasticsearch.

    • -w: Senha para acesso ao Elasticsearch.

    • -n: Coluna de propriedade de id.

    • -ty: Coluna de propriedade de tipo.

    • -r: Coluna de propriedade de roteador.

    • -c: Campos a importar.

    • -ti: Horário de início da sincronização, no formato yyyy-mm-dd hh:mm:ss.

  • Crie um connector oss

    csc -p test_project -t test_topic -b bucket -e endpoint -pr ossPrefix -tf ossTimeFormat -tr timeRange -c (f1,f2)
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -b: Nome do bucket do Object Storage Service (oss).

    • -e: Nome do endpoint do oss.

    • -pr: Prefixo do diretório para dados sincronizados com o oss.

    • -tf: Formato de tempo da sincronização. Por exemplo, %Y%m%d%H%M especifica partições no nível de minuto.

    • -tr: Intervalo de tempo para partições.

    • -c: Campos a sincronizar.

  • Exclua connectors

    dc -p test_project -t test_topic -c connectorId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: id do connector. Disponível na aba Data Synchronization.

  • Obter detalhes do connector

    gc -p test_project -t test_topic -c connectorId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: id do connector. Disponível na aba Data Synchronization.

  • Listar connectors em um tópico

    lc -p test_project -t test_topic
    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Reiniciar um connector

    rc -p test_project -t test_topic -c connectorId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: id do connector. Disponível na aba Data Synchronization.

  • Atualize o AccessKey de um connector

    uca -p test_project -t test_topic -c connectorId  -a accessId -k accessKey
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: id do connector. Disponível na aba Data Synchronization.

Shard

  • Mesclar shards

    ms -p test_project -t test_topic -s shardId -a adjacentShardId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id do shard a mesclar.

    • -a: id do shard adjacente para mesclagem.

  • Dividir um shard

    ss -p test_project -t test_topic -s shardId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id do shard a dividir.

  • Listar shards em um tópico

    ls -p test_project -t topicName
    • -p: Nome do projeto.

    • -t: Nome do tópico.

  • Obter status de sincronização do shard

    gcs -p test_project -t test_topic -s shardId -c connectorId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id do shard.

    • -c: id do connector. Disponível na aba Data Synchronization.

  • Obter o offset de consumo de um shard

    gso -p test_project -t test_topic -s subid -i shardId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id da assinatura.

    • -i: id do shard.

Assinatura

  • Crie uma assinatura

    css -p test_project -t test_topic -c comment
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -c: Descrição da assinatura.

  • Exclua uma assinatura

    dsc -p test_project -t test_topic -s subId
    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id da assinatura.

  • Listar assinaturas

    lss -p test_project -t test_topic
    • -p: Nome do projeto.

    • -t: Nome do tópico.

Upload e download de dados

  • Fazer upload de dados

    uf -f filepath -p test_topic -t test_topic -m "," -n 1000
    • -f: Caminho do arquivo. Nota: Em caminhos do Windows, escape as barras invertidas. Exemplo: D:\\test\\test.txt.

    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -m: Delimitador de texto. Vírgulas (,) e espaços são suportados.

    • -n: Tamanho do lote para cada upload. Padrão: 1000.

    Exemplo: Upload de um arquivo CSV

    Este exemplo demonstra como fazer upload de um arquivo CSV para o DataHub. O arquivo possui o seguinte formato:

    1. 0,qe614c760fuk8judu01tn5x055rpt1,true,100.1,14321111111
    2. 1,znv1py74o8ynn87k66o32ao4x875wi,true,100.1,14321111111
    3. 2,7nm0mtpgo1q0ubuljjjx9b000ybltl,true,100.1,14321111111
    4. 3,10t0n6pvonnan16279w848ukko5f6l,true,100.1,14321111111
    5. 4,0ub584kw88s6dczd0mta7itmta10jo,true,100.1,14321111111
    6. 5,1ltfpf0jt7fhvf0oy4lo8m3z62c940,true,100.1,14321111111
    7. 6,zpqsfxqy9379lmcehd7q8kftntrozb,true,100.1,14321111111
    8. 7,ce1ga9aln346xcj761c3iytshyzuxg,true,100.1,14321111111
    9. 8,k5j2id9a0ko90cykl40s6ojq6gruyi,true,100.1,14321111111
    10. 9,ns2zcx9bdip5y0aqd1tdicf7bkdmsm,true,100.1,14321111111
    11. 10,54rs9cm1xau2fk66pzyz62tf9tsse4,true,100.1,14321111111

    No arquivo CSV acima, cada linha representa um registro e os campos são separados por vírgulas (,). O arquivo está salvo no caminho local /temp/test.csv. O tópico do DataHub possui o seguinte schema:

    Nome do campo

    Tipo

    id

    BIGINT

    name

    STRING

    gender

    BOOLEAN

    salary

    DOUBLE

    my_time

    TIMESTAMP

    Execute o seguinte comando:

    uf -f /temp/test.csv -p test_topic -t test_topic -m "," -n 1000
  • Baixe dados

    down -p test_project -t test_topic -s shardId -d subId -f filePath -ti "1970-01-01 00:00:00" -l 100 -g 0
    • -f: Caminho para salvar o arquivo baixado. Em caminhos do Windows, escape as barras invertidas (por exemplo, D:\\test\\test.txt).

    • -p: Nome do projeto.

    • -t: Nome do tópico.

    • -s: id do shard.

    • -d: id da assinatura.

    • -ti: Timestamp inicial para leitura dos dados. O cliente lerá registros criados neste horário ou posteriormente. Formato: yyyy-mm-dd hh:mm:ss.

    • -l: Quantidade de registros a ler em cada lote.

    • -g: Define se a leitura será contínua.

      • 0: Lê apenas um lote de registros e interrompe.

      • 1: Lê continuamente.

Perguntas frequentes

  • Falha ao iniciar script no Windows: Isso pode ocorrer se o caminho do script contiver parênteses. Para resolver, certifique-se de que o caminho completo do script não contenha parênteses.