Crie um serviço Dataproc Metastore

Esta página mostra como criar um serviço do Dataproc Metastore.

Depois de criar o serviço Dataproc Metastore, pode importar metadados e estabelecer ligação a qualquer um dos seguintes serviços:

Depois de associar um destes serviços, este usa o seu serviço Dataproc Metastore como Hive metastore durante a execução de consultas.

Antes de começar

Funções necessárias

Para receber a autorização de que precisa para criar um Dataproc Metastore, peça ao seu administrador que lhe conceda as seguintes funções de IAM no seu projeto, com base no princípio do menor privilégio:

Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Esta função predefinida contém a autorização metastore.services.create , que é necessária para criar um Dataproc Metastore.

Também pode obter esta autorização com funções personalizadas ou outras funções predefinidas.

Para mais informações sobre as funções e as autorizações específicas do Dataproc Metastore, consulte o artigo Faça a gestão do acesso com o IAM.

Crie um Dataproc Metastore com as predefinições

A criação de um Dataproc Metastore com as predefinições configura o seu serviço com um nível empresarial, um tamanho de instância médio, a versão mais recente do Hive Metastore, um ponto final Thrift e uma localização de dados de us-central1.

Dataproc Metastore 2

As instruções seguintes mostram como criar um Dataproc Metastore 2 usando um ponto final Thrift e outras predefinições fornecidas.

Consola

  1. Na Google Cloud consola, aceda à página Dataproc Metastore.

    Aceda ao Dataproc Metastore

  2. Na barra de navegação, clique em +Criar.

    É apresentada a caixa de diálogo Criar serviço Metastore.

  3. Selecione Dataproc Metastore 2.

  4. Na secção Preços e capacidade, escolha um tamanho da instância.

    Para mais informações, consulte os planos de preços e as configurações de escalabilidade.

  5. No campo Nome do serviço, introduza um nome exclusivo para o seu serviço.

    Para obter informações sobre convenções de nomenclatura, consulte o artigo Convenção de nomenclatura de recursos.

  6. Selecione a Localização dos dados.

    Para mais informações sobre como selecionar a região adequada, consulte Regiões e zonas disponíveis e Ponto final regional.

  7. Para as restantes opções de configuração do serviço, use as predefinições fornecidas.

  8. Para criar e iniciar o serviço, clique em Enviar.

    O novo serviço de metastore é apresentado na página Dataproc Metastore. O estado apresenta Creating (A criar) até o serviço estar pronto para utilização. Quando estiver pronto, o estado muda para Ativo. O aprovisionamento do serviço pode demorar alguns minutos.

CLI gcloud

Para criar um serviço de metastore do Dataproc Metastore 2 com os valores predefinidos fornecidos, execute o seguinte comando gcloud metastore services create:

gcloud metastore services create SERVICE \
  --location=LOCATION \
  --instance-size=INSTANCE_SIZE \
  --scaling-factor=SCALING_FACTOR

Substitua o seguinte:

  • SERVICE: o nome do novo serviço do Dataproc Metastore.
  • LOCATION: a região Google Cloud na qual quer criar o Dataproc Metastore. Também pode definir uma localização predefinida.

    Para obter informações sobre convenções de nomenclatura, consulte o artigo Convenção de nomenclatura de recursos.

  • INSTANCE_SIZE: o tamanho da instância do seu Dataproc Metastore multirregional. Por exemplo, small, medium ou large. Se especificar um valor para INSTANCE_SIZE, não especifique um valor para SCALING_FACTOR.

  • SCALING_FACTOR: o fator de dimensionamento do seu serviço Dataproc Metastore. Por exemplo, 0.1. Se especificar um valor para SCALING_FACTOR, não especifique um valor para INSTANCE_SIZE.

REST

Siga as instruções da API para criar um serviço através do APIs Explorer.

Dataproc Metastore 1

As instruções seguintes mostram como criar um Dataproc Metastore 1 usando um ponto final Thrift e outras predefinições fornecidas.

Consola

  1. Na Google Cloud consola, aceda à página Dataproc Metastore.

    Aceda ao Dataproc Metastore

  2. Na barra de navegação, clique em +Criar.

    É apresentada a caixa de diálogo Criar serviço Metastore.

  3. Selecione Dataproc Metastore 1.

  4. No campo Nome do serviço, introduza um nome exclusivo para o seu serviço.

    Para obter informações sobre convenções de nomenclatura, consulte o artigo Convenção de nomenclatura de recursos.

  5. Selecione a Localização dos dados.

    Para mais informações sobre como selecionar a região adequada, consulte Regiões e zonas disponíveis e Ponto final regional.

  6. Para as restantes opções de configuração do serviço, use as predefinições fornecidas.

  7. Para criar e iniciar o serviço, clique em Enviar.

    O novo serviço de metastore é apresentado na página Dataproc Metastore. O estado apresenta Creating (A criar) até o serviço estar pronto para utilização. Quando estiver pronto, o estado muda para Ativo. O aprovisionamento do serviço pode demorar alguns minutos.

CLI gcloud

Para criar um serviço de metastore básico com as predefinições fornecidas, execute o seguinte comando gcloud metastore services create:

gcloud metastore services create SERVICE \
  --location=LOCATION

Substitua o seguinte:

REST

Siga as instruções da API para criar um serviço através do APIs Explorer.

Crie um Dataproc Metastore com definições avançadas

A criação de um Dataproc Metastore através das definições avançadas mostra-lhe como modificar configurações, como configurações de rede, definições de dimensionamento, definições de pontos finais, definições de segurança e funcionalidades opcionais.

Dataproc Metastore 2 ou 1

As instruções seguintes mostram como criar um serviço Dataproc Metastore 2 ou um serviço Dataproc Metastore 1 através de definições avançadas.

Consola

Comece a usar

  1. Na Google Cloud consola, abra a página Dataproc Metastore:

    Abra o Dataproc Metastore

  2. No menu de navegação, clique em +Criar.

    É apresentada a caixa de diálogo Criar serviço Metastore.

  3. Selecione a versão do Metastore que quer usar: Dataproc Metastore 1 ou Dataproc Metastore 2.

    Informações do serviço

    Crie uma página de serviço
    Exemplo da página create service

    1. (Opcional): para o Dataproc Metastore 2. Na secção Preços e capacidade, escolha um tamanho da instância.

      Para mais informações, consulte os planos de preços e as configurações de escalabilidade.

    2. No campo Nome do serviço, introduza um nome exclusivo para o seu serviço.

      Para obter informações sobre convenções de nomenclatura, consulte o artigo Convenção de nomenclatura de recursos.

    3. Selecione a Localização dos dados.

      Para mais informações sobre como selecionar a região adequada, consulte Regiões e zonas disponíveis e Ponto final regional.

    4. Selecione a versão do metastore do Hive.

      Se este valor não for modificado, o seu serviço usa a versão suportada mais recente do Hive (atualmente, a versão 3.1.2).

      Para mais informações sobre a seleção da versão correta, consulte a Política de Versões.

    5. Selecione o canal de lançamento.

      Se este valor não for modificado, o metastore usa o valor Stable. Para mais informações, consulte o artigo Canal de lançamento.

    6. Introduza a Porta TCP.

      A porta TCP à qual o seu ponto final Thrift se liga. Se este valor não for modificado, é usado o número da porta 9083. Se alterar o seu endpoint para gRPC, este valor é automaticamente alterado para 443 e não pode ser alterado.

    7. (Opcional) Para o Dataproc Metastore 1. Selecione o Nível de serviço.

      O nível de serviço influencia a capacidade do seu serviço. Para mais informações, consulte o Nível de serviço.

    Protocolo de ponto final

    • Opcional: escolha um protocolo de ponto final.

      A opção selecionada predefinida é Apache Thrift. Para mais informações acerca dos diferentes pontos finais, consulte o artigo Escolha o protocolo de ponto final.

    Configuração de rede

    1. Selecione uma Configuração de rede.

      Por predefinição, o seu serviço só é exposto numa rede VPC e usa a rede default. A rede default só permite que o seu serviço se ligue a outros serviços no mesmo projeto.

      Altere as definições de rede das predefinições para concluir as seguintes ações:

      • Associe o seu serviço de Metastore do Dataproc a serviços de Metastore do Dataproc noutros projetos.
      • Use o serviço Dataproc Metastore com outros Google Cloud serviços, como o cluster do Dataproc.
    2. Opcional: clique em Usar rede VPC partilhada e introduza o ID do projeto e o nome da rede VPC.

    3. Opcional: clique em Tornar os serviços acessíveis em várias sub-redes de VPC e selecione as sub-redes. Pode especificar até cinco sub-redes.

    4. Clique em Concluído.

    Integração de metadados

    Período de manutenção

    • Opcional: selecione o Dia da semana e a Hora do dia para o seu período de manutenção.

      Para mais informações, consulte o artigo Janelas de manutenção.

    Segurança

    1. Opcional: ative o Kerberos.

      1. Para ativar o Kerberos, clique no botão ativar/desativar.
      2. Selecione ou introduza o ID do recurso do Secret.
      3. Pode optar por usar a versão mais recente do segredo ou selecionar uma versão mais antiga para usar.
      4. Introduza o principal do Kerberos.

        Este é o principal atribuído a este serviço de Metastore do Dataproc.

      5. Procure o ficheiro de configuração krb5.

    2. Opcional: escolha um tipo de encriptação.

      • A opção selecionada predefinida é Google-managed encryption key.

      • Para selecionar uma chave gerida pelo cliente, clique em Usar uma chave de encriptação gerida pelo cliente (CMEK).

        Para mais informações, consulte o artigo Usar chaves de encriptação geridas pelo cliente.

    Substituições da configuração do metastore

    • Opcional: para aplicar um mapeamento ao Hive Metastore, clique em + Adicionar substituições.

    Auxiliary version config

    • Opcional: para adicionar uma configuração de versão auxiliar, clique em Ativar.

      Para mais informações, consulte o artigo Versões auxiliares.

    Tipo de base de dados

    • Opcional: escolha um tipo de base de dados.

      Em Tipo de base de dados, selecione MySQL ou Spanner. O MySQL é o tipo de base de dados predefinido.

      Para mais informações sobre a escolha de um tipo de base de dados específico, consulte Tipos de bases de dados.

    Marcadores

    • Opcional: para adicionar ou remover etiquetas opcionais que descrevem os seus metadados, clique em + Adicionar etiquetas.

Inicie o serviço

Para criar e iniciar o serviço, clique em Enviar.

O novo serviço de metastore é apresentado na página Dataproc Metastore. O estado apresenta Creating (A criar) até o serviço estar pronto para utilização. Quando estiver pronto, o estado muda para Ativo. O aprovisionamento do serviço pode demorar alguns minutos.

CLI gcloud

  1. Para criar um metastore, execute o seguinte comando gcloud metastore services create:

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --instance-size=INSTANCE_SIZE \
      --scaling-factor=SCALING_FACTOR \
      --port=PORT \
      --tier=TIER \
      --endpoint-protocol=ENDPOINT_PROTOCOL \
      --database-type=DATABASE_TYPE \
      --hive-metastore-version=HIVE_METASTORE_VERSION \
      --data-catalog-sync=DATA_CATALOG_SYNC \
      --release-channel=RELEASE_CHANNEL \
      --hive-metastore-configs=METADATA_OVERRIDE \
      --labels=LABELS \
      --auxiliary-versions=AUXILIARY_VERSION \
      --network=NETWORK \
      --consumer-subnetworks="projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET1, projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET2" \
      --kerberos-principal=KERBEROS_PRINCIPAL \
      --krb5-config=KRB5_CONFIG \
      --keytab=CLOUD_SECRET \
      --encryption-kms-key=KMS_KEY

    Substitua o seguinte:

    Definições do serviço:

    • SERVICE: o nome do novo serviço do Dataproc Metastore.
    • LOCATION: a região Google Cloud na qual quer criar o Dataproc Metastore. Também pode definir uma localização predefinida.
    • PORT: Opcional: a porta TCP que o seu ponto final do Thrift usa. Se não estiver definida, é usada a porta 9083. Se optar por usar um ponto final gRPC, o número da porta é automaticamente alterado para 443.
    • TIER: opcional para o Dataproc Metastore 1: O nível de serviço do seu novo serviço. Se não for definido, é usado o valor Developer.
    • ENDPOINT_PROTOCOL: Opcional: escolha o protocolo do ponto final para o seu serviço.
    • DATABASE_TYPE: Opcional: escolha o tipo de base de dados para o seu serviço. Para mais informações sobre a escolha de um tipo de base de dados específico, consulte Tipos de bases de dados.
    • DATA_CATALOG_SYNC: Opcional: ative a funcionalidade de sincronização do catálogo de dados.
    • HIVE_METASTORE_VERSION: opcional: a versão do Hive metastore que quer usar com o seu serviço. Por exemplo, 3.1.2. Se não estiver definida, é usada a versão mais recente do Hive.
    • RELEASE_CHANNEL: Opcional: o canal de lançamento do serviço. Se não for definido, é usado o valor Stable.
    • METADATA_OVERRIDE: opcional: as configurações de substituição da metastore do Hive que quer aplicar ao seu serviço. Use uma lista separada por vírgulas no seguinte formato k1=v1,k2=v2,k3=v3.
    • LABELS: Opcional: pares de chave-valor para adicionar metadados adicionais ao seu serviço. Use uma lista separada por vírgulas no seguinte formato k1=v1,k2=v2,k3=v3. Dataproc Metastore
    • AUXILIARY_VERSION: opcional: ative as versões auxiliares. Para mais informações, consulte o artigo Versões auxiliares.

    Definições de dimensionamento:

    • INSTANCE_SIZE: opcional para o Dataproc Metastore 2: o tamanho da instância do seu Dataproc Metastore multirregional. Por exemplo, small, medium ou large. Se especificar um valor para INSTANCE_SIZE, não especifique um valor para SCALING_FACTOR.
    • SCALING_FACTOR: opcional para o Dataproc Metastore 2: o fator de escalabilidade do seu serviço Dataproc Metastore. Por exemplo, 0.1. Se especificar um valor para SCALING_FACTOR, não especifique um valor para INSTANCE_SIZE

    Definições de rede:

    • NETWORK: o nome da rede VPC à qual se está a ligar ao seu serviço. Se não for definido, é usado o valor default.

      Se usar uma rede VPC pertencente a um projeto diferente do seu serviço, tem de indicar o nome do recurso relativo completo. Por exemplo, projects/HOST_PROJECT/global/networks/NETWORK_ID.

    • SUBNET1, SUBNET2: Opcional: uma lista de sub-redes que podem aceder ao seu serviço. Pode usar o ID, o URL totalmente qualificado ou o nome relativo da sub-rede. Pode especificar até 5 sub-redes.

    Definições Kerberos:

    • KERBEROS_PRINCIPAL: Opcional: um principal do Kerberos que existe no keytab e no KDC. Um principal típico tem o formato "primary/instance@REALM", mas não existe um formato exato.
    • KRB5_CONFIG: Opcional: o ficheiro krb5.config especifica o KDC e as informações do domínio do Kerberos, que incluem localizações de KDCs e predefinições para o domínio e as aplicações do Kerberos.
    • CLOUD_SECRET: Opcional: o nome do recurso relativo de uma versão do secret do Secret Manager.
    • KMS_KEY: Opcional: refere-se ao ID do recurso principal.
  2. Verifique se a criação foi bem-sucedida.

REST

Siga as instruções da API para criar um serviço através do APIs Explorer.

Defina uma substituição da configuração do metastore do Hive para o Dataproc Metastore

Se o diretório do seu armazém do Apache Hive estiver no Cloud Storage, deve definir uma substituição da configuração do metastore. Esta substituição define o seu data warehouse personalizado como o diretório do warehouse predefinido para o serviço Dataproc Metastore.

Antes de definir esta substituição, certifique-se de que o serviço Dataproc Metastore tem autorizações de leitura e escrita de objetos para aceder ao diretório do armazém. Para mais informações, consulte o artigo Diretório do armazém de dados do Hive.

As instruções seguintes mostram como definir uma substituição da configuração do Hive Metastore para um novo serviço do Dataproc Metastore.

Consola

  1. Na Google Cloud consola, abra a página Dataproc Metastore:

    Abra o Dataproc Metastore

  2. Na barra de navegação, clique em +Criar.

  3. Nas Substituições da configuração do metastore, introduza os seguintes valores:

    • Chave: hive.metastore.warehouse.dir.
    • Valor: a localização do Cloud Storage do diretório do armazém. Por exemplo: gs://my-bucket/path/to/location.
  4. Configure as restantes opções de serviço conforme necessário ou use as predefinições fornecidas.

  5. Clique em Enviar.

    Regresse à página Dataproc Metastore e verifique se o serviço foi criado com êxito.

CLI gcloud

  1. Para criar um serviço Dataproc Metastore com uma substituição do Hive, execute o seguinte comando gcloud metastore services create:

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --hive-metastore-configs="hive.metastore.warehouse.dir=CUSTOMER_DIR"
    

    Substitua o seguinte:

    • SERVICE: o nome do novo serviço do Dataproc Metastore.
    • LOCATION: a região Google Cloud na qual quer criar o Dataproc Metastore. Também pode definir uma localização predefinida.
    • CUSTOMER_DIR: a localização do Cloud Storage do diretório do armazém. Por exemplo: gs://my-bucket/path/to/location.
  2. Verifique se a criação foi bem-sucedida.

Crie um Dataproc Metastore com o redimensionamento automático

O Dataproc Metastore 2 suporta o dimensionamento automático. Se ativar o ajuste de escala automático, pode definir um fator de ajuste de escala mínimo e um fator de ajuste de escala máximo. Depois de definir este valor, o serviço aumenta ou diminui automaticamente o fator de escalabilidade necessário para executar as cargas de trabalho.

Considerações sobre a escala automática

  • O ajuste automático e os fatores de escalabilidade são opções mutuamente exclusivas. Por exemplo, se ativar o ajuste de escala automático, não pode definir manualmente um fator de ajuste de escala nem um tamanho.
  • A escala automática só está disponível para instâncias do Dataproc Metastore de região única.
  • Quando o ajuste de escala automático está ativado, as definições de fatores de escalabilidade existentes são limpas.
  • Quando o ajuste de escala automático está desativado:
    • As definições de dimensionamento automático existentes são limpas.
    • O fator de dimensionamento é definido como o último autoscaling_factor que foi configurado no serviço.
  • Os fatores de dimensionamento automático mínimo e máximo são opcionais. Se não estiverem definidos, os valores predefinidos são 0.1 e 6, respetivamente.

Escolha um dos seguintes separadores para saber como criar um serviço Dataproc Metastore 2 com o dimensionamento automático ativado.

Consola

  1. Na Google Cloud consola, aceda à página Dataproc Metastore.

    Aceda ao Dataproc Metastore

  2. Na barra de navegação, clique em +Criar.

    É apresentada a caixa de diálogo Criar serviço Metastore.

  3. Selecione Dataproc Metastore 2.

  4. Na secção Preços e capacidade, selecione Enterprise – Região única

  5. Em Tamanho da instância, clique em Ativar dimensionamento automático.

  6. Em Tamanho da instância, use o controlo de deslize para escolher um tamanho mínimo e máximo da instância.

  7. Para criar e iniciar o serviço, clique em Enviar.

    O novo serviço de metastore é apresentado na página Dataproc Metastore. O estado apresenta Creating (A criar) até o serviço estar pronto para utilização. Quando estiver pronto, o estado muda para Ativo. O aprovisionamento do serviço pode demorar alguns minutos.

REST

curl -X POST -s -i -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-d '{"scaling_config":{"autoscaling_config":{"autoscaling_enabled": true,"limit_config":{"max_scaling_factor":MAX_SCALING_FACTOR,"min_scaling_factor": MIN_SCALING_FACTOR}}}}' \
-H "Content-Type:application/json" \
https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/services?service_id=SERVICE_ID

Substitua o seguinte:

  • MIN_INSTANCES Opcional: o número mínimo de instâncias a usar na configuração da escala automática. Se estes valores não forem especificados, é usado um valor predefinido de 0.1.
  • MAX_INSTANCESOpcional: o número máximo de instâncias a usar na configuração do ajuste de escala automático. Se estes valores não forem especificados, é usado um valor predefinido de 6.

Crie um serviço de Metastore do Dataproc multirregional

Para criar um Metastore do Dataproc multirregional, consulte o artigo Configure um serviço de Metastore do Dataproc multirregional.

Crie um serviço de Metastore do Dataproc com a VPC partilhada

Uma VPC partilhada permite-lhe ligar recursos do Dataproc Metastore de vários projetos a uma rede VPC comum.

Para criar um serviço Dataproc Metastore configurado com uma VPC partilhada, consulte o artigo Crie um serviço com definições avançadas.

Considerações

  • As redes VPC não são relevantes para os serviços Dataproc Metastore configurados com o protocolo de ponto final gRPC.

  • Para os serviços do Dataproc Metastore configurados com o protocolo do ponto final Thrift, certifique-se de que o serviço do Dataproc Metastore e o cluster do Dataproc ao qual está associado estão a usar a mesma rede de VPC partilhada.

  • Para serviços do Dataproc Metastore configurados com o protocolo do endpoint Thrift e o Private Service Connect, certifique-se de que usa sub-redes da rede VPC partilhada.

Funções de IAM necessárias para redes de VPC partilhada

Para criar um serviço Dataproc Metastore com uma VPC acessível numa rede pertencente a um projeto diferente, tem de conceder roles/metastore.serviceAgent ao agente de serviço Dataproc Metastore (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) do projeto de serviço na política de IAM do projeto de rede.

gcloud projects add-iam-policy-binding NETWORK_PROJECT_ID \
   --role "roles/metastore.serviceAgent" \
   --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com"

Resolva problemas comuns

Seguem-se alguns problemas comuns:

  • Restringir o intercâmbio da VPC. Antes de criar um metastore, não defina uma restrição de política da organização para restringir a interligação de VPCs. Caso contrário, a criação do metastore falha. Para mais informações sobre como definir as configurações de VPC corretas, consulte o artigo A criação do serviço falha devido à restrição para restringir o peering de VPC.

  • Problemas com redes de VPC. Ao criar um metastore, a rede VPC que está a usar pode ficar sem endereços RFC 1918 disponíveis necessários pelos serviços do Dataproc Metastore. Para mais informações sobre como corrigir este problema, consulte o artigo O intervalo de IPs atribuído está esgotado.

O que se segue?