Extração de metadados do Apache Hive para migração

Neste documento, mostramos como usar a ferramenta dwh-migration-dumper para extrair os metadados necessários antes de executar uma migração de dados ou permissões do Apache Hive.

Este documento aborda a extração de metadados das seguintes fontes de dados:

  • Apache Hive
  • Sistema de arquivos distribuídos do Apache Hadoop (HDFS)
  • Apache Ranger
  • Cloudera Manager
  • Registros de consultas do Apache Hive

Antes de começar

Antes de usar a ferramenta dwh-migration-dumper, faça o seguinte:

Instalar o Java

O servidor em que você planeja executar a ferramenta dwh-migration-dumper precisa ter o Java 8 ou mais recente instalado. Caso contrário, faça o download do Java da página de downloads do Java e instale-o.

Permissões necessárias

A conta de usuário especificada para conectar a ferramenta dwh-migration-dumper ao sistema de origem precisa ter permissões para ler metadados desse sistema. Confirme se essa conta tem os papéis apropriados para consultar os recursos de metadados disponíveis na sua plataforma. Por exemplo, INFORMATION_SCHEMA é um recurso de metadados comum em várias plataformas.

Instalar a ferramenta dwh-migration-dumper

Para instalar a ferramenta dwh-migration-dumper, siga estas etapas:

  1. Na máquina em que você quer executar a ferramenta dwh-migration-dumper, faça o download do arquivo ZIP do repositório do GitHub da ferramenta dwh-migration-dumper.
  2. Para validar o arquivo ZIP da ferramenta dwh-migration-dumper, faça o download do arquivo SHA256SUMS.txt e execute o seguinte comando:

    Bash

    sha256sum --check SHA256SUMS.txt

    Se a verificação falhar, consulte a Solução de problemas.

    Windows PowerShell

    (Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]

    Substitua RELEASE_ZIP_FILENAME pelo nome de arquivo zip baixado da versão da ferramenta de extração de linha de comando dwh-migration-dumper, por exemplo, dwh-migration-tools-v1.0.52.zip

    O resultado True confirma a verificação com êxito do checksum.

    O resultado False indica um erro de verificação. Verifique se o checksum e os arquivos ZIP são da mesma versão de lançamento ao fazer o download e foram colocados no mesmo diretório.

  3. Extraia o arquivo ZIP. O binário da ferramenta /bin está no subdiretório da pasta criada extraindo o arquivo ZIP.

  4. Atualize a variável de ambiente PATH para incluir o caminho de instalação da ferramenta.

Extração de metadados para migração

Selecione uma das opções a seguir para saber como extrair metadados da sua fonte de dados:

Apache Hive

Siga as etapas na seção do Apache Hive Extrair metadados e registros de consulta do seu data warehouse para extrair os metadados do Apache Hive. Em seguida, faça o upload dos metadados para o bucket do Cloud Storage que contém os arquivos de migração.

HDFS

Execute o seguinte comando para extrair metadados do HDFS usando a ferramenta dwh-migration-dumper.

dwh-migration-dumper \
  --connector hdfs \
  --host HDFS-HOST \
  --port HDFS-PORT \
  --output gs://MIGRATION-BUCKET/hdfs-dumper-output.zip \
  --assessment \

Substitua:

  • HDFS-HOST: nome do host do HDFS NameNode
  • HDFS-PORT: o número da porta do HDFS NameNode. É possível pular esse argumento se você estiver usando a porta 8020 padrão.
  • MIGRATION-BUCKET: o bucket do Cloud Storage que você está usando para armazenar os arquivos de migração.

Esse comando extrai metadados do HDFS para um arquivo chamado hdfs-dumper-output.zip no diretório MIGRATION-BUCKET.

Há várias limitações conhecidas ao extrair metadados do HDFS:

  • Algumas tarefas nesse conector são opcionais e podem falhar, registrando um rastreamento de pilha completo na saída. Desde que as tarefas necessárias tenham sido concluídas e o hdfs-dumper-output.zip seja gerado, você poderá prosseguir com a migração do HDFS.
  • O processo de extração pode falhar ou ser executado mais lentamente do que o esperado se o tamanho do pool de linhas configurado for muito grande. Se você estiver enfrentando esses problemas, recomendamos diminuir o tamanho do pool de linhas de execução usando o argumento de linha de comando --thread-pool-size.

Apache Ranger

Execute o comando a seguir para extrair metadados do Apache Ranger usando a ferramenta dwh-migration-dumper.

dwh-migration-dumper \
  --connector ranger \
  --host RANGER-HOST \
  --port 6080 \
  --user RANGER-USER \
  --password RANGER-PASSWORD \
  --ranger-scheme RANGER-SCHEME \
  --output gs://MIGRATION-BUCKET/ranger-dumper-output.zip \
  --assessment \

Substitua:

  • RANGER-HOST: o nome do host da instância do Apache Ranger.
  • RANGER-USER: o nome de usuário do usuário do Apache Ranger
  • RANGER-PASSWORD: a senha do usuário do Apache Ranger
  • RANGER-SCHEME: especifique se o Apache Ranger está usando http ou https. O valor padrão é http.
  • MIGRATION-BUCKET: o bucket do Cloud Storage que você está usando para armazenar os arquivos de migração.

Também é possível incluir as seguintes flags opcionais:

  • --kerberos-auth-for-hadoop: substitui --user e --password se o Apache Ranger estiver protegido pelo Kerberos em vez da autenticação básica. Execute o comando kinit antes da ferramenta dwh-migration-dumper para usar essa flag.
  • --ranger-disable-tls-validation: inclua essa flag se o certificado https usado pela API for autoassinado. Por exemplo, ao usar o Cloudera.

Esse comando extrai metadados do Apache Ranger para um arquivo chamado ranger-dumper-output.zip no diretório MIGRATION-BUCKET.

Cloudera

Execute o comando a seguir para extrair metadados do Cloudera usando a ferramenta dwh-migration-dumper.

dwh-migration-dumper \
  --connector cloudera-manager \
  --url CLOUDERA-URL \
  --user CLOUDERA-USER \
  --password CLOUDERA-PASSWORD \
  --output gs://MIGRATION-BUCKET/cloudera-dumper-output.zip \
  --yarn-application-types APPLICATION-TYPES \
  --pagination-page-size PAGE-SIZE \
  --assessment \

Substitua:

  • CLOUDERA-URL: o URL do Cloudera Manager
  • CLOUDERA-USER: o nome de usuário do usuário do Cloudera
  • CLOUDERA-PASSWORD: a senha do usuário do Cloudera
  • MIGRATION-BUCKET: o bucket do Cloud Storage que você está usando para armazenar os arquivos de migração.
  • APPLICATION-TYPES: (opcional) lista de todos os tipos de aplicativos atuais do Hadoop YARN. Por exemplo, SPARK, MAPREDUCE.
  • PAGE-SIZE: (opcional) especifique quantos dados são buscados de serviços de terceiros, como a API Hadoop YARN. O valor padrão é 1000, que representa 1.000 entidades por solicitação.

Esse comando extrai metadados do Cloudera para um arquivo chamado dwh-migration-cloudera.zip no diretório MIGRATION-BUCKET.

Registros de consultas do Apache Hive

Siga as etapas na seção do Apache Hive Extrair registros de consulta com o hook de geração de registros hadoop-migration-assessment para extrair os registros de consulta do Apache Hive. Em seguida, faça o upload dos registros para o bucket do Cloud Storage que contém os arquivos de migração.

A seguir

Com os metadados extraídos do Hadoop, é possível usar esses arquivos para fazer o seguinte: