Ao criar um serviço Metastore do Dataproc, você precisa optar por 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 Metastore do Dataproc. Não é possível atualizar o tipo de banco de dados depois de criar um serviço Metastore do Dataproc. Certifique-se de escolher o tipo de banco de dados apropriado para 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 Metastore do Dataproc é uma implementação do Cloud SQL. Observe o seguinte ao usar um banco de dados MySQL:
- 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 Metastore do Dataproc é uma implementação do Spanner. Observe o seguinte ao usar um banco de dados do Spanner:
- O Spanner só é compatível com as versões 2.3.6 e 3.1.2 do Hive.
- O Spanner é compatível apenas com importações Avro.
Mais detalhes
A tabela a seguir fornece mais detalhes sobre essas diferenças.
MySQL | Spanner | |
---|---|---|
Confiabilidade (tempo de atividade) | SLO do Cloud SQL 99,95%* | SLO do Spanner 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 convertidos diretamente nos SLOs do metastore do Dataproc. Metastore do Dataproc Sua seleção do tipo de banco de dados não afeta os SLOs do metastore do Dataproc.
- Não há diferença de preços entre os dois tipos de banco de dados.
Antes de começar
- Ative o metastore do Dataproc no seu projeto.
- Entenda os requisitos de rede específicos do projeto.
Papéis necessários
Para ter 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 seu projeto, com base no princípio de privilégio mínimo:
-
Conceder controle total dos recursos do metastore do Dataproc (
roles/metastore.editor
) -
Conceder acesso total a todos os recursos do metastore do Dataproc, incluindo a administração de políticas do IAM (
roles/metastore.admin
)
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
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 funções e permissões específicas do metastore do Dataproc, consulte Gerenciar o acesso ao Dataproc com o IAM.Escolher o tipo de banco de dados
Escolha o tipo de banco de dados ao criar um serviço do Dataproc Metastore pela primeira vez.
O exemplo a seguir mostra uma versão abreviada das etapas a serem seguidas para escolher um tipo de banco de dados. Para instruções detalhadas, consulte Criar um serviço Metastore do Dataproc.
Console
No console do Google Cloud, abra a página Metastore do Dataproc:
Na barra de navegação, clique em Criar.
A página Criar serviço é aberta.
Em Tipo de banco de dados, selecione MySQL ou Spanner.
O MySQL é o tipo de banco de dados padrão.
Escolha as configurações restantes para o serviço, conforme necessário.
Clique em Enviar.
CLI da gcloud
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 o ID do serviço Metastore do Dataproc.LOCATION
: a região em que o serviço Metastore do Dataproc reside.DATABASE_TYPE
: o tipo de banco de dados que você quer definir para o serviço Metastore do Dataproc. Os valores aceitos incluemmysql
espanner
. O valor padrão émysql
.