O Alibaba Cloud Elasticsearch permite pesquisar e analisar dados armazenados no HBase. Use o Data Integration no DataWorks para sincronizar dados offline do HBase para uma instância do Alibaba Cloud Elasticsearch.
Contexto
O DataWorks é uma plataforma completa de desenvolvimento e governança de big data, construída sobre mecanismos de big data. Ele integra recursos como desenvolvimento de dados, agendamento de tarefas e gerenciamento de dados. Com as tarefas de sincronização do DataWorks, você sincroniza rapidamente dados de diversas fontes para o Alibaba Cloud Elasticsearch.
-
Fontes de dados compatíveis:
Bancos de dados da Alibaba Cloud (MySQL, PostgreSQL, SQL Server, MongoDB e HBase)
Alibaba Cloud PolarDB-X (atualizado a partir do DRDS)
Alibaba Cloud MaxCompute
Alibaba Cloud OSS
Alibaba Cloud Tablestore
Versões autogerenciadas de HDFS, Oracle, FTP, DB2 e outros tipos de banco de dados compatíveis
-
Cenários de uso:
Sincronização offline de big data para o Alibaba Cloud Elasticsearch. É possível sincronizar um banco de dados inteiro ou todos os dados de uma tabela específica. Para mais informações, consulte Sincronização offline de um banco de dados MySQL inteiro para o Elasticsearch.
Sincronização em tempo real de big data para o Alibaba Cloud Elasticsearch. Este método oferece suporte à sincronização completa e incremental. Para mais detalhes, consulte Sincronização em tempo real de um banco de dados MySQL inteiro para o Elasticsearch.
Pré-requisitos
Uma instância do HBase criada. Para mais informações, consulte Criar uma instância.
Uma instância do Alibaba Cloud Elasticsearch criada, com o recurso Auto Indexing ativado. Para mais informações, consulte Criar uma instância do Alibaba Cloud Elasticsearch e Configurar parâmetros YML.
Um workspace do DataWorks criado. Para mais informações, consulte Criar um workspace.
A sincronização de dados é compatível apenas com o Alibaba Cloud Elasticsearch. O Elasticsearch autogerenciado não é suportado.
A instância do HBase, a instância do Alibaba Cloud Elasticsearch e o workspace do DataWorks devem estar na mesma região.
A instância do HBase, a instância do Alibaba Cloud Elasticsearch e o workspace do DataWorks devem estar no mesmo fuso horário. Caso contrário, poderá ocorrer uma diferença de fuso horário entre os dados de origem e de destino durante a sincronização de dados temporais.
Faturamento
Para obter informações sobre as taxas de uma instância do Alibaba Cloud Elasticsearch, consulte Itens faturáveis do Elasticsearch.
Para obter informações sobre as taxas de um grupo de recursos do Data Integration, consulte Taxas de grupos de recursos.
Procedimento
Etapa 1: Preparar os dados de origem
Este exemplo utiliza a seguinte instrução de criação de tabela e dados de teste. Para mais informações sobre como importar dados para uma instância do HBase, consulte Usar o HBase Shell para acesso.
-
Instrução de criação de tabela
create 'student', {NAME => 'name'}, {NAME => 'ID'}, {NAME => 'gender'} -
Dados de teste
Execute o comando
putpara inserir dados na tabela. Exemplo:put 'student', 'row1', 'name:a', 'xiaoming'.Execute o comando
scanpara visualizar os dados na tabela. Exemplo:scan 'student'.
Etapa 2: Adquirir e configurar um grupo de recursos exclusivo
Adquira um grupo de recursos exclusivo para o Data Integration e associe uma VPC e um workspace a ele. Um grupo de recursos exclusivo garante transmissão de dados rápida e estável.
Faça login no console do DataWorks.
Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, clique em Resource Groups.
Na aba Exclusive Resource Group, clique em .
-
Na página DataWorks Exclusive Resources (Subscription), defina Resource Type como Exclusive Resource Group for Data Integration, insira um nome para o grupo de recursos e clique em Buy Now para adquirir o grupo de recursos exclusivo.
Para mais informações, consulte Etapa 1: Adquirir um grupo de recursos.
-
Na coluna Actions do grupo de recursos exclusivo criado, clique em Network Settings para associar uma VPC.
NotaEste procedimento sincroniza dados por meio de uma VPC usando um grupo de recursos exclusivo para Data Integration. Para mais informações, consulte Configurar uma lista de permissões de endereços IP.
Para sincronizar dados, o grupo de recursos exclusivo deve se conectar às VPCs das instâncias do HBase e do Alibaba Cloud Elasticsearch. Associe o grupo de recursos à Virtual Private Cloud (VPC), Zone e VSwitch de ambas as instâncias. Para visualizar as informações de VPC da instância do Alibaba Cloud Elasticsearch, consulte Visualizar as informações básicas de uma instância do Elasticsearch.
ImportanteApós associar uma VPC, adicione o vSwitch CIDR Block da VPC às listas de permissões de endereços IP privados das instâncias do HBase e do Alibaba Cloud Elasticsearch. Para mais informações, consulte Configurar uma lista de permissões de endereços IP públicos ou privados para uma instância do Elasticsearch.
No canto superior esquerdo, clique no ícone de voltar para retornar à página Resource List.
-
Na coluna Actions do grupo de recursos exclusivo, clique em Attach Workspace para associar o workspace de destino.
Para mais informações, consulte Etapa 2: Associar um workspace.
Etapa 3: Adicionar fontes de dados
Adicione as fontes de dados do HBase e do Elasticsearch ao Data Integration no DataWorks.
-
Acesse a página do Data Integration.
Faça login no console do DataWorks.
No painel de navegação à esquerda, clique em Workspace.
Na coluna Actions do workspace desejado, escolha .
No painel de navegação à esquerda, clique em Data Source.
-
Adicione uma fonte de dados do HBase.
Na página Data Sources, clique em Add Data Source.
Na caixa de diálogo Add Data Source, pesquise e selecione HBase.
-
Na caixa de diálogo Add HBase Data Source, configure os parâmetros na seção Basic Information.
Para mais informações, consulte Configurar uma fonte de dados do HBase.
Na seção Connection Configuration, clique em Test Connectivity. O status Connected indica que a conexão foi bem-sucedida.
Clique em OK.
Adicione uma fonte de dados do Elasticsearch da mesma maneira. Para mais informações, consulte Configurar uma fonte de dados do Elasticsearch.
Etapa 4: Configurar e executar uma tarefa de sincronização offline
Configure e execute uma tarefa de sincronização offline em um grupo de recursos exclusivo.
As etapas a seguir utilizam a interface gráfica sem código. Para informações sobre como usar o editor de código, consulte Configurar uma tarefa de sincronização em lote usando o editor de código e Elasticsearch Writer.
As etapas a seguir são realizadas na página legada de Desenvolvimento de Dados (DataStudio).
-
Acesse a página de Desenvolvimento de Dados.
Faça login no console do DataWorks.
No painel de navegação à esquerda, clique em Workspace.
Na coluna Actions do workspace de destino, escolha .
-
Crie um nó de sincronização offline.
Na aba Data Development (
), escolha .Clique com o botão direito no fluxo de trabalho criado e escolha .
Na caixa de diálogo Create Node, insira um nome para o nó e clique em OK.
-
Configure a rede e os recursos.
Na seção Source, selecione HBase na lista suspensa Source e selecione o nome da fonte de dados de origem na lista suspensa Data Source Name.
Na seção Resource Group, selecione o grupo de recursos exclusivo.
Na seção Destination, selecione Elasticsearch na lista suspensa Destination e selecione o nome da fonte de dados de destino na lista suspensa Data Source Name.
Clique em Next.
-
Configure a tarefa.
Na seção Source, selecione a tabela que deseja sincronizar.
Na seção Destination, configure os parâmetros.
Na seção Field Mapping, mapeie a Source Column para a Target Column. Para mais informações, consulte Configurar uma tarefa de sincronização offline usando a interface gráfica sem código.
Na seção Channel Control, configure os parâmetros do canal.
Para mais informações, consulte Configurar uma tarefa de sincronização offline usando a interface gráfica sem código.
-
Execute a tarefa.
(Opcional) No lado direito da página, clique em Properties para configurar os parâmetros de agendamento. Para mais informações, consulte Configuração de agendamento.
Na barra de ferramentas superior, clique no ícone Salvar para salvar a tarefa.
-
Na barra de ferramentas superior, clique no ícone Enviar para enviar a tarefa.
Se você configurar propriedades de agendamento, a tarefa será executada periodicamente. Também é possível clicar no ícone Executar no canto superior direito do editor de nós para executar a tarefa imediatamente.
A mensagem
Shell run successfully!no log de execução indica que a tarefa foi executada com sucesso.
Etapa 5: Verificar os dados sincronizados
Faça login no console do Kibana do seu cluster Elasticsearch e acesse a página inicial do Kibana.
No menu de navegação à esquerda, clique em Dev tools.
-
Na aba Console, execute o seguinte comando para visualizar os dados sincronizados.
POST /student_info/_search?pretty { "query": { "match_all": {}} }Notastudent_infoé o nome do índice de destino configurado na tarefa de sincronização offline.