Tipos de banco de dados

Ao criar um serviço do Dataproc Metastore, você precisa escolher usar o tipo de banco de dados MySQL ou Spanner.

Essa escolha afeta os recursos que podem ser integrados e usados com o serviço do metastore do Dataproc. Não é possível atualizar o tipo de banco de dados depois de criar um serviço do metastore do Dataproc. Escolha o tipo de banco de dados adequado às suas necessidades.

Nesta página, explicamos as diferenças entre esses tipos de banco de dados e como selecionar um para seu serviço.

Diferenças entre o MySQL e o Spanner

MySQL

O tipo de banco de dados MySQL do Dataproc Metastore é uma implementação do Cloud SQL. Ao usar um banco de dados MySQL, observe o seguinte:

  • O MySQL é o tipo de banco de dados padrão ao criar um metastore do Dataproc.
  • O MySQL é compatível com todas as versões do Hive.
  • O MySQL é compatível com todos os recursos do metastore do Dataproc.
  • O MySQL oferece suporte à criptografia do metastore do Dataproc, como o uso de chaves de criptografia gerenciadas pelo cliente (CMEK).

Spanner

O tipo de banco de dados do Spanner do Dataproc Metastore é uma implementação do Spanner. Ao usar um banco de dados do Spanner, observe o seguinte:

  • O Spanner só é compatível com as versões 2.3.6 e 3.1.2 do Hive.
  • O Spanner só aceita importações do Avro.

Mais detalhes

A tabela a seguir oferece mais detalhes sobre essas diferenças.

MySQL Spanner
Confiabilidade (tempo de atividade) SLO do Cloud SQL de 99,95%* SLO do Spanner de 99,99%*
Janelas de manutenção Obrigatório Não é obrigatório

Observações:

  • *Os SLOs do Cloud SQL e do Spanner não são traduzidos diretamente para os SLOs do Dataproc Metastore. Metastore do Dataproc A seleção do tipo de banco de dados não afeta os SLOs do metastore do Dataproc.
  • Não há diferença de preço entre os dois tipos de banco de dados.

Antes de começar

Papéis necessários

Para receber a permissão necessária para criar um metastore do Dataproc, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto, com base no princípio de privilégio mínimo:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esse papel predefinido contém a permissão metastore.services.create, que é necessária para criar um metastore do Dataproc.

Também é possível conseguir essa permissão com papéis personalizados ou outros papéis predefinidos.

Para mais informações sobre papéis e permissões específicos do metastore do Dataproc, consulte Gerenciar o acesso ao Dataproc com o IAM.

Escolher o tipo de banco de dados

Você escolhe o tipo de banco de dados ao criar um serviço do metastore do Dataproc.

O exemplo a seguir mostra uma versão abreviada das etapas que você segue para escolher um tipo de banco de dados. Para instruções detalhadas, consulte Criar um serviço Metastore do Dataproc.

Console

  1. No console do Google Cloud , abra a página Metastore do Dataproc:

    Abrir o metastore do Dataproc

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

    A página Criar serviço é aberta.

  3. Em Tipo de banco de dados, selecione MySQL ou Spanner.

    O MySQL é o tipo de banco de dados padrão.

  4. Escolha as configurações restantes para seu serviço, conforme necessário.

  5. Clique em Enviar.

CLI da gcloud

  1. Execute este comando gcloud metastore services create:

    gcloud metastore services create SERVICE_ID \
       --location=LOCATION \
       --database-type=DATABASE_TYPE; default="mysql"
    

    Substitua:

    • SERVICE_ID: o nome ou ID do seu serviço do Dataproc Metastore.
    • LOCATION: a região em que seu serviço Dataproc Metastore está localizado.
    • DATABASE_TYPE: o tipo de banco de dados que você quer definir para o serviço metastore do Dataproc. Os valores aceitos incluem mysql e spanner. O valor padrão é mysql.

A seguir