Présentation de Serverless pour Apache Spark

Serverless pour Apache Spark vous permet d'exécuter des charges de travail Spark sans avoir à provisionner ni gérer votre propre cluster Dataproc. Il existe deux façons d'exécuter des charges de travail Serverless pour Apache Spark :

Charges de travail par lot

Envoyez une charge de travail par lot au service Serverless pour Apache Spark à l'aide de la consoleGoogle Cloud , du Google Cloud CLI ou de l'API Dataproc. Le service exécute la charge de travail sur une infrastructure de calcul gérée en effectuant un autoscaling des ressources selon les besoins. Les frais Serverless pour Apache Spark ne s'appliquent qu'au moment où la charge de travail est exécutée.

Pour commencer, consultez Exécuter une charge de travail par lot Apache Spark.

Sessions interactives

Écrivez et exécutez du code dans des notebooks Jupyter lors d'une session interactive Serverless pour Apache Spark. Vous pouvez créer une session de notebook de différentes manières :

  • Exécuter du code PySpark dans les notebooks BigQuery Studio Utilisez le notebook Python BigQuery pour créer une session interactive Spark Connect Serverless pour Apache Spark. Chaque notebook BigQuery ne peut être associé qu'à une seule session Apache Spark sans serveur active.

  • Utilisez le plug-in Dataproc JupyterLab pour créer plusieurs sessions de notebook Jupyter à partir de modèles que vous créez et gérez. Lorsque vous installez le plug-in sur une machine locale ou une VM Compute Engine, différentes fiches correspondant à différentes configurations du noyau Spark s'affichent sur la page du lanceur JupyterLab. Cliquez sur une fiche pour créer une session de notebook Serverless pour Apache Spark, puis commencez à écrire et à tester votre code dans le notebook.

    Le plug-in Dataproc JupyterLab vous permet également d'utiliser la page de lancement JupyterLab pour effectuer les actions suivantes :

    • Créez des clusters Dataproc sur Compute Engine.
    • Envoyez des tâches à des clusters Dataproc sur Compute Engine.
    • Affichez les journaux Google Cloud et Spark.

Comparaison entre Serverless pour Apache Spark et Dataproc sur Compute Engine

Si vous souhaitez provisionner et gérer l'infrastructure, puis exécuter des charges de travail sur Spark et d'autres frameworks de traitement Open Source, utilisez Dataproc sur Compute Engine. Le tableau suivant répertorie les principales différences entre Dataproc sur Compute Engine et Serverless pour Apache Spark.

Capacité Serverless pour Apache Spark Dataproc sur Compute Engine
Frameworks de traitement Charges de travail par lot : Spark 3.5 et versions antérieures
Sessions interactives : Spark 3.5 et versions antérieures
Spark 3.5 et versions antérieures D'autres frameworks Open Source, tels que Hive, Flink, Trino et Kafka
Sans serveur Oui Non
Temps de démarrage 60 s Années 90
Contrôle de l'infrastructure Non Oui
Gestion des ressources Basé sur Spark Basé sur YARN
Compatibilité avec les GPU Oui Oui
Sessions interactives Oui Non
Conteneurs personnalisés Oui Non
Accès aux VM (par exemple, SSH) Non Oui
Versions Java Java 17, 11 Versions précédentes compatibles

Conformité de la sécurité

Serverless pour Apache Spark respecte toutes les exigences de résidence des données, de CMEK, de VPC-SC et autres exigences de sécurité auxquelles Dataproc est conforme.

Fonctionnalités des charges de travail par lot

Vous pouvez exécuter les types de charges de travail par lot Serverless pour Apache Spark suivants :

  • PySpark
  • Spark SQL
  • Spark R
  • Spark (Java ou Scala)

Vous pouvez spécifier des propriétés Spark lorsque vous envoyez une charge de travail par lot Serverless pour Apache Spark.