Exécuter les charges de travail Apache Spark™ sur Snowflake avec Snowpark Connect for Spark¶
Avec Snowpark Connect for Apache Spark™, vous pouvez connecter vos charges de travail Spark existantes directement à Snowflake et les exécuter sur le moteur de calcul Snowflake. Snowpark Connect for Spark prend en charge l’utilisation de l”API DataFrame Spark sur Snowflake. Toutes les charges de travail s’exécutent sur l’entrepôt Snowflake. Ainsi, vous pouvez exécuter votre code de dataframe PySpark avec tous les avantages du moteur Snowflake.
Dans Apache Spark™ version 3.4, la communauté Apache Spark propose Spark Connect. Son architecture client-serveur découplée sépare le code de l’utilisateur du cluster Spark où le travail est effectué. Cette nouvelle architecture permet à Snowflake d’alimenter des tâches Spark.
Vous pouvez développer à l’aide d’outils clients qui vous sont familiers.
Snowpark Connect for Spark offre les avantages suivants :
Découple le client et le serveur, de sorte que le code Spark puisse s’exécuter à distance sur le moteur de calcul Snowflake sans que vous ayez besoin de gérer un cluster Spark.
Permet aux équipes d’utiliser leur écosystème existant pour créer et orchestrer leurs charges de travail Spark, par exemple, Jupyter Notebooks, VS Code et Airflow.
Permet de réutiliser les dataframes Spark open source et le code SQL Spark avec des migrations ou des changements minimes.
Offre un moyen rationalisé d’intégrer la gouvernance, la sécurité et l’évolutivité Snowflake dans les workflows basés sur Spark, en prenant en charge une expérience PySpark familière avec les optimisations pushdown dans Snowflake.
Permet d’utiliser plusieurs langages, y compris PySpark et SQL Spark.
Premiers pas avec Snowpark Connect for Spark¶
Pour commencer avec Snowpark Connect for Spark, procédez comme suit :
Configurez l’outil client que vous utiliserez pour développer des charges de travail Spark à exécuter sur Snowflake.
Par exemple, vous pouvez utiliser Snowflake Notebooks ou un autre outil.
Exécutez des charges de travail Spark de manière asynchrone à l’aide de Snowpark Submit.
Pour plus d’informations, voir Soumission d’applications Spark.
Découvrez la prise en charge Snowpark Connect for Spark des spécificités Spark.
Pour plus d’informations, voir Guide de compatibilité Snowpark Connect for Spark.
Développer et exécuter des charges de travail Spark sur Snowflake¶
Vous pouvez utiliser les outils de développement familiers pour développer des charges de travail Spark qui s’exécutent sur Snowflake, puis exécuter ces charges de travail par lots en utilisant l’outil de ligne de commande Snowpark Submit. Pour plus d’informations sur les clients de développement pris en charge et sur la manière de les utiliser, voir Clients de développement pour Snowpark Connect for Spark.
Pour le développement interactif, utilisez des outils comme Snowflake Notebooks ou VS Code pour développer des charges de travail Spark. Vous pouvez vous authentifier auprès de Snowflake, démarrer une session Spark et exécuter le code PySpark pour charger, transformer et analyser des données. Pour plus d’informations, voir Clients de développement pour Snowpark Connect for Spark.
Pour les charges de travail par lots non interactives, vous pouvez exécuter des tâches Spark asynchrones directement sur l’infrastructure Snowflake tout en utilisant la syntaxe Spark qui vous est familière. Utilisez Snowpark Submit pour soumettre des applications Spark prêtes à l’emploi à l’aide d’une interface CLI simple et de vos outils, notamment Airflow. Pour plus d’informations, voir Soumission d’applications Spark.