Déployer un service Dataproc Metastore
Cette page explique comment créer un service Dataproc Metastore et vous y connecter depuis un cluster Dataproc. Vous vous connectez ensuite au cluster via SSH, lancez une instance d'Apache Hive et exécutez quelques requêtes de base.
Dataproc Metastore vous offre un environnement Hive entièrement compatible Metastore (HMS), qui est la norme établie pour le big data Open Source pour gérer les métadonnées techniques. Ce service vous aide à gérer métadonnées de vos lacs de données et assure l'interopérabilité entre les différents les outils de traitement des données que vous utilisez.
Pour obtenir des instructions détaillées sur cette tâche directement dans la console Google Cloud, cliquez sur Visite guidée :
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore, Dataproc APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore, Dataproc APIs.
Rôles requis
Pour obtenir les autorisations nécessaires pour créer un métastore Dataproc et un cluster Dataproc, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Pour accorder un accès complet à toutes les ressources Dataproc Metastore, y compris pour définir des autorisations IAM:
(
roles/metastore.admin
) sur le compte utilisateur ou de service -
Pour accorder un contrôle complet sur les ressources Dataproc Metastore:
Éditeur Dataproc Metastore (
roles/metastore.editor
) sur le compte utilisateur ou de service -
Pour créer un cluster Dataproc :
(
roles/dataproc.worker
) sur le compte de service
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour créer un métastore Dataproc et un cluster Dataproc. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer un service Dataproc Metastore et un cluster Dataproc:
-
Pour créer un service Dataproc Metastore :
metastore.services.create
sur le compte utilisateur ou le compte de service -
Pour créer un cluster Dataproc :
Dataproc worker (
sur le compte de serviceroles/dataproc.worker
)
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 les autorisations spécifiques de Dataproc Metastore, consultez la page Présentation de l'IAM Dataproc Metastore.Créer un service Dataproc Metastore
Les instructions suivantes vous expliquent comment créer un service Dataproc Metastore de base à l'aide des paramètres par défaut fournis.
Console
Dans la console Google Cloud, accédez à la page Dataproc Metastore.
Dans le menu de navigation, cliquez sur + Créer.
La boîte de dialogue Créer un service Metastore s'ouvre.
Sélectionnez Dataproc Metastore 2.
Dans le champ Service name (Nom du compte de service), saisissez
example-service
.Dans le champ Data location (Emplacement des données), sélectionnez
us-central1
.Pour les autres options de configuration de service, utilisez les API valeurs par défaut.
Pour créer et démarrer le service, cliquez sur Envoyer.
Votre nouveau service de métastore s'affiche sur la page Dataproc Metastore. L'état Création s'affiche jusqu'à ce que le service soit prêt à l'emploi. Quand qu'il est prêt, l'état passe à Actif. Le provisionnement du service peut prendre quelques minutes.
La capture d'écran suivante montre un exemple de la page Create service (Créer un service) qui utilise certaines des valeurs par défaut fournies.
CLI gcloud
Pour créer un service de métastore à l'aide des valeurs par défaut fournies,
exécutez la commande gcloud metastore services create
suivante
commande:
gcloud metastore services create example-service \ --location=us-central1 \ --instance-size=MEDIUM
Cette commande crée un service nommé example-service
dans le fichier
(us-central1
) et avec la taille d'instance par défaut (MEDIUM
).
REST
Suivez les instructions de l'API pour créer un service à l'aide de l'explorateur d'API.
Créer un cluster Dataproc et vous connecter à Dataproc Metastore
Créez ensuite un cluster Dataproc et connectez-vous à votre métastore. du cluster. Ensuite, votre cluster utilise le service de métastore en tant que HMS. Le cluster que vous créez ici utilise les paramètres par défaut fournis.
Console
Dans la console Google Cloud, accédez à la page Clusters Dataproc.
Dans la barre de navigation, sélectionnez + Créer un cluster.
La boîte de dialogue Create a cluster (Créer un cluster) s'ouvre et vous propose plusieurs options d'infrastructure.
Sur la ligne Cluster sur Compute Engine, sélectionnez Créer.
La page Créer un cluster Dataproc sur Compute Engine s'ouvre.
Dans le champ Cluster Name (Nom du cluster), saisissez
example-cluster
.Dans les menus Région et Zone, sélectionnez
us-central1
.Pour les autres options de Configurer le cluster, utilisez les valeurs par défaut fournies.
Dans le menu de navigation, cliquez sur l'onglet Personnaliser le cluster (facultatif).
Dans la section Dataproc Metastore, sélectionnez le service de métastore que vous avez créé précédemment.
Si vous avez suivi ce tutoriel tel quel, il s'appelle
example-service
.Pour les autres options de configuration de service, utilisez les valeurs par défaut fournies.
Pour créer le cluster, cliquez sur Créer.
Votre nouveau cluster s'affiche dans la liste Clusters. État du cluster affiche Provisionnement jusqu'à ce que le cluster soit prêt à être utilisé. Lorsque l'opération est terminée, l'état passe à Actif. Le provisionnement du cluster peut prendre quelques minutes.
CLI gcloud
Pour créer un cluster à l'aide des paramètres par défaut fournis, exécutez la commande
vous suivez gcloud dataproc clusters create
commande:
gcloud dataproc clusters create example-cluster \ --dataproc-metastore=projects/PROJECT_ID/locations/us-central1/services/example-service \ --region=us-central1
Remplacez PROJECT_ID
par l'ID du projet
dans lequel vous avez créé votre service Dataproc Metastore.
REST
Suivez les instructions de l'API pour créer un cluster à l'aide de l'explorateur d'API.
Se connecter à Apache Hive avec un cluster Dataproc
Les étapes suivantes vous montrent comment exécuter quelques exemples de commandes dans Apache Hive pour créer une base de données et un tableau.
Ouvrez ensuite une session SSH sur le cluster Dataproc et lancez une session Hive.
- Dans la console Google Cloud, accédez à la page Instances de VM.
- Dans la liste des instances de machine virtuelle, cliquez sur SSH à côté de
example-cluster
.
Une fenêtre de navigateur s'ouvre dans votre répertoire d'accueil sur le nœud, avec un résultat semblable comme suit:
Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$
Pour démarrer Hive et créer une base de données et une table, exécutez les commandes suivantes dans la session SSH:
Démarrez Hive.
hive
Créez une base de données nommée
myDatabase
.create database myDatabase;
Affichez la base de données que vous avez créée.
show databases;
Utilisez la base de données que vous avez créée.
use myDatabase;
Créez une table appelée
myTable
.create table myTable(id int,name string);
Répertoriez les tables sous
myDatabase
.show tables;
Décrivez le schéma de la table que vous avez créée.
desc MyTable;
L'exécution de ces commandes affiche un résultat semblable à celui-ci :
$hive
hive> show databases;
OK
default
hive> create database myDatabase;
OK
hive> use myDatabase;
OK
hive> create table myTable(id int,name string);
OK
hive> show tables;
OK
myTable
hive> desc myTable;
OK
id int
name string
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :
- In the Google Cloud console, go to the Manage resources page.
- If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Vous pouvez également supprimer les ressources utilisées dans ce tutoriel :
Supprimez le service Dataproc Metastore.
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore:
Dans la liste des services, sélectionnez
example-service
.Dans la barre de navigation, cliquez sur Supprimer.
La boîte de dialogue Delete service (Supprimer le service) s'ouvre.
Dans la boîte de dialogue, cliquez sur Supprimer.
Votre service ne figure plus dans la liste des services.
CLI gcloud
Pour supprimer votre service, exécutez la commande
gcloud metastore services delete
suivante.gcloud metastore services delete example-service \ --location=us-central1
REST
Suivez les instructions de l'API pour supprimer un service à l'aide de l'explorateur d'API.
Toutes les suppressions sont effectives immédiatement.
Supprimer le bucket Cloud Storage pour le service Dataproc Metastore.
Supprimer le cluster Dataproc qui utilisaient le service Dataproc Metastore.