Snowflake Python APIs : gestion des objets Snowflake avec Python¶
Le paquet Snowflake Python APIs est une bibliothĂšque unifiĂ©e qui relie de maniĂšre transparente Python aux charges de travail Snowflake. Elle est destinĂ©e Ă fournir des APIs complĂštes pour interagir avec les ressources centrales de Snowflake Ă travers lâingĂ©nierie des donnĂ©es, Snowpark, Snowpark ML et les charges de travail dâapplication Ă lâaide dâune API Python de premiĂšre classe.
Vous pouvez utiliser Snowflake Python APIs pour gérer les ressources Snowflake en les créant, en les supprimant ou en les modifiant, et bien plus encore. Vous pouvez utiliser Python pour effectuer des tùches que vous pourriez sinon réaliser via les commandes SQL Snowflake.
Pour en savoir plus sur lâAPI, y compris ses concepts gĂ©nĂ©raux et ses modĂšles de conception, voir Snowflake Python APIs : concepts gĂ©nĂ©raux.
Objets de ressources Snowflake pris en charge¶
Note
La documentation de rĂ©fĂ©rence dâAPI prend en compte la derniĂšre version de Snowflake Python APIs. Notez que toutes les ressources dans lâAPI nâoffrent actuellement pas de couverture Ă 100 % de leurs commandes SQL Ă©quivalentes, mais les APIs Python sont en cours de dĂ©veloppement actif et sont en constante expansion.
Avec Snowflake Python APIs, vous pouvez actuellement gérer les objets de ressource Snowflake suivant :
AI et ML
LâĂ©cosystĂšme Python dans Snowflake¶
LâSnowflake Python APIs, lâAPI Snowpark pour Python, et le Snowflake Connector pour Python sont des interfaces qui ont chacune des objectifs distincts dans Snowflake. Cette section explique leurs diffĂ©rences et dĂ©crit les cas dâutilisation typiques de chacune dâentre elles.
- Snowflake Python APIs
Vous pouvez utiliser cet ensemble dâAPIs Python de premiĂšre classe pour dĂ©finir et gĂ©rer les ressources de base (telles que les tables, les entrepĂŽts et les tĂąches) dans les charges de travail Snowflake. Contrairement au connecteur Python, ces APIs interagissent avec Snowflake en utilisant le langage Python natif, sans quâil soit nĂ©cessaire dâutiliser SQL.
Le paquet Snowflake Python APIs unifie toutes les bibliothĂšques Python de Snowflake (y compris
connector
,core
,snowpark
, etml
) de sorte que vous pouvez simplement démarrer avec la commandepip install snowflake
.Suivant lâapproche de la programmation dĂ©clarative, cette API peut ĂȘtre utilisĂ©e comme un outil DevOps pour gĂ©rer les modifications de vos ressources et automatiser le dĂ©ploiement du code et de lâinfrastructure dans Snowflake.
- Snowpark
Cet ensemble de bibliothĂšques et dâenvironnements dâexĂ©cution de code permet dâexĂ©cuter Python et dâautres langages de programmation Ă cĂŽtĂ© de vos donnĂ©es dans Snowflake.
BibliothĂšques : avec API Snowpark, vous pouvez utiliser des DataFrames Snowpark dans votre code pour effectuer des requĂȘtes et transformer des donnĂ©es de A Ă Z dans Snowflake. Les applications Snowpark traitent vos donnĂ©es Ă lâĂ©chelle directement sur le moteur Snowflake sans dĂ©placer les donnĂ©es vers le systĂšme oĂč sâexĂ©cute le code de votre application.
LâAPI Snowpark est disponible en Python, Java et Scala.
Environnements dâexĂ©cution du code : les environnements dâexĂ©cution Snowpark prennent en charge les images de conteneurs et le code Python, Java et Scala.
Vous pouvez exĂ©cuter du code Python personnalisĂ© par le biais de fonctions dĂ©finies par lâutilisateur Python (UDFs) ou de procĂ©dures stockĂ©es pour construire des pipelines de donnĂ©es, des applis et bien plus encore. Les environnements dâexĂ©cution Python ont accĂšs Ă un rĂ©fĂ©rentiel de paquets et Ă un gestionnaire de paquets dâAnaconda.
Des environnements dâexĂ©cution sont Ă©galement disponibles en Scala et en Java.
Vous pouvez exécuter des applications conteneurisées directement dans Snowflake en utilisant Snowpark Container Services.
- Connecteur Snowflake pour Python
Utilisez ce pilote SQL pour vous connecter Ă Snowflake, exĂ©cuter les instructions SQL, puis obtenir les rĂ©sultats Ă lâaide dâun client Python.
Avec le connecteur Python, vous Ă©crivez toutes vos interactions avec Snowflake en utilisant des chaĂźnes dâinstructions SQL.
Premiers pas avec Snowflake Python APIs¶
Pour commencer Ă utiliser Snowflake Python APIs, reportez-vous aux instructions des rubriques suivantes :
Pour des tutoriels sur la mise en route de Snowflake Python APIs, voir Tutoriels : premiers pas avec Snowflake Python APIs.
Versions de Python prises en charge¶
Les versions de Python prises en charge sont les suivantes :
3,9
3,10
3,11
3,12
Guides du développeur¶
Guide |
Description |
---|---|
Installez le paquet Snowflake Python APIs. |
|
Connectez-vous Ă Snowflake Ă partir du code Python. |
|
Gestion des comptes Snowflake et des comptes gérés avec Python |
Utilisez lâAPI pour crĂ©er et gĂ©rer des comptes et des comptes gĂ©rĂ©s. |
Utilisez lâAPI pour crĂ©er et gĂ©rer des alertes. |
|
Gestion des ressources de chargement et de déchargement de données avec Python |
Utilisez lâAPI pour crĂ©er et gĂ©rer les ressources de chargement et de dĂ©chargement de donnĂ©es, y compris les volumes externes, les canaux et les zones de prĂ©paration. |
Gestion des bases de données, schémas, tables et vues Snowflake avec Python |
Utilisez lâAPI pour crĂ©er et gĂ©rer des bases de donnĂ©es, des schĂ©mas et des tables. |
Utilisez lâAPI pour crĂ©er et gĂ©rer des tables dynamiques. |
|
Gestion des fonctions et des procédures stockées Snowflake avec Python |
Utilisez lâAPI pour crĂ©er et gĂ©rer des fonctions dĂ©finies par lâutilisateur (UDFs) et des procĂ©dures stockĂ©es. |
Utilisez lâAPI pour crĂ©er et gĂ©rer des intĂ©grations de catalogue et des intĂ©grations de notifications. |
|
Utilisez lâAPI pour crĂ©er et gĂ©rer des politiques rĂ©seau. |
|
Utilisez lâAPI pour crĂ©er et gĂ©rer des Snowflake Notebooks. |
|
Gestion de Snowpark Container Services (y compris les fonctions de service) avec Python |
Utilisez lâAPI pour gĂ©rer les composants Snowpark Container Services, notamment les pools de calcul, les rĂ©fĂ©rentiels dâimages, les services et les fonctions de services. |
Utilisez lâAPI pour crĂ©er et gĂ©rer des flux. |
|
Gestion des tĂąches et des graphiques de tĂąches Snowflake avec Python |
Utilisez lâAPI pour crĂ©er, exĂ©cuter et gĂ©rer des tĂąches et des graphiques de tĂąches. |
Gestion des utilisateurs, des rĂŽles et des attributions Snowflake avec Python |
Utilisez lâAPI pour crĂ©er et gĂ©rer les utilisateurs, les rĂŽles et les autorisations. |
Utilisez lâAPI pour crĂ©er et gĂ©rer des entrepĂŽts virtuels. |
Références¶
CoĂ»ts de lâaccĂšs Ă Snowflake¶
Pour rĂ©duire les coĂ»tsââque ce soit au niveau des crĂ©dits ou de lâactivitĂ© rĂ©seauââles Snowflake Python APIs sont conçues pour communiquer avec Snowflake uniquement lorsque vous appelez des mĂ©thodes prĂ©vues pour se synchroniser avec Snowflake.
Les objets dans lâAPI sont soit des rĂ©fĂ©rences locales (ou descripteurs), soit des instantanĂ©s dâĂ©tat stockĂ©s sur Snowflake. En gĂ©nĂ©ral, lorsque vous traitez des informations extraites de Snowflake, vous le faites par lâintermĂ©diaire dâun objet de rĂ©fĂ©rence local, en mĂ©moire.
Ces rĂ©fĂ©rences ne sont pas synchronisĂ©es avec Snowflake tant que vous nâavez pas appelĂ© une mĂ©thode. Lorsque vous appelez une mĂ©thode, vous encourez gĂ©nĂ©ralement des coĂ»ts en termes de crĂ©dit dâutilisation et dâactivitĂ© rĂ©seau. En revanche, lorsque vous travaillez avec des rĂ©fĂ©rences en mĂ©moire, par exemple pour accĂ©der Ă des attributs, votre travail sâeffectue localement et nâentraĂźne pas de tels coĂ»ts.