Article
Snowday 2023
Article rédigé par Etienne Cizeau – Consultant BI Actinvision
Enfilez vos moufles, ajustez vos bonnets, serrez vos skis, c’est le retour des Snowdays, le traditionnel évènement de fin d’année de Snowflake ! En ce mois de novembre, l’éditeur de logiciel a profité de l’évènement pour annoncer un grand nombre de nouveautés pour le produit, avec une insistance toute particulière sur l’IA et Snowpark.
Petit tour des pistes des différentes annonces de cette année !
Snowflake renforce les bases déjà solides de son service : le stockage et la gouvernance des données. Deux annonces majeures viennent confirmer cette volonté :
Le support Unifié des tables Apache Iceberg (PuPr)(1), qui peuvent être requêtées directement depuis Snowflake vers leur emplacement externe ou interne. Ces tables, qui s’imposent comme le standard de l’industrie en termes de format, sont désormais utilisables nativement par un développeur Snowflake, dans un mode « unmanaged » (read only) ou « managed » (read/write).
Les tables hybrides (PrPr)(2), qui constituent la base de l’Unistore de Snowflake. Elles permettent à la fois un requêtage rapide dans une logique analytique (OLAP)(3) et transactionnelle (OLTP)(4), et permettent de manipuler un objet commun dans les différentes étapes d’un projet. L’Unistore est, pour rappel, la volonté de Snowflake de pouvoir adresser des besoins analytiques et transactionnels dans des tables et des objets communs, afin de pouvoir utiliser Snowflake dans des cas d’usage variés
La grande surprise de ces Snowdays était également la révélation d’un nouveau projet de Snowflake, centré sur la gouvernance : Horizon.
Horizon regroupe tous les concepts de Data Gouvernance de Snowflake, dans 5 piliers stratégiques : Conformité, Sécurité, Confidentialité, Interopérabilité et Accessibilité.
La Conformité tout d’abord, s’illustre par l’ajout de nouvelles autorisations et certifications de sécurité récemment acquises par Snowflake, mais également une nouvelle interface pour visualiser le Data Lineage (PrPr) de votre base de données, et identifier les dépendances entre les différentes tables. Snowflake permettra également de faire des tests de Data Quality (PrPr), pour analyser en continu la qualité de la donnée, avec la possibilité de concevoir ses propres tests contenant votre logique business. Il sera possible de mettre en place une surveillance, avec des alertes en cas de mauvaise qualité d’une source de donnée par exemple.
En termes de Sécurité, une nouvelle interface dans Snowsight, le Trust Center (PrPr), permettra de surveiller et d’analyser la sécurité du compte en temps réel, en ce qui concerne l’accès et la sécurisation des données.
La Confidentialité, elle, se voit renforcée par une nouvelle fonctionnalité, la Differential Privacy (PrPr), qui permet d’ajouter du bruit de manière dynamique dans le résultat des requêtes pour rendre la donnée non-identifiable.
L’Interopérabilité sera permise par l’API Iceberg Catalog (PrPr), une API complémentant les tables icebergs vues plus tôt, permettant de chercher dans un catalogue de métadonnées.
Enfin, l’Accessibilité est mise en avant par le biais d’un outil de recherche plus global dans Snowflake, l’Universal Search, afin de pouvoir rechercher un objet dans toutes les métadonnées du compte (table, schéma, procédure, colonne, etc.) en langage naturel (PrPr).
Pour conclure ces fondations, Snowflake annonce également une nouvelle interface de Gestion des Coûts (PrPr) pour contrôler de manière intuitive les différentes dépenses d’un compte Snowflake, et analyser au niveau du compte quelles sont les Warehouses les plus consommatrices, les requêtes qui coûtent le plus de crédits, la dépense journalière moyenne, etc.
Une IA démocratisée
Snowflake affirme sa stratégie de démocratisation de l’IA et de la science des données par le biais de plusieurs annonces clés.
Les API haut niveau Snowflake.ml.modeling.preprocessing et Snowflake.ml.training, permettant respectivement de faire de la préparation de features et de l’entrainement de modèles de Machine Learning, seront bientôt disponibles à tous dans les semaines à venir.
Snowpark, l’API phare permettant d’utiliser la puissance de Python, Scala ou Java dans Snowflake, s’est vue ajoutée un certain nombre de fonctionnalités. Il sera possible de sauvegarder des modèles prédictifs entrainés dans un stockage dédié via le Snowpark Model Registry (PuPr), accessible pour les usages et les inférences futurs. Pour favoriser le travail collaboratif sur ces modèles et permettre l’industrialisation des modèles (dans une démarche MLOps), Snowflake met également à disposition un Feature Store (PrPr), servant de point centralisé pour retrouver les différentes features des jeux de données, et les utiliser dans différents projets.
Afin d’améliorer l’expérience utilisateur, Snowflake proposera également directement dans son interface Snowsight, des worksheets prenant la forme de notebooks (PrPr), permettant de reproduire dans Snowflake, l’espace de travail classique du Data Scientist.
Enfin, dans une logique de déploiement facilité, Snowflake proposera un service de gestion de container, le Snowflake Container Services (PrPr), permettant de déployer le code d’une application ainsi que ses dépendances directement dans Snowflake.
Mais l’annonce capitale de ces Snowdays, celle qui a fait le plus de bruit et qui est la plus prometteuse pour le futur, c’est sans équivoque celle de Cortex par Snowflake qui confirme le cap de Snowflake : démocratiser l’IA.
Cortex symbolise la volonté de Snowflake de mettre l’IA et les LLMs au service des entreprises, afin d’améliorer leur business, tout en éliminant la complexité de déploiement et de développement. Concrètement, Snowflake intègrera un grand nombre d’outils et de fonctionnalités directement utilisable en SQL, se basant sur un modèle de type LLM (comme GPT, Bert ou Bard).
Concrètement, il sera tout à fait possible de faire des appels directement en SQL à des fonctions spécialisées (Specialized Functions, PrPr) utilisant le Machine Learning, comme de la prédiction ou de la détection d’anomalies, ou les LLMs, comme de la traduction ou de la récapitulation de documents. Plusieurs modèles pré-entrainés seront mis à disposition pour ces usages, comme Llama-2 qui a servi de base aux démonstrations de Snowflake.
Des fonctions plus générales (General Functions) seront également de la partie et permettront d’utiliser les LLMs pour des besoins plus généraux comme de la traduction de texte vers le SQL.
Source : Snowday 2023 – Snowflake
Snowflake introduit également un nouveau type de données, les vecteurs, naturellement utilisés par les LLMs, et y associe un certain nombre de fonctions utiles comme du calcul de distance ou de similarité, ou de la création de plongement lexicaux (embeddings).
Enfin, il sera désormais possible de bénéficier d’une assistance de développement personnalisée à toute heure, grâce à Cortex, par le biais de Snowflake Copilot, qui, à l’instar d’outils comme GitHub Copilot, propose des morceaux de code, SQL ou Python, en réponse à une question d’un développeur. Copilot sera directement inclus dans Snowsight, au niveau des worksheets.
Plus globalement, Snowflake apporte avec Cortex un grand nombre de fonctions et d’outils utiles pour les développeurs qu’il s’agisse d’un assistant de développement (Snowflake Copilot), d’un outil de recherche puissant (Universal Search) ou d’un analyseur de documents non-structurés (Document AI). La volonté de la firme est donc bien de donner accès à toute la puissance de l’IA en quelques clics.
Des Applications scalables
Dernier volet des annonces de Snowflake, le déploiement d’applications et leur scalabilité. Snowflake a en effet à cœur de proposer un écosystème complet, sur lequel les entreprises pourraient héberger leurs données, mais également les applications qui les utilisent.
Dans une démarche d’industrialisation, Snowflake propose d’intégrer des outils de CI/CD (5) en son sein.
Deux fonctionnalités, en PrPr, vont dans ce sens. Le Database Change Management, qui permet un suivi des changements au niveau de la base et de ses objets, assure un contrôle des versions de la base et permet un travail collaboratif par le biais de Git. La commande « Create Or Alter Table/Task » permettra de mettre à jour une table ou une tâche existante par le biais d’une nouvelle définition. Snowflake se chargera d’analyser quels sont les nouveaux changements et quels sont les impacts sur l’objet.
Toujours dans cette démarche d’industrialisation, il sera possible d’héberger des applications directement dans Snowflake. Le Native App Framework, dont le fonctionnement sera proche de celui d’un outil comme Docker, en se basant sur des fichiers YAML (6) définissant une image pour l’application, favorisa le déploiement de l’application directement « à côté » des données qu’elle utilise, afin de cloisonner le workflow complet de l’alimentation à la consommation de la donnée, dans un même service.
Voilà qui conclut cette édition 2023 des Snowdays, riches en annonces et en nouveautés réjouissantes ! Ces nouveautés ouvrent de nombreuses perspectives pour les utilisateurs de Snowflake et laisse entrevoir une utilisation toujours plus importante de l’IA dans leur quotidien.
On se retrouve en juin 2024 pour le traditionnel Snowflake Summit !
Lexique
(1) PuPr : Public Preview
(2) PrPr : Private Preview
(3) OLAP : Online Analytical Processing
(4) OLTP : Online Transaction Processing
(5) CI/CD : Continuous Integration / Continuous Deployment
(6) YAML : Yet Another Markup Language