Exécuter des charges de travail Spark à partir de Snowflake Notebooks¶
Vous pouvez exécuter des charges de travail Spark de manière interactive à partir de Snowflake Notebooks sans avoir besoin de gérer un cluster Spark. Les charges de travail s’exécutent sur l’infrastructure Snowflake.
Pour utiliser Snowflake Notebooks en tant que client afin de développer des charges de travail Spark à exécuter sur Snowflake :
Lancez Snowflake Notebooks
Dans le notebook, démarrez une session Spark.
Écrivez le code PySpark pour charger, transformer et analyser des données, par exemple pour filtrer les commandes client à forte valeur ajoutée ou agréger les revenus.
Utiliser un notebook Snowflake qui fonctionne sur un entrepôt¶
Pour plus d’informations sur Snowflake Notebooks, voir Créer un notebook.
Créez un notebook Snowflake en procédant comme suit :
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez + Create » Notebook » New Notebook.
Dans la boîte de dialogue Create notebook, saisissez un nom, une base de données et un schéma pour le nouveau notebook.
Pour plus d’informations, voir Créer un notebook.
Pour Runtime, sélectionnez Run on warehouse.
Pour Runtime version, sélectionnez Snowflake Warehouse Runtime 2.0.
Lorsque vous sélectionnez la version 2.0, vous vous assurez que vous disposez de la prise en charge des dépendances dont vous avez besoin, y compris Python 3.10. Pour plus d’informations, voir Exécutions des notebooks.
Pour Query warehouse et Notebook warehouse, sélectionnez des entrepôts pour l’exécution du code de requête, du noyau et du code Python, comme décrit dans Créer un notebook.
Sélectionnez Create.
Dans le notebook que vous avez créé, sous Packages, assurez-vous d’avoir les paquets suivants répertoriés pour prendre en charge le code dans votre notebook :
Python version 3.10 ou ultérieure.
snowflake-dataframe-processor, dernière version
Si vous devez ajouter ces paquets, procédez comme suit :
Sous Anaconda Packages, saisissez le nom du paquet dans le champ de recherche.
Sélectionnez le nom du paquet.
Sélectionnez Save.
Pour vous connecter au serveur Snowpark Connect for Spark et tester la connexion, copiez le code suivant et collez-le dans la cellule Python du notebook que vous avez créé :
# Set up the env for Java libraries and enable the Spark Connect Mode import os os.environ['JAVA_HOME'] = os.environ["CONDA_PREFIX"] os.environ['JAVA_LD_LIBRARY_PATH'] = os.path.join(os.environ["CONDA_PREFIX"], 'lib', 'server') os.environ["SPARK_LOCAL_HOSTNAME"] = "127.0.0.1" os.environ["SPARK_CONNECT_MODE_ENABLED"] = "1" from snowflake import snowpark_connect from snowflake.snowpark.context import get_active_session import traceback session = get_active_session() snowpark_connect.start_session(snowpark_session = session)
Pour ajouter une nouvelle cellule pour le code Python, survolez la cellule qui contient le code que vous venez de coller, puis sélectionnez + Python.
Pour exécuter le code qui utilise Snowpark Connect for Spark, copiez le code suivant, puis collez-le dans la nouvelle cellule Python que vous avez ajoutée.
# Here is your normal pyspark code. You can of course have them in other Python Cells spark = snowpark_connect.get_session() df = spark.sql("show schemas").limit(10) df.show()