Ao criar um serviço Metastore do Dataproc, você deve optar por usar o tipo de banco de dados MySQL ou Spanner.
Essa escolha afeta os recursos que você pode integrar e usar serviço Metastore do Dataproc. É importante observar que não é possível atualizar o tipo de banco de dados depois de criar um metastore do Dataproc serviço. 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 Dataproc Metastore é 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 Dataproc Metastore, como o uso de chaves de criptografia gerenciadas pelo cliente (CMEK).
Spanner
O tipo de banco de dados do Spanner Metastore no Dataproc é uma implementação do Spanner. Observe o seguinte ao usar um banco de dados do Spanner:
- O Spanner é compatível apenas com as versões 2.3.6 e 3.1.2 do Hive.
- O Spanner só oferece suporte a importações do Avro.
Mais detalhes
A tabela a seguir fornece detalhes adicionais sobre essas diferenças.
MySQL | Spanner | |
---|---|---|
Confiabilidade (disponibilidade) | 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 traduzidos diretamente para SLOs do Dataproc Metastore. Metastore do Dataproc A seleção do tipo de banco de dados não afeta o metastore do Dataproc SLOs.
- Não há diferença de preço entre os dois tipos de banco de dados.
Antes de começar
- Ativar o metastore do Dataproc em seu projeto.
- Entenda os requisitos de rede específicos do seu 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ê papéis do IAM a seguir no 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 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 uma 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 Dataproc Metastore, consulte Gerenciar o acesso ao Dataproc com o IAM.Escolha o tipo de banco de dados
Você escolhe o tipo de banco de dados ao criar um serviço do Dataproc Metastore.
O exemplo a seguir mostra uma versão resumida 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
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.
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 ID da sua serviço Metastore do Dataproc.LOCATION
: a região em que o serviço do Dataproc Metastore está localizado.DATABASE_TYPE
: o tipo de banco de dados que você quer definir para o serviço do Dataproc Metastore. Os valores aceitos incluemmysql
espanner
. O valor padrão émysql
.