Qu’est-ce que Snowpark ?

Snowpark est une bibliothèque API qui traite les données dans Snowflake sans les déplacer vers le lieu d’exécution du code de l’application.

Snowpark prend en charge les langages Python, Java, Scala et des fonctions personnalisées pour créer des pipelines, des flux d’apprentissage automatique (ML) et des applications de données puissantes et efficaces.

Les traitements Snowpark sont exécutés de manière « lazy » dans le serveur, afin de réduire la quantité de données transférées entre votre client et la base de données Snowflake.

Nous utilisons Snowpark pour importer facilement et rapidement nos sources de données vers Snowflake et ainsi construire notre datawarehouse et système de BI/dashboarding.

Pourquoi utiliser Snowpark ?

Snowpark a plusieurs avantages d’utilisation :

  1. Intégration rapide
  2. Réduction du déplacement des données
  3. Observabilité de toutes les activités

L’API Snowpark permet de connecter facilement les sources de données à Snowflake.

La puissance de Snowpark réside également dans sa capacité à charger rapidement une table sans connaître son format, peu importe le nombre et le nom des colonnes. Ainsi nous avons une capacité d’intégration et d’évolution maximale.

L’utilisation de Snowpark se fait en très peu de lignes de code. La lisibilité du code facilite grandement sa maintenance et son évolutivité.

La connexion des sources de données avec Python

Snowflake prend en charge le connecteur Python pour faciliter le transfert des données d’un fichier de données pour le stocker et le traiter directement dans Snowflake.

Python dans Snowpark apporte un riche écosystème de bibliothèques open source qui accélèrent le développement de pipelines de données et de workflows d’apprentissage automatique.

Il est possible d’utiliser les connecteurs Python pour se connecter à n’importe quelle source de données.

  • Snowpark pour charger les données d’Odoo dans Snowflake

Voici un exemple que nous avons mis en place au sein même d’Effidic : récupérer les données de notre CRM Odoo pour les charger dans Snowflake et construire notre dashboarding d’entreprise.

L’API Odoo met à disposition un grand nombre de tables. Nous récupérons les temps passés, les lignes de commande, les collaborateurs et les clients. Cela nous permettra d’avoir une vue détaillée de la production de l’entreprise. L’API est appelée grâce à un connecteur Python. Les données sont envoyées directement dans Snowflake avec Snowpark. Une fois les données dans Snowflake, nous les transformons grâce à DBT (Data Build Tool). Cela nous permet de simplifier les tables brutes d’Odoo et d’associer les tables pour obtenir la vue suivante, idéale pour suivre nos projets :

Exemple : Tableau

Nos données sont préparées mais une visualisation de celles-ci serait meilleure ! Pour cela, nous avons utilisé le logiciel Power BI afin de construire un dashboard de nos données Odoo et de nos autres données internes.

Représentation PowerBi

Finalement, l’intégration d’Odoo dans Snowflake réside dans moins de 200 lignes de code et a été mise en place en quelques heures. Le code a été orchestré pour récupérer les données d’Odoo tous les jours, en une petite poignée de minutes.

Snowpark l’outil puissant de Snowflake

Snowpark est un outil simple et rapide d’exécution dans le chargement des tables.

Il réduit le nombre de lignes de code afin de faciliter sa lisibilité. Cela permet ainsi de mieux assurer sa maintenance et son évolutivité.

Snowpark utilise différents langages, comme Python, pour faciliter la connexion à n’importe quelle source de données.

Pour conclure, Snowpark est une API Snowflake qui vous permet de gagner en efficacité !

Vous voulez en savoir plus, contactez nous.