Cette page explique comment exporter des métadonnées depuis Dataproc Metastore.
La fonctionnalité d'exportation de métadonnées vous permet d'enregistrer vos métadonnées dans un format de stockage portable.
Après avoir exporté vos données, vous pouvez importer les métadonnées dans un autre service Dataproc Metastore ou dans un métastore Hive autogéré.
À propos de l'exportation des métadonnées
Lorsque vous exportez des métadonnées à partir de Dataproc Metastore, le service stocke les données dans l'un des formats de fichier suivants:
- Ensemble de fichiers Avro stockés dans un dossier.
- Un fichier de dump MySQL unique stocké dans un dossier Cloud Storage.
Avro
Les exportations basées sur Avro ne sont compatibles qu'avec les versions 2.3.6 et 3.1.2 de Hive. Lorsque vous exportez des fichiers Avro, Dataproc Metastore crée un fichier <table-name>.avro
pour chaque table de votre base de données.
Pour exporter des fichiers Avro, votre service Dataproc Metastore peut utiliser le type de base de données MySQL ou Spanner.
MySQL
Les exportations basées sur MySQL sont compatibles avec toutes les versions de Hive. Lorsque vous exportez des fichiers MySQL, Dataproc Metastore crée un seul fichier SQL contenant toutes les informations de votre table.
Pour exporter des fichiers MySQL, votre service Dataproc Metastore doit utiliser le type de base de données MySQL. Le type de base de données Spanner n'est pas compatible avec les importations MySQL.
Avant de commencer
- Activez Dataproc Metastore dans votre projet.
- Identifiez les exigences de mise en réseau spécifiques à votre projet.
- Créez un service Dataproc Metastore.
Rôles requis
Pour obtenir les autorisations nécessaires pour exporter des métadonnées dans Dataproc Metastore, demandez à votre administrateur de vous attribuer les rôles IAM suivants:
-
Pour exporter des métadonnées :
-
Éditeur Dataproc Metastore (
roles/metastore.editor
) sur le service Dataproc Metastore -
Administrateur Dataproc Metastore (
roles/metastore.admin
) sur le service Dataproc Metastore -
Opérateur de métadonnées Dataproc Metastore (
roles/metastore.metadataOperator
) sur le service Dataproc Metastore
-
Éditeur Dataproc Metastore (
-
Pour MySQL et Avro, procédez comme suit pour utiliser l'objet Cloud Storage pour l'exportation : accordez à votre compte utilisateur et à l'agent de service Dataproc Metastore le rôle Créateur de stockage (
roles/storage.objectCreator
) sur le bucket Cloud Storage
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ces rôles prédéfinis contiennent les autorisations requises pour exporter des métadonnées dans Dataproc Metastore. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour exporter des métadonnées dans Dataproc Metastore:
-
Pour exporter des métadonnées :
metastore.services.export
sur le service de métastore -
Pour MySQL et Avro, afin d'utiliser l'objet Cloud Storage pour l'exportation, accordez à votre compte utilisateur et à l'agent de service Dataproc Metastore :
storage.objects.create
sur le bucket Cloud Storage
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles et autorisations spécifiques de Dataproc Metastore, consultez la page Présentation de l'IAM pour Dataproc Metastore.Exporter les métadonnées
Avant d'exporter vos métadonnées, tenez compte des points suivants:
- Lorsqu'une exportation est en cours d'exécution, vous ne pouvez pas mettre à jour un service Dataproc Metastore, par exemple modifier les paramètres de configuration. Cependant, vous pouvez toujours l'utiliser pour des opérations normales, par exemple pour accéder à ses métadonnées à partir de clusters Dataproc associés ou des clusters autogérés.
- La fonctionnalité d'exportation des métadonnées n'exporte que les métadonnées. Les données créées par Apache Hive dans des tables internes ne sont pas répliquées dans l'exportation.
Pour exporter des métadonnées à partir d'un service Dataproc Metastore, procédez comme suit.
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore:
Sur la page Dataproc Metastore, cliquez sur le nom du service à partir duquel vous souhaitez exporter les métadonnées.
La page Détails du service s'ouvre.
Dans la barre de navigation, cliquez sur Exporter.
La page Exporter les métadonnées s'ouvre.
Dans la section Destination, choisissez MySQL ou Avro.
Dans le champ URI de destination, cliquez sur Parcourir et sélectionnez l'URI Cloud Storage vers lequel vous souhaitez exporter vos fichiers.
Vous pouvez également saisir l'emplacement de votre bucket dans le champ de texte prévu à cet effet. Utilisez le format suivant:
bucket/object
oubucket/folder/object
.Pour lancer l'exportation, cliquez sur Envoyer.
Une fois terminée, votre exportation apparaît dans un tableau de la page Détails du service de l'onglet Importation/Exportation.
Une fois l'exportation terminée, Dataproc Metastore revient automatiquement à l'état actif, que l'exportation ait réussi ou non.
gcloud CLI
Pour exporter des métadonnées à partir d'un service, exécutez la commande
gcloud metastore services export gcs
suivante:gcloud metastore services export gcs SERVICE \ --location=LOCATION \ --destination-folder=gs://bucket-name/path/to/folder \ --dump-type=DUMP_TYPE
Remplacez les éléments suivants :
SERVICE
: nom de votre service Dataproc Metastore.LOCATION
: région Google Cloud dans laquelle se trouve votre service Dataproc Metastore.bucket-name/path/to/folder
: dossier de destination Cloud Storage dans lequel vous souhaitez stocker votre exportation.DUMP_TYPE
: type de vidage de la base de données à générer par l'exportation. Les valeurs acceptées sontmysql
etavro
. La valeur par défaut estmysql
.
Vérifiez que l'exportation a réussi.
Une fois l'exportation terminée, Dataproc Metastore revient automatiquement à l'état actif, que l'exportation ait réussi ou non.
REST
Suivez les instructions de l'API pour exporter des métadonnées dans un service à l'aide d'APIs Explorer.
Une fois l'exportation terminée, le service revient automatiquement à l'état actif, qu'elle ait réussi ou non.
Afficher l'historique des exportations
Pour afficher l'historique des exportations d'un service Dataproc Metastore dans la console Google Cloud, procédez comme suit:
- Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
Dans la barre de navigation, cliquez sur Importer/Exporter.
L'historique des exportations s'affiche dans le tableau Historique des exportations.
L'historique affiche les 25 dernières exportations au maximum.
La suppression d'un service Dataproc Metastore entraîne également la suppression de tout l'historique d'exportation associé.
Résoudre les problèmes courants
Voici quelques problèmes courants:
- L'agent de service ou le compte utilisateur ne dispose pas des autorisations nécessaires.
- La tâche échoue, car le fichier de base de données est trop volumineux.
Si vous avez besoin d'aide pour résoudre les problèmes courants, consultez Scénarios d'erreur d'importation et d'exportation.