Configuration commune pour les tutoriels sur les APIs Snowflake Python¶
Introduction¶
Cette rubrique fournit des instructions pour la configuration commune requise pour tous les tutoriels Snowflake Python APIs fournis dans cette documentation.
Aperçu de Snowflake Python APIs¶
Avant de commencer votre configuration, jetez un œil à la structure de Snowflake Python APIs. Le tableau suivant répertorie certains modules courants dans l’API :
Module |
Description |
---|---|
|
Définit un itérateur pour représenter certaines instances de ressources extraites de la base de données de Snowflake. |
|
Gère les bases de données de Snowflake. |
|
Gère les schémas de Snowflake. |
|
Gère les tables de Snowflake. |
|
Gère les tâches de Snowflake. |
|
Un ensemble d’APIs à un niveau supérieur aux APIs de la tâche dans |
|
Gère les pools de calcul dans Snowpark Container Services. |
|
Gère les référentiels d’images dans Snowpark Container Services. |
|
Gère les services dans Snowpark Container Services. |
Pour une liste complète des APIs actuellement disponible, voir la documentation de référence d’API.
Le module snowflake.core
représente le point d’entrée du noyau Snowflake Python APIs qui gère les objets Snowflake. Pour utiliser l’API, vous suivez un modèle commun :
Établissez une session à l’aide de Snowpark ou d’une connexion Python Connector, représentant votre connexion à Snowflake.
Importez et instanciez la
Root
classe depuissnowflake.core
et transmettez l’objet de session Snowpark comme argument.Vous utilisez le résultat obtenu
Root
pour accéder au reste des méthodes et des types dans l’API.
Le code suivant est un exemple de ce à quoi ressemble généralement ce modèle :
from snowflake.snowpark import Session
from snowflake.core import Root
session = Session.builder.configs(connection_params).create()
root = Root(session)
Pour plus d’informations sur les différentes options de connexion et attributs, voir Connexion à Snowflake avec Snowflake Python APIs.
Note
Le Snowflake Python APIs peut établir une connexion à Snowflake en utilisant soit une session Snowpark, soit une connexion Python Connector. L’exemple précédent utilise une session Snowpark.
Passez à l’étape suivante pour commencer à configurer l’API et votre environnement de développement !
Installer le Snowflake Python APIs¶
Important
Snowflake Python APIs prend actuellement en charge les versions suivantes de Python :
3,9
3,10
3,11
3,12
Avant d’installer l’API, vous devez activer un environnement Python.
Dans ce tutoriel, vous pouvez utiliser conda ou un environnement virtuel (venv).
Pour créer et activer un conda ou un environnement virtuel, ouvrez un terminal de ligne de commande et exécutez les commandes suivantes :
conda create -n <env_name> python==3.10 conda activate <env_name>
python3 -m venv '.venv' source '.venv/bin/activate'
Le paquet Snowflake Python APIs est disponible dans PyPI.
Pour installer le paquet d’API dans le nouveau conda ou environnement virtuel, exécutez la commande suivante :
pip install snowflake -U
Configurez votre environnement de développement¶
Ce tutoriel présente des exemples de code que vous pouvez exécuter dans un notebook Jupyter. Chaque étape du tutoriel présente progressivement les capacités de Snowflake Python APIs.
Vous commencez par configurer votre environnement de développement afin de pouvoir exécuter les exemples de code dans un notebook.
Créez un fichier nommé
$HOME/.snowflake/connections.toml
avec les paramètres de connexion suivants et mettez-le à jour avec vos véritables identifiants de connexion :[default] account = "<YOUR ACCOUNT NAME>" user = "<YOUR ACCOUNT USER>" password = "<YOUR ACCOUNT USER PASSWORD>" # optional # warehouse = "<YOUR COMPUTE WH>" # optional # database = "<YOUR DATABASE>" # optional # schema = "<YOUR SCHEMA>"
Note
Le paramètre
account
ne prebd pas en charge les identificateurs de compte avec des traits de soulignement. Vous devez spécifier un identificateur de compte avec des tirets à la place des traits de soulignement. Pour plus d’informations, voir Nom du compte dans votre organisation.Cet exemple spécifie ces paramètres comme connexion par défaut à Snowflake dans votre environnement en créant une définition de connexion nommée
default
.Utilisez l’une des méthodes suivantes pour ouvrir un notebook :
Ouvrez un nouveau Notebook dans un éditeur de code prenant en charge les Notebooks Jupyter (tel que Visual Studio Code).
Pour ouvrir un notebook dans votre navigateur, démarrez un serveur de notebook avec la commande
jupyter notebook
.Pour vous assurer que votre environnement peut exécuter un notebook, exécutez
conda install notebook
dans votre terminal avant de démarrer le serveur de notebook.
Dans la première cellule du notebook, exécutez les instructions d’importation suivantes :
from datetime import timedelta from snowflake.snowpark import Session from snowflake.snowpark.functions import col from snowflake.core import Root, CreateMode from snowflake.core.database import Database from snowflake.core.schema import Schema from snowflake.core.stage import Stage from snowflake.core.table import Table, TableColumn, PrimaryKey from snowflake.core.task import StoredProcedureCall, Task from snowflake.core.task.dagv1 import DAGOperation, DAG, DAGTask from snowflake.core.warehouse import Warehouse
Note
Après avoir exécuté cette cellule, vous serez peut-être invité à définir votre noyau Python. Si vous avez activé un environnement conda, sélectionnez conda comme noyau Python (par exemple, quelque chose de similaire à :
~/miniconda3/envs/<votre env conda>/bin/python
).Dans cette cellule, vous importez Snowpark et les APIs du noyau qui gèrent les objets Snowflake.
Dans la cellule suivante, exécutez le code suivant :
connection_params = { "connection_name": "default" }
Dans cette cellule, vous définissez les paramètres de connexion Snowflake pour votre session en créant un dictionnaire
connection_params
spécifiant la définition de connexion nomméedefault
que vous avez précédemment configurée.Pour établir une connexion à Snowflake, créez une session Snowpark et transmettez
connection_params
comme argument :session = Session.builder.configs(connection_params).create()
Pour créer un objet
Root
, transmettez votre objetsession
au constructeurRoot
:root = Root(session)
Et c’est tout ! En exécutant le code dans ces quatre cellules, vous êtes maintenant prêt à utiliser Snowflake Python APIs.
Quelle est la prochaine étape ?¶
Vous pouvez maintenant explorer Tutoriel 1 : Créer une base de données, un schéma, une table et un entrepôt.