Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Lorsque vous créez un service Dataproc Metastore, vous devez choisir d'utiliser le type de base de données MySQL ou Spanner.
Ce choix affecte les fonctionnalités que vous pouvez intégrer et utiliser avec votre service Dataproc Metastore. Il est important de noter que vous ne pouvez pas modifier le type de base de données après avoir créé un service Dataproc Metastore. Assurez-vous de choisir le type de base de données adapté à vos besoins.
Cette page explique les différences entre ces types de bases de données et comment en sélectionner un pour votre service.
Différences entre MySQL et Spanner
MySQL
Le type de base de données MySQL Dataproc Metastore est une implémentation de Cloud SQL.
Tenez compte des points suivants lorsque vous utilisez une base de données MySQL :
MySQL est le type de base de données par défaut lorsque vous créez un Dataproc Metastore.
MySQL est compatible avec toutes les versions de Hive.
MySQL est compatible avec toutes les fonctionnalités de Dataproc Metastore.
MySQL est compatible avec le chiffrement Dataproc Metastore, par exemple avec les clés de chiffrement gérées par le client (CMEK).
Spanner
Le type de base de données Spanner Dataproc Metastore est une implémentation de Spanner.
Tenez compte des points suivants lorsque vous utilisez une base de données Spanner :
Spanner n'est compatible qu'avec les versions Hive 2.3.6 et 3.1.2.
Spanner n'accepte que les importations Avro.
Informations supplémentaires
Le tableau suivant fournit plus d'informations sur ces différences.
MySQL
Spanner
Fiabilité (temps d'activité)
SLO Cloud SQL de 99,95 %*
SLO Spanner de 99,99 %*
Intervalles de maintenance
Obligatoire
Non obligatoire
Remarques :
* Les SLO Cloud SQL et Spanner ne se traduisent pas directement en SLO Dataproc Metastore.
Dataproc Metastore
La sélection du type de base de données n'a aucune incidence sur les SLO Dataproc Metastore.
Il n'y a aucune différence de prix entre les deux types de bases de données.
Pour obtenir l'autorisation nécessaire pour créer un Dataproc Metastore, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet, en fonction du principe du moindre privilège :
Vous choisissez votre type de base de données lorsque vous créez un service Dataproc Metastore.
L'exemple suivant montre une version abrégée des étapes à suivre pour choisir un type de base de données. Pour obtenir des instructions détaillées, consultez Créer un service Dataproc Metastore.
Console
Dans la console Google Cloud , ouvrez la page "Dataproc Metastore" :
SERVICE_ID : nom ou ID de votre service Dataproc Metastore.
LOCATION : région dans laquelle réside votre service Dataproc Metastore.
DATABASE_TYPE : type de base de données que vous souhaitez définir pour votre service Dataproc Metastore.
Les valeurs acceptées incluent mysql et spanner. La valeur par défaut est mysql.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (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)"]]