Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
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.
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:
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
No console do Google Cloud , abra a página Metastore do Dataproc:
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.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-02 UTC."],[[["\u003cp\u003eDataproc Metastore services require the selection of either MySQL or Spanner as the database type during creation, which cannot be changed afterward.\u003c/p\u003e\n"],["\u003cp\u003eMySQL is the default database type, supporting all Hive versions and Dataproc Metastore features, including customer-managed encryption keys (CMEK).\u003c/p\u003e\n"],["\u003cp\u003eSpanner supports Hive versions 2.3.6 and 3.1.2, but only supports Avro imports.\u003c/p\u003e\n"],["\u003cp\u003eWhile there's no pricing difference, Spanner offers a higher reliability (uptime) SLO of 99.99%, compared to MySQL's 99.95%.\u003c/p\u003e\n"],["\u003cp\u003eMySQL requires maintenance windows, while Spanner does not.\u003c/p\u003e\n"]]],[],null,["# Database types\n\nWhen you create a Dataproc Metastore service, you must choose to use\neither the MySQL database type or the Spanner database type.\n\nThis choice affects the features that you can integrate and use with your\nDataproc Metastore service. It's important to note that you can't\nupdate your database type after you create a Dataproc Metastore\nservice. Make sure you choose the appropriate database type for your needs.\n\nThis page explains the differences between these database types and how to select\none for your service.\n\nDifferences between MySQL and Spanner\n-------------------------------------\n\n### MySQL\n\nThe Dataproc Metastore MySQL database type is an implementation of [Cloud SQL](/sql).\nNote the following when using a MySQL database:\n\n- MySQL is the default database type when creating a Dataproc Metastore.\n- MySQL is supported by all Hive versions.\n- MySQL supports all Dataproc Metastore features.\n- MySQL supports Dataproc Metastore encryption, such as using customer-managed encryption keys (CMEK).\n\n### Spanner\n\nThe Dataproc Metastore Spanner database type is an implementation of [Spanner](/spanner).\nNote the following when using a Spanner database:\n\n- Spanner is only supported on Hive versions 2.3.6 and 3.1.2.\n- Spanner only supports Avro imports.\n\n### Additional details\n\nThe following table provides additional details about these differences.\n\nNotes:\n\n- ^\\*^The Cloud SQL and Spanner SLOs don't directly translate to Dataproc Metastore SLOs. Dataproc Metastore Your database type selection does not affect Dataproc Metastore SLOs.\n- There's no pricing difference between the two database types.\n\nBefore you begin\n----------------\n\n- [Enable Dataproc Metastore](/dataproc-metastore/docs/enable-service) in your project.\n- [Understand networking requirements](/dataproc-metastore/docs/access-service) specific to your project.\n\n### Required Roles\n\n\nTo get the permission that\nyou need to create a Dataproc Metastore,\n\nask your administrator to grant you the\nfollowing IAM roles on your project, based on the principle of least privilege:\n\n- [Grant full control of Dataproc Metastore resources](/iam/docs/roles-permissions/metastore#metastore.editor) (`roles/metastore.editor`)\n- [Grant full access to all Dataproc Metastore resources, including IAM policy administration](/iam/docs/roles-permissions/metastore#metastore.admin) (`roles/metastore.admin`)\n\n\nFor more information about granting roles, see [Manage access to projects, folders, and organizations](/iam/docs/granting-changing-revoking-access).\n\n\nThis predefined role contains the\n` metastore.services.create`\npermission,\nwhich is required to\ncreate a Dataproc Metastore.\n\n\nYou might also be able to get\nthis permission\nwith [custom roles](/iam/docs/creating-custom-roles) or\nother [predefined roles](/iam/docs/roles-overview#predefined).\nFor more information about specific Dataproc Metastore roles and permissions, see [Manage Dataproc access with IAM](/dataproc-metastore/docs/iam-and-access-control).\n\n\u003cbr /\u003e\n\nChoose your database type\n-------------------------\n\nYou choose your database type when you first create a\nDataproc Metastore service.\n\nThe following example shows an abbreviated version of the steps that you follow\nto choose a database type. For complete step-by-step instructions, see\n[Create a Dataproc Metastore service](/dataproc-metastore/docs/create-service).\n**Caution:** You can't update your database type after you create a Dataproc Metastore service. Make sure you choose the appropriate database type for your requirements. To change your database type, you must delete and recreate your service. \n\n### Console\n\n1. In the Google Cloud console, open the Dataproc Metastore page:\n\n [Open Dataproc Metastore](https://console.cloud.google.com/dataproc/metastore/services)\n2. In the navigation bar, click **Create**.\n\n The **Create service** page opens.\n3. For **Database type** , select either **MySQL** or **Spanner**.\n\n MySQL is the default database type.\n4. Choose the [remaining configurations](/dataproc-metastore/docs/create-service#create-a-service)\n for your service, as needed.\n\n5. Click **Submit**.\n\n### gcloud CLI\n\n1. Run the following [`gcloud metastore services create`](/sdk/gcloud/reference/metastore/services/create)\n command:\n\n ```\n gcloud metastore services create SERVICE_ID \\\n --location=LOCATION \\\n --database-type=DATABASE_TYPE; default=\"mysql\"\n ```\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eSERVICE_ID\u003c/var\u003e: the name or ID for your Dataproc Metastore service.\n - \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e: the region that your Dataproc Metastore service resides in.\n - \u003cvar translate=\"no\"\u003eDATABASE_TYPE\u003c/var\u003e: the database type that you want to set for your Dataproc Metastore service. Accepted values include `mysql` and `spanner`. The default value is `mysql`.\n\nWhat's next\n-----------\n\n- [Create a service](/dataproc-metastore/docs/create-service)\n- [Update and delete a service](/dataproc-metastore/docs/manage-service)\n- [Data storage for internal tables](/dataproc-metastore/docs/data-storage-internal-tables)"]]