L'environnement d'exploration de données de Dataplex (Explore) vous permet d'interroger de manière interactive des données entièrement gouvernées, et d'accéder en un clic aux scripts Spark SQL et aux notebooks Jupyter. Explorer vous permet de collaborer entre équipes grâce aux fonctionnalités intégrées de publication, de partage et de recherche des composants de codage.
Découvrez comment provisionner, mettre à l'échelle et gérer l'infrastructure sans serveur requise pour exécuter vos scripts et notebooks Spark SQL à l'aide d'identifiants utilisateur. Vous pouvez optimiser votre travail avec la planification sans serveur depuis Workbench.
Ce document explique comment utiliser les fonctionnalités d'exploration dans Dataplex.
Coûts
Dataplex propose Explore au niveau de traitement Premium.
Terminologie
Ce document utilise les termes suivants :
Environnement
Un environnement fournit des ressources de calcul sans serveur pour que vos requêtes et notebooks Spark SQL s'exécutent dans un lac. Un administrateur Dataplex crée et gère des environnements.
Les administrateurs peuvent autoriser un ou plusieurs utilisateurs à exécuter des requêtes et des notebooks dans l'environnement configuré en leur attribuant le rôle de développeur Dataplex ou les autorisations IAM associées.
Session
Lorsqu'un utilisateur autorisé choisit un environnement pour exécuter ses requêtes et ses notebooks, Dataplex utilise la configuration de l'environnement spécifiée pour créer une session active spécifique à l'utilisateur. Selon la configuration de l'environnement, si une session n'est pas utilisée, elle se termine automatiquement.
Le démarrage d'une nouvelle session par utilisateur prend quelques minutes. Une fois qu'une session commence, elle exécute les requêtes et les notebooks suivants pour le même utilisateur. Une session est active pendant un maximum de 10 heures.
Pour un environnement, Dataplex ne crée qu'une seule session par utilisateur, qui est partagée à la fois par les scripts Spark SQL et les notebooks Jupyter.
Dataplex utilise les identifiants utilisateur dans une session pour exécuter des opérations, telles que l'interrogation des données à partir de Cloud Storage et de BigQuery.
Nœud
Un nœud spécifie la capacité de calcul dans une configuration d'environnement. Un nœud correspond à quatre unités de calcul de données (DCU), ce qui équivaut à quatre vCPU et 16 Go de RAM.
Environnement par défaut
Vous pouvez créer un environnement par défaut par lac avec l'ID default
.
Un environnement par défaut doit utiliser une configuration par défaut. Une configuration par défaut se compose des éléments suivants:
- Capacité de calcul d'un nœud
- Taille du disque principal de 100 Go
- Arrêt automatique des sessions (heure d'arrêt automatique) défini sur 10 minutes d'inactivité
- Le paramètre
sessionSpec.enableFastStartup
, qui est défini par défaut surtrue
. Lorsque ce paramètre est défini surtrue
, Dataplex préprovisionne les sessions pour cet environnement afin qu'elles soient facilement disponibles, ce qui réduit le temps de démarrage initial de la session. - Une session de démarrage rapide est une session à nœud unique, facturée par Dataplex aux tarifs du SKU de traitement Premium, similaires à ceux d'une session standard. Une seule session toujours active est disponible pour un démarrage rapide, ce qui entraîne des coûts même lorsqu'elle n'est pas utilisée. Dataplex maintient cette session précréée pendant 10 heures, l'arrête, puis crée une nouvelle session.
Si vous ne sélectionnez pas explicitement d'environnement et si vous avez configuré un environnement par défaut au préalable, Dataplex utilise l'environnement par défaut pour créer des sessions.
Script SQL
Un script SQL est un script Spark SQL enregistré en tant que contenu dans un lac Dataplex. Vous pouvez enregistrer le script dans un lac et le partager avec d'autres principaux. Vous pouvez également planifier son exécution en tant que tâche Spark sans serveur par lot dans Dataplex. Dataplex permet un accès Spark SQL prêt à l'emploi aux tables qui mappent les données dans Cloud Storage et BigQuery.
Notebook
Un notebook Python 3 est un notebook Jupyter que vous enregistrez en tant que contenu dans un lac Dataplex. Vous pouvez enregistrer un notebook en tant que contenu dans un lac et le partager avec d'autres principaux, ou le planifier pour qu'il s'exécute en tant que job par lot Spark sans serveur Dataproc dans Dataplex.
Pour les données BigQuery, vous pouvez accéder aux tables BigQuery directement via Spark sans utiliser la commande magique %%bigquery
.
Avant de commencer
Avant de commencer, associez votre lac à Dataproc Metastore et accordez les rôles requis.
Associer votre lac à Dataproc Metastore (DPMS)
Pour utiliser Explorer, procédez comme suit:
- Associez une instance Dataproc Metastore (DPMS) compatible avec gRPC de la version 3.1.2 ou ultérieure au lac Dataplex.
- Assurez-vous de disposer d'un Dataproc Metastore et d'un environnement mappés à votre lac.
Découvrez comment configurer Dataproc Metastore avec Dataplex pour accéder aux métadonnées dans Spark.
Rôles requis
En fonction des actions que vous prévoyez d'effectuer, vous avez besoin de tous les rôles IAM suivants. Tous les environnements d'un lac héritent des autorisations accordées au niveau du lac.
- Lecteur Dataplex
- Développeur Dataplex
- Lecteur de métadonnées Dataplex
- Lecteur de données Dataplex
Rôles supplémentaires:
Journalisation
Pour comprendre l'utilisation d'Explorer, consultez les documents suivants:
Limitations connues
Cette section décrit les limites connues d'Explore.
Explorer est disponible pour les lacs dans les régions suivantes:
asia-northeast1
asia-southeast1
europe-west1
europe-west2
us-central1
us-east1
us-west1
Vous pouvez utiliser jusqu'à 10 environnements par région dans un projet. Pour en savoir plus sur l'augmentation de la limite de quota, consultez la page Utiliser des quotas.
Vous pouvez créer des environnements avec un maximum de 150 nœuds. La durée des sessions utilisateur individuelles est limitée à 10 heures.
Les scripts Spark SQL ne peuvent interroger que les données d'un lac de données donné. Si vous souhaitez interroger des données dans un autre lac, vous devez y accéder et sélectionner un environnement dans ce lac.
Une fois qu'un projet a été rétabli, Dataplex ne restaure pas les ressources de contenu, telles que les scripts SQL ou les notebooks. Faites preuve de prudence lorsque vous supprimez un projet contenant des ressources de contenu Explorer.
Lorsque vous planifiez un notebook, si l'environnement comporte des paquets personnalisés, vous ne pouvez le planifier qu'à l'aide de la gcloud CLI. Pour en savoir plus, consultez la section Planifier des notebooks avec des packages personnalisés.
Si vous supprimez un environnement avant de supprimer les scripts et les notebooks, vous ne pouvez pas accéder à la page "Explorer". Par conséquent, veillez à supprimer les scripts et les notebooks avant de supprimer un environnement dans Explorer.
Les sessions d'exploration ne sont pas compatibles avec les systèmes de fichiers distribués Hadoop (HDFS). Ne stockez aucune donnée utilisateur dans une session Exploration, car elle est supprimée à la fin de la session.
La taille maximale d'un notebook ou d'un script SQL est de 1 Mo.
Créez un environnement
Dans la console Google Cloud , accédez à la page Gérer les lacs de Dataplex.
Sélectionnez un lac Dataplex pour lequel vous souhaitez créer un environnement.
Cliquez sur l'onglet Environnements.
Cliquez sur Créer un environnement.
Dans le champ Nom à afficher, saisissez un nom pour votre environnement.
Dans le champ ID de l'environnement, saisissez un ID unique.
Facultatif: saisissez une description du nouvel environnement.
Dans le volet Configurer le calcul, spécifiez les éléments suivants:
- Nombre de nœuds: nombre de nœuds à provisionner pour les sessions utilisateur créées pour cet environnement.
- Nombre maximal de nœuds: nombre maximal de nœuds que Dataplex peut faire évoluer automatiquement dans les sessions utilisateur associées à cet environnement.
- Taille du disque principal: taille du disque associée à chaque nœud provisionné.
- Délai d'arrêt automatique: délai d'inactivité au bout duquel Dataplex arrête automatiquement les sessions utilisateur associées à cet environnement. Vous pouvez définir une durée minimale de 10 minutes et une durée maximale de 60 minutes.
Dans le volet Packages logiciels (facultatif), vous pouvez spécifier des packages Python, des fichiers JAR et des propriétés Spark supplémentaires à installer sur les sessions utilisateur provisionnées pour cet environnement.
Lorsque vous créez un environnement et fournissez le chemin d'accès Cloud Storage pour les fichiers JAR Java ou les packages Python, assurez-vous que l'agent de service Cloud Dataplex dispose des autorisations requises pour accéder aux fichiers Cloud Storage afin que Dataplex puisse installer les fichiers JAR ou les packages.
Cliquez sur Créer.
Remarques
Un nœud correspond à quatre unités de calcul de données (DCU), ce qui équivaut à quatre processeurs virtuels et 16 Go de RAM.
Vous pouvez créer un environnement avec un seul nœud ou avec trois nœuds ou plus.
Si vous êtes administrateur de lac, vous pouvez configurer des environnements à l'avance, ce qui permet aux utilisateurs d'exécuter leurs charges de travail à l'aide des configurations prédéfinies.
Bien que les environnements puissent être partagés avec plusieurs utilisateurs, Dataplex crée une session distincte par utilisateur à l'aide de la configuration de l'environnement.
Créer un environnement par défaut
Consultez les conditions requises de configuration pour un environnement par défaut.
Ouvrez Dataplex dans la console Google Cloud .
Accédez à la vue Gérer.
Sélectionnez un lac Dataplex.
Cliquez sur l'onglet Environnements.
Cliquez sur Créer un environnement par défaut.
Pour créer un environnement par défaut avec le démarrage rapide activé, exécutez la commande suivante:
gcloud dataplex environments create default --project=PROJECT_ID --lake=LAKE_ID --location=REGION --os-image-version=latest --session-enable-fast-startup
Explorer les données à l'aide de l'atelier Spark SQL
Pour explorer les données BigQuery et Cloud Storage, utilisez des scripts Spark SQL.
Créer et enregistrer un script
Dans la console Google Cloud , accédez à la page Explorer de Dataplex.
Dans la vue Explorer, sélectionnez le lac contenant les éléments de données que vous souhaitez explorer.
Dans le navigateur de ressources, développez le lac. Les dossiers suivants s'affichent:
- Données: contient toutes les bases de données et tables de l'instance DPMS connectée à votre lac, y compris les tables Hudi, Iceberg et Delta Lake.
- Notebooks (Carnets) : contient tous les carnets créés dans le lac sélectionné.
- Scripts Spark SQL: contient tous les scripts Spark SQL créés dans le lac sélectionné.
Développez Données, puis sélectionnez la base de données et la table requises.
Pour utiliser un exemple de requête, cliquez sur QUERY (REQUÊTE). L'atelier Spark SQL remplit automatiquement un nouvel onglet avec un exemple de requête.
Pour créer un script, dans l'éditeur SQL Spark, cliquez sur Nouveau script, puis saisissez vos requêtes.
Pour enregistrer le script, sélectionnez Enregistrer > Enregistrer le script.
Exécuter un script
Dans l'éditeur SQL Spark, cliquez sur l'onglet contenant la requête que vous souhaitez exécuter.
Cliquez sur Sélectionner un environnement. Sélectionnez l'environnement dans lequel vous souhaitez exécuter la requête. Si vous ne sélectionnez pas d'environnement, Dataplex utilise l'environnement par défaut pour créer une session par utilisateur.
Vous pouvez exécuter plusieurs requêtes Spark SQL dans le même script en les séparant par des points-virgules.
Cliquez sur Exécuter.
Affichez les résultats de l'historique des requêtes pour chacune des requêtes du script à l'aide de la liste déroulante.
Planifier un script
Vous pouvez planifier l'exécution d'un script en tant que tâche Dataplex. Pour en savoir plus, consultez Créer et gérer des planifications pour les scripts SQL.
Partager un script
Vous pouvez partager un script avec d'autres membres de l'organisation à l'aide des autorisations IAM:
Dans la vue Explorer, cliquez sur le script Spark SQL que vous souhaitez partager.
Dans le menu Plus, cliquez sur Partager.
Consultez les autorisations. Ajoutez ou supprimez des autorisations de niveau lecteur, éditeur ou administrateur pour le script partagé.
Une fois que vous avez partagé un script, les utilisateurs disposant d'autorisations de lecture ou de modification au niveau du lac peuvent accéder au lac et travailler sur le script partagé.
Explorer les données BigQuery et Cloud Storage à l'aide de Spark SQL
Pour tout ensemble de données BigQuery ajouté en tant qu'élément à une zone, Dataplex permet un accès direct Spark SQL à toutes les tables de cet ensemble de données. Vous pouvez interroger les données dans Dataplex à l'aide de scripts ou de notebooks Spark SQL. Exemple :
select * from ZONE_ID .TABLE_ID
Si vos composants sont mappés à des buckets Cloud Storage de la même zone, Dataplex fournit une liste unifiée des tables que vous pouvez interroger à l'aide de Spark.
Explorer des données à l'aide de notebooks
Cette section explique comment créer, planifier, partager, importer et exporter des notebooks.
Créer et enregistrer un notebook
Dans la console Google Cloud , accédez à la page Explorer de Dataplex.
Dans la vue Explorer, sélectionnez un lac.
Développez le lac, puis cliquez sur le dossier Notebooks.
Cliquez sur Nouveau notebook.
Dans le champ Chemin d'accès au notebook, indiquez le nom du notebook.
Facultatif: Dans le champ Description, fournissez une description du nouveau bloc-notes.
(Facultatif) Ajoutez des libellés.
Cliquez sur Créer un notebook. Un notebook est maintenant créé.
Pour ouvrir le notebook créé, cliquez sur Ouvrir le notebook.
Sélectionnez un environnement dans lequel vous souhaitez que Dataplex crée une session utilisateur lorsque vous créez ou ouvrez votre notebook. Assurez-vous de sélectionner un environnement avec des packages de confiance.
Si vous ne sélectionnez pas d'environnement, Dataplex utilise l'environnement par défaut. Si vous n'avez pas d'environnement, créez-en un. Pour en savoir plus, consultez Créer un environnement.
Vous pouvez maintenant explorer vos données en écrivant du code Python et en enregistrant le notebook après l'exploration. Vous pourrez ensuite prévisualiser le notebook créé et examiner sa sortie sans créer de session ni exécuter le code.
Programmer un notebook
Vous pouvez planifier l'exécution d'un notebook en tant que tâche Dataplex. Pour en savoir plus, consultez Créer et gérer des planifications pour des notebooks.
Partager un notebook
Vous pouvez partager un notebook avec d'autres membres de l'organisation à l'aide d'autorisations IAM:
Dans la vue Explorer, cliquez sur le dossier Notebooks.
Sélectionnez le notebook Jupyter que vous souhaitez partager.
Cliquez sur Partager,
Consultez les autorisations. Ajoutez ou supprimez des autorisations de niveau lecteur, éditeur ou administrateur pour ce notebook.
Une fois que vous avez partagé un notebook, les utilisateurs disposant d'autorisations de consultation ou de modification au niveau du lac peuvent y accéder et travailler sur le notebook partagé.
Importer un notebook
Vous pouvez importer un notebook à partir d'un bucket Cloud Storage:
Dans la vue Explorer, cliquez sur le dossier Notebooks.
Cliquez sur Importer.
Accédez au bucket Cloud Storage contenant le notebook que vous souhaitez importer.
Sélectionnez le notebook, attribuez-lui un nom, puis cliquez sur Importer.
Le notebook importé est créé dans le dossier Notebooks (Carnets). Vous pouvez ouvrir, modifier, partager et planifier le notebook importé.
Exporter un notebook
Vous pouvez exporter un notebook vers un bucket Cloud Storage afin qu'il puisse être utilisé par d'autres membres de l'organisation disposant d'autorisations IAM.
Dans la vue Explorer, cliquez sur le dossier Notebooks.
Cochez le notebook que vous souhaitez exporter.
Cliquez sur le menu
, puis sur Exporter.Saisissez le chemin d'accès Cloud Storage vers lequel vous souhaitez exporter le notebook.
Cliquez sur Exporter le notebook.
Étape suivante
- Reportez-vous à la documentation de référence de l'API pour la ressource Task.
- Gérez vos environnements.
- Découvrir des données
- Planifiez des scripts et des notebooks SQL.
- Gérer les métadonnées