À propos de Snowflake Notebooks

Snowflake Notebooks est une interface de développement unifiée dans l”Snowsight qui offre un environnement de programmation interactif, basé sur des cellules, pour Python, SQL et Markdown. Dans Notebooks, vous pouvez exploiter vos données Snowflake pour effectuer des analyses de données exploratoires, développer des modèles de machine learning et exécuter d’autres workflows de science et d’ingénierie des données, le tout dans la même interface.

  • Explorez et expérimentez les données déjà présentes dans Snowflake, ou chargez de nouvelles données dans Snowflake à partir de fichiers locaux, d’un stockage cloud externe ou d’ensembles de données provenant de Snowflake Marketplace.

  • Écrivez du code SQL ou Python et comparez rapidement les résultats avec le développement et l’exécution cellule par cellule.

  • Visualisez vos données de manière interactive à l’aide de visualisations Streamlit intégrées et d’autres bibliothèques comme Altair, Matplotlib ou seaborn.

  • Intégrez Git pour collaborer avec un outil de contrôle des versions efficace. Voir Synchroniser les notebooks avec un référentiel Git.

  • Contextualisez les résultats et prenez des notes sur les différents résultats à l’aide de cellules et de graphiques Markdown.

  • Exécutez votre notebook selon une planification pour automatiser les pipelines. Voir Planifier des exécutions de notebooks.

  • Utilisez le contrôle d’accès basé sur les rôles et les autres fonctionnalités de gouvernance des données disponibles dans Snowflake pour permettre à d’autres utilisateurs ayant le même rôle de voir le notebook et de collaborer dessus.

  • Créez un notebook privé stocké dans votre base de données personnelle, dans lequel vous pouvez développer du code de manière interactive et expérimenter avec des données de production. Voir Notebooks privés.

Un exemple de notebook dans Snowsight UI

Exécutions des notebooks

Snowflake Notebooks offre deux environnements d’exécution distincts, chacun conçu pour des charges de travail spécifiques : Warehouse Runtime et Container Runtime. Notebooks utilise les ressources de calcul des entrepôts virtuels (pour Warehouse Runtime) ou des pools de calcul de Snowpark Container Services (pour Container Runtime) pour exécuter votre code. Pour les deux environnements d’exécution, les requêtes SQL et Snowpark sont toujours poussées vers le bas pour être exécutées sur l’entrepôt afin d’optimiser les performances.

Warehouse Runtime offre le moyen le plus rapide de démarrer, avec un environnement d’entrepôt familier et généralement disponible. Container Runtime fournit un environnement plus flexible qui peut prendre en charge de nombreux types de charges de travail différents, notamment les analyses SQL et l’ingénierie des données. Vous pouvez installer des paquets Python supplémentaires si Container Runtime n’inclut pas ce dont vous avez besoin par défaut. L’environnement d’exécution du conteneur existe également en versions CPU et GPU qui disposent de nombreux paquets ML populaires préinstallés, ce qui les rend idéales pour les charges de travail ML et d’apprentissage en profondeur.

Le tableau suivant présente les fonctionnalités prises en charge pour chaque type de runtime. Vous pouvez utiliser ce tableau pour vous aider à décider quel runtime est le mieux adapté à votre cas d’utilisation.

Fonctionnalités prises en charge

Runtime d’entrepôt

Container Runtime

Calcul

Le noyau fonctionne sur l’entrepôt du notebook.

Le noyau s’exécute sur un nœud du pool de calcul.

Environnement

Python 3.9

Python 3.10

Image de base

Streamlit + Snowpark

Snowflake Container Runtime (images CPU et GPU pré-installées avec les bibliothèques Python).

Bibliothèques Python supplémentaires

Installation via Snowflake Anaconda ou à partir d’une zone de préparation Snowflake.

Installez en utilisant pip ou conda, ou à partir d’une zone de préparation Snowflake. | Si nécessaire, spécifiez une version particulière du paquet.

Assistance à l’édition

Cellules Python, SQL et Markdown. | Reference outputs from SQL cells in Python cells and vice versa. | Utilisez des bibliothèques de visualisation comme Streamlit.

Identique à l’entrepôt

Accès

Rôle de propriétaire requis pour pouvoir accéder aux notebooks et les modifier.

Identique à l’entrepôt

Fonctions prises en charge par les notebooks (encore en avant-première)

Intégration Git (aperçu) | Planification (aperçu)

Identique à l’entrepôt

Pour plus de détails sur la création, l’exécution et la gestion des notebooks sur Container Runtime, voir Notebooks sur Container Runtime pour ML.

Découvrez les Notebooks

La barre d’outils Snowflake Notebooks présente les commandes utilisées pour gérer le notebook et ajuster les paramètres d’affichage des cellules.

Contrôle

Description

../../_images/ui-notebooks-packages.png

Package selector : sélectionner et installer les paquets à utiliser dans le notebook. Voir Importer des paquets Python à utiliser dans les notebooks.

../../_images/ui-notebooks-start.png

Start : Démarrer la session Notebooks. Au démarrage de la session, l’image devient Active.

../../_images/ui-notebooks-active.png

Active : survolez le bouton pour voir en temps réel les détails de la session et les mesures de consommation des ressources agrégées (les mesures d’utilisation de la mémoire et des CPU/GPU sont affichées pour les notebooks Container Runtime). Sélectionnez la flèche vers le bas pour accéder aux options permettant de redémarrer ou de terminer la session. Sélectionnez Active pour mettre fin à la session en cours.

../../_images/ui-notebooks-run-all.png

Run All/Stop : Exécuter toutes les cellules ou arrêter l’exécution des cellules. Voir Exécuter des cellules dans Snowflake Notebooks.

../../_images/ui-notebooks-scheduler.png

Scheduler : Définir une planification pour exécuter votre notebook en tant que tâche à l’avenir. Voir Planifier des exécutions de notebooks.

../../_images/ui-notebooks-ellipsis.png

Vertical ellipsis menu : Personnaliser les paramètres du notebook, effacer les sorties de cellules, dupliquer, exporter ou supprimer le notebook.

Réduire les cellules dans un notebook

Vous pouvez réduire le code dans une cellule pour ne voir que la sortie. Par exemple, réduisez une cellule Python pour n’afficher que les visualisations produites par votre code, ou réduisez une cellule SQL pour n’afficher que la table des résultats.

  • Pour modifier ce qui est visible, sélectionnez Collapse results.

    Le menu déroulant propose des options pour réduire des parties spécifiques de la cellule.

    Réduisez ou développez la cellule.