Migrer l'exploration Dataplex vers BigQuery Studio

Dataplex ne sera plus compatible avec Explorer. Ce document décrit les étapes de migration des ressources d'exploration Dataplex vers BigQuery Studio. Vous pouvez migrer votre notebook Spark SQL et JupyterLab du contenu à BigQuery Studio, une solution unifiée d'exploration des données Google Cloud.

Fonctionnalités abandonnées

Pour toute question ou clarification, contactez l'équipe Explore à l'adresse dataplex-explore-support@google.com.

Avant de commencer

  • Enable the BigQuery and BigQuery Studio APIs.

    Enable the APIs

Contenu du notebook

Si vous avez des notebooks dans Explorer qui sont exécutés dans une instance Jupyterlab de manière sans serveur, vous aurez la même expérience dans BigQuery Studio après la migration.

BigQuery Studio offre une interface de notebook fourni par Colab Enterprise, qui offre plusieurs avantages par rapport à Notebooks JupyterLab. Vous pouvez toujours écrire, enregistrer et exécuter vos notebooks en mode sans serveur dans BigQuery Studio. Vous pouvez également bénéficier de l'environnement cloud intégré Colab Enterprise avec des GPU et des TPU puissants, la collaboration, le partage et le contrôle des accès en temps réel Google Drive, enregistrement automatique, bibliothèques préinstallées, utilisation sans frais avec des widgets et des extensions intégrés, ainsi que l'intégration à d'autres tels que BigQuery et Cloud Storage.

Contenu Spark SQL

La découverte Dataplex enregistre les tables découvertes dans BigQuery et Dataproc Metastore. Selon l'emplacement de tables sont enregistrées, utilisez l'une des options de migration suivantes.

  • Les tables sont enregistrées à la fois dans Dataproc Metastore et BigQuery : si le script SQL Spark interagit avec les tables découvertes par Dataplex via Dataproc Metastore, vous pouvez interroger directement ces tables depuis BigQuery.
  • Les tables ne sont enregistrées que dans Dataproc Metastore : si le script Spark SQL interagit avec des tables non disponibles dans BigQuery, vous devez configurer l'intégration de BigQuery Studio avec Dataproc Metastore. Dataproc Metastore fournit deux types de points de terminaison : Thrift et gRPC. Pour savoir comment trouver le protocole du point de terminaison, consultez la section Trouver la valeur de l'URI de votre point de terminaison. Configurez ensuite l'intégration de BigQuery Studio en suivant les étapes ci-dessous .

Se connecter à un Dataproc Metastore basé sur Thrift

Un point de terminaison basé sur Thrift commence par thrift://. Pour vous connecter à un Dataproc Metastore basé sur Thrift, transmettez l'URI du point de terminaison Thrift dans la configuration SparkSession, comme dans l'exemple suivant :

from pyspark.sql import SparkSession

spark = (
    SparkSession.builder.appName("Dataproc Metastore Connection")
    .config(
        "spark.hadoop.hive.metastore.uris",
        "thrift://IP_ADDRESS:9083",
    )
    .enableHiveSupport()
    .getOrCreate()
)

Se connecter à un point de terminaison basé sur gRPC

Un point de terminaison basé sur gRPC commence par https://. Spark ne peut pas se connecter à une ressource non-Thrift des points de terminaison basés sur les données. Vous devez plutôt exécuter un service proxy qui convertit les requêtes Thrift en gRPC. Pour vous connecter à un service Dataproc Metastore basé sur gRPC, procédez comme suit dans votre notebook BigQuery Studio :

  1. Téléchargez la dernière version du fichier JAR du proxy Hive (HMS) dans le fichier l'environnement d'exécution du notebook en exécutant la commande suivante:

    # Download the latest HMS Proxy jar file.
    !gcloud storage cp gs://metastore-init-actions/metastore-grpc-proxy/hms-proxy-3.1.2-v0.0.46.jar
    
  2. Démarrez le proxy HMS.

    %%bash
    # Metastore store URI including the port number but without "https://" prefix.
    METASTORE_URI=METASTORE_URI
    # HMS Proxy JAR path.
    JAR_PATH=JAR_PATH
    # DPMS Supported Hive Version.
    HIVE_VERSION=3.1.2
    
    # Start the HMS Proxy.
    java -jar ${JAR_PATH} --conf proxy.mode=thrift proxy.uri=${METASTORE_URI} thrift.listening.port=9083 hive.version=${HIVE_VERSION} google.credentials.applicationdefault.enabled=true proxy.grpc.ssl.upstream.enabled=true > /tmp/hms.logs 2>&1 &
    
  3. Connectez la session Spark à un proxy HMS local.

    from pyspark.sql import SparkSession
    
    spark = (
      SparkSession.builder.appName("Dataproc Metastore Connection")
      .config(
          "spark.hadoop.hive.metastore.uris",
          "thrift://localhost:9083",
      )
      .enableHiveSupport()
      .getOrCreate()
    )
    

Ressources de la session

Une ressource de session fait référence à une session active spécifique à l'utilisateur. La migration des ressources de session n'est pas prise en charge.

Ressources de l'environnement

Un environnement fournit des ressources de calcul sans serveur pour vos requêtes Spark SQL et les notebooks à exécuter dans un lac. Étant donné que BigQuery Studio fournit un environnement sans serveur pour exécuter des requêtes SQL et des notebooks, la migration des ressources de l'environnement n'est pas prise en charge.

Planifier une tâche avec des ressources de contenu

Vous pouvez planifier des requêtes dans BigQuery Studio.