Versões auxiliares

As versões auxiliares do metastore do Dataproc são serviços de metastore Hive anexados a um serviço principal do metastore do Dataproc. As versões auxiliares são anteriores à versão primária do metastore do Dataproc. Elas ajudam a fornecer a compatibilidade de versão do metastore Hive com diferentes mecanismos de processamento de dados que usam versões distintas da biblioteca de cliente do metastore Hive.

Quando usar versões auxiliares

As versões auxiliares permitem expor endpoints adicionais que usam o protocolo de fio metastore do Hive para versões do Hive anteriores às do esquema do banco de dados de metadados nos serviços do metastore do Dataproc. Isso permite compartilhar metadados entre mecanismos de processamento de dados que usam diferentes versões da biblioteca de cliente do metastore Hive.

Como as versões auxiliares funcionam

Você tem a opção de especificar outras versões do metastore do Hive para um serviço do metastore do Dataproc, que são expostos por meio de endpoints separados. Todos os endpoints compartilham um banco de dados de metadados comum.

A versão do esquema do banco de dados de metadados corresponde à versão primária do metastore do serviço do metastore do Dataproc. Todas as versões auxiliares são anteriores à versão do serviço principal para evitar problemas de compatibilidade com o esquema de metadados.

Somente uma versão auxiliar é compatível com o serviço Metastore do Dataproc.

É possível especificar versões auxiliares ao criar ou atualizar serviços do metastore do Dataproc. Ao atualizar um serviço, você pode adicionar ou excluir a versão auxiliar.

Criar uma versão auxiliar com o serviço Metastore do Dataproc

As instruções a seguir demonstram como criar uma versão auxiliar com o serviço Metastore do Dataproc.

Console

  1. No Console do Cloud, abra a página do metastore do Dataproc:

    Abra o metastore do Dataproc no Console do Cloud

  2. Na parte superior da página Metastore do Dataproc, clique no botão Criar. A página Criar serviço é aberta.

  3. Configure o serviço como quiser.

  4. Em Configuração de versão auxiliar, ative as versões auxiliares.

  5. Clique em Add Auxiliary Version.

    1. Insira um nome para sua versão auxiliar.

    2. Selecione uma versão para a versão auxiliar.

    3. Opcional: para aplicar um mapeamento à versão auxiliar, clique em + Adicionar substituições.

    4. Clique em Concluído.

  6. Clique em Enviar.

gcloud

  1. Execute um dos seguintes comandos gcloud beta metastore services create
    para criar um serviço com uma versão auxiliar:

    gcloud beta metastore services create SERVICE \
        --location=LOCATION \
        --auxiliary-versions=AUXILIARY_VERSIONS, ...
    

    ou

    gcloud beta metastore services create SERVICE \
        --location=LOCATION \
        --auxiliary-versions-from-file=AUXILIARY_VERSIONS_FROM_FILE
    

    Substitua:

    • SERVICE: um nome para o novo serviço
    • LOCATION: uma região do Google Cloud
    • AUXILIARY_VERSIONS: uma lista separada por vírgulas de versões de metastore do Hive Hive para implantar
    • AUXILIARY_VERSIONS_FROM_FILE: um caminho para um arquivo YAML que contém a configuração das versões auxiliares. Para mais informações e um exemplo, consulte a documentação do SDK.
  2. Verifique se a criação foi bem-sucedida.

curl

É possível criar uma versão auxiliar com o serviço Metastore do Dataproc ao criá-la usando o método create:

   ```
     curl -X POST -s -i \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -d '{"network":"projects/PROJECT_ID/global/networks/default", "port": 9083, "hive_metastore_config": {"auxiliary_versions": {"aux-version1": {"version": "AUX_VERSION"} } } }' \
     -H "Content-Type:application/json" \
     https://metastore.googleapis.com/v1beta/projects/PROJECT_ID/locations/LOCATION/services?service_id=SERVICE_ID
   ```

Atualizar uma versão auxiliar com o serviço Metastore do Dataproc

As instruções a seguir demonstram como atualizar uma versão auxiliar com o serviço Metastore do Dataproc.

Console

  1. No Console do Cloud, abra a página do metastore do Dataproc:

    Abra o metastore do Dataproc no Console do Cloud

  2. Na página Metastore do Dataproc, clique no nome do serviço que você quer atualizar. A página Detalhes do serviço desse serviço é aberta.

  3. Na guia Configuração, clique no botão Editar. A página Editar serviço é aberta.

  4. Em Configuração de versão auxiliar, ative ou desative as versões auxiliares.

  5. Para excluir a versão auxiliar, clique em Excluir.

  6. Para adicionar uma nova versão auxiliar, clique em Adicionar versão auxiliar.

  7. Para aplicar um mapeamento à versão auxiliar, clique em + Adicionar substituições.

  8. Clique em Enviar.

gcloud

  1. Execute o seguinte comando gcloud beta metastore services update para atualizar um serviço com o Private Service Connect:

    gcloud beta metastore services update SERVICE \
       --location=LOCATION \
       --add-auxiliary-versions=AUXILIARY_VERSIONS, ...
    

    ou

    gcloud beta metastore services update SERVICE \
       --location=LOCATION \
       --update-auxiliary-versions-from-file=AUXILIARY_VERSIONS_FROM_FILE
    

    Substitua:

    • SERVICE: o nome do serviço;
    • LOCATION: uma região do Google Cloud
    • AUXILIARY_VERSIONS: uma lista separada por vírgulas de versões de metastore do Hive Hive para implantar
    • AUXILIARY_VERSIONS_FROM_FILE: um caminho para um arquivo YAML que contém a configuração das versões auxiliares. Para mais informações e um exemplo, consulte a documentação do SDK.
  2. Verifique se a atualização foi concluída.

curl

É possível atualizar uma versão auxiliar com o serviço Metastore do Dataproc ao atualizá-la usando o método patch:

 ```
   curl -X PATCH -s -i \
   -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -d '{"hive_metastore_config": {"auxiliary_versions": {"aux-version1": {"version": "AUX_VERSION} } } }' \
   -H "Content-Type:application/json" \
   https://metastore.googleapis.com/v1beta/projects/PROJECT_ID/locations/LOCATION/services/SERVICE_ID?update_mask=hive_metastore_config.auxiliary_versions
 ```

Comportamentos e propriedades compartilhados

A tabela a seguir lista os vários comportamentos e propriedades de um serviço do metastore do Dataproc e se eles são compartilhados entre o serviço ou replicados por versão do metastore do Hive. Em geral, os aspectos relacionados à configuração estática, ao banco de dados de metadados e aos metadados em si são compartilhados. Por outro lado, os comportamentos que afetam o caminho para solicitações de metadados do metastore Hive são replicados por versão do metastore Hive.

Comportamento Por serviço Por versão
Endpoint
Substituições de configuração do Hive
Configuração do Kerberos
Protocolo de endpoint (Thrift/gRPC)
Porta brechó
Bucket de artefatos do Cloud Storage
Nível
Janela de manutenção
Canal de lançamento
Configuração de criptografia
Tipo de banco de dados
Alternância de sincronização do Data Catalog
Métrica de contagem de solicitações

Anexe um cluster do Dataproc

É possível anexar um cluster do Dataproc que use a versão auxiliar do metastore do Dataproc como seu metastore Hive usando o diretório de endpoint e o URI do endpoint auxiliar.

Para mais informações sobre como anexar um cluster do Dataproc, consulte Anexar um cluster do Dataproc usando ENDPOINT_URI e WAREHOUSE_DIR.

Ressalvas sobre as versões auxiliares

As versões auxiliares têm as seguintes ressalvas:

  • A versão auxiliar precisa ser uma versão anterior à principal.

  • Somente uma versão auxiliar é compatível com o serviço Metastore do Dataproc.

  • As versões auxiliares não são compatíveis com a configuração do Private Service Connect.

  • O tipo de banco de dados do Spanner não é compatível com as versões auxiliares.

  • Os recursos de importação, exportação, backup e restauração não são aplicáveis às versões auxiliares.

  • Dependendo das versões do Hive, alguns métodos de metastore do Hive na versão auxiliar podem não funcionar com a versão principal.

  • O registro da versão auxiliar é separado da versão principal. É possível usar o Cloud Logging para depurar problemas de metastore do Hive.

A seguir