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 mettre à jour le type de base de données après avoir créé un service Dataproc Metastore. Veillez à 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 explique 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 lors de la création d'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 de Dataproc Metastore, par exemple avec l'utilisation de 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 2.3.6 et 3.1.2 de Hive.
- Spanner n'accepte que les importations Avro.
Informations supplémentaires
Le tableau suivant fournit des informations supplémentaires sur ces différences.
MySQL | Spanner | |
---|---|---|
Fiabilité (disponibilité) | SLO Cloud SQL : 99,95%* | SLO Spanner : 99,99%* |
Intervalles de maintenance | Requis | 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'affecte pas les SLO Dataproc Metastore.
- Il n'existe aucune différence de tarification entre les deux types de bases de données.
Avant de commencer
- Activez Dataproc Metastore dans votre projet.
- Identifiez les exigences de mise en réseau spécifiques à votre projet.
Rôles requis
Pour obtenir l'autorisation nécessaire pour créer un service Dataproc Metastore, demandez à votre administrateur de vous attribuer les rôles IAM suivants sur votre projet, selon le principe du moindre privilège:
-
Accorder un contrôle complet sur les ressources Dataproc Metastore (
roles/metastore.editor
) -
Accordez un accès complet à toutes les ressources Dataproc Metastore, y compris pour l'administration des stratégies IAM (
roles/metastore.admin
)
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ce rôle prédéfini contient l'autorisation metastore.services.create
, nécessaire pour créer un Dataproc Metastore.
Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles et les autorisations spécifiques à Dataproc Metastore, consultez la page Gérer l'accès à Dataproc avec IAM.Choisir le type de base de données
Vous choisissez le type de base de données lorsque vous créez pour la première fois 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 la page Créer un service Dataproc Metastore.
Console
Dans la console Google Cloud, ouvrez la page "Dataproc Metastore" :
Dans la barre de navigation, cliquez sur Créer.
La page Créer un service s'ouvre.
Dans le champ Type de base de données, sélectionnez MySQL ou Spanner.
MySQL est le type de base de données par défaut.
Choisissez les configurations restantes pour votre service, si nécessaire.
Cliquez sur Submit (Envoyer).
gcloud CLI
Exécutez la commande
gcloud metastore services create
suivante :gcloud metastore services create SERVICE_ID \ --location=LOCATION \ --database-type=DATABASE_TYPE; default="mysql"
Remplacez les éléments suivants :
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 sontmysql
etspanner
. La valeur par défaut estmysql
.