Introduction
- Bref rappel historique sur les data warehouses.
- Rappel des fondamentaux d’un data warehouse.
- L’évolution des architectures traditionnelles.
- Le cloud computing.
Echanges
Présentation de Snowflake : concepts clés et architecture
- Snowflake, un Software as a Service (SaaS) : avantages, instances de calcul virtuelles, service de stockage.
- Architecture à trois couches : data base storage, Query Processing, cloud services.
- Connexion à Snowflake : interface web, SnowSQL, pilotes, connecteurs.
- Hiérarchie de stockage : data bases et schémas, tables, views, stages.
Démonstration
L'écosystème de Snowflake. Connexion à Snowflake.
Prise en main de Snowflake WebUI
- Introduction et "user roles".
- Navigation data base : panneau de propriété bases de données et objets, utiliser les hyperliens, voir les privilèges.
- Exploration des données : navigation, volets d’entrée SQL et de résultats de la worksheet. Exploration avec Worksheet.
- Afficher des statistiques détaillées.
- Export des data via le clip board ou en utilisant un fichier.
Travaux pratiques
Création d'un compte. Affichage du panneau d’aide. Changement de rôle. Identifier la base de données en cours/objets/schéma. Créer une instruction SQL select. Explorer et afficher les données.
Warehouse Snowflake - Objets DB - Transformations
- Notion de warehouse au sens Snowflake.
- Utilisations du menu de contexte, d’un script SQL pour spécifier le warehouse.
- Fonctionnalité "Code Highlight".
- Les objets data base. Importer les données dans la base.
- Transformations : les fonctions SQL REPLACE, CONCAT. ETL & ELT. Import d’un fichier texte dans une worksheet.
Travaux pratiques
Création d’un warehouse, d'une BDD, d'une table, d'un format de fichier pour l’import. Effectuer des transformations.
Stockage et requêtage avancé
- Staging data : upload et organisation des données.
- Data storage structures : entité, attribut et relation, séquence.
- Données semi structurées : définition, formats utilisables avec Snowflake, stockage dans une colonne de type VARIANT.
- Données semi structurées complexes : requête, utilisation des fonctions FLATTEN, GET, GET_PATH.
Travaux pratiques
Charger des données dans un stage. Créer une séquence. Utiliser une séquence avec la fonction NEXT VALUE. Effectuer des requêtes.
Performances
- Les différents niveaux de cache : Result cache, Local Disk cache, Remote Disk.
- Optimiser l’utilisation du cache.
- Bonnes pratiques d'optimisation en management : des warehouses, des coûts.
- Bonnes pratiques en sécurité et gestion des rôles.
Travaux pratiques
Analyses du cache, optimiser son utilisation.
Design & Deploy
- Planifier des exécutions à l’aide des Tasks.
- Réplication des objets à l’aide du clonage et du time travel.
- Création de pipelines et streaming de données (change data capture).
Travaux pratiques
Planifier des exécutions. Faire du clonage. Créer des pipelines et des streaming.
Présentation d’un cas métier
- Présentation d’un cas métier : vision 360° d'une chaîne logistique.
- Conclusion.
Echanges