
Comment Snowflake Stage améliore le traitement des données pour l’analyse en cloud

Dans le monde actuel axé sur les données, les organisations cherchent constamment des moyens de gérer et de traiter efficacement des quantités massives de données. Snowflake, une plateforme d’entreposage de données en cloud, offre une solution puissante pour préparer les données à être traitées. Cet article décrira Snowflake Stage. Nous expliquerons ses avantages et comment il simplifie le processus d’importation et de gestion des données provenant de diverses sources.
Qu’est-ce que Snowflake Stage?
Snowflake Stage est un composant fondamental de la plateforme d’entreposage de données de Snowflake. Il stocke temporairement les données avant de les charger dans les tables Snowflake. Les stages permettent aux utilisateurs de charger et de gérer efficacement les données provenant de diverses sources. Ces sources peuvent être des fichiers, des bases de données externes ou des services de stockage en cloud comme Amazon S3 ou Azure Blob Storage.
Le staging des données dans Snowflake
Snowflake Stage joue un rôle crucial dans le processus de staging des données. Il fournit un moyen flexible et évolutif d’ingérer et de préparer les données pour un traitement ultérieur. Avec Snowflake Stage, vous pouvez :
1. Charger des données de diverses sources
Snowflake est une plateforme d’entreposage de données en cloud qui permet aux utilisateurs de charger des données de diverses sources. Cela inclut des fichiers dans des formats tels que CSV, JSON et Avro, ce qui facilite l’ingestion de données de différents types de fichiers. De plus, Snowflake peut également se connecter à des bases de données externes, permettant aux utilisateurs de récupérer des données d’autres systèmes de manière transparente.
Snowflake facilite la connexion des utilisateurs avec des services de stockage en cloud comme Amazon S3 et Google Cloud Storage. Les utilisateurs peuvent charger directement des données à partir de ces plateformes. Cette flexibilité dans les options de chargement des données rend Snowflake un outil polyvalent pour gérer et analyser des données provenant de multiples sources.
2. Effectuer des transformations de données
Snowflake offre aux utilisateurs la possibilité de manipuler et de transformer les données avant de les charger dans les tables. Cela peut être fait en utilisant des requêtes SQL ou d’autres outils disponibles au sein de la plateforme Snowflake. Snowflake permet aux utilisateurs de modifier les données avant de les sauvegarder. Cela permet de nettoyer, d’enrichir et d’organiser les données selon leurs besoins.
Cette flexibilité dans la préparation des données aide à garantir que les données sont précises, cohérentes et optimisées pour les rapports. Snowflake prend en charge différentes techniques de manipulation des données. Cela facilite la gestion des transformations de données complexes par les utilisateurs. Ils peuvent formater correctement les données pour leurs besoins spécifiques.
3. Gérer de grands volumes de données
La conception de Snowflake peut gérer de grandes quantités de données pendant le processus de staging en augmentant ou réduisant les ressources selon les besoins. Cela signifie que Snowflake peut ajuster sa capacité pour s’adapter aux charges de données variées. Cette flexibilité permet à Snowflake de gérer efficacement les données sans être submergé.
La capacité de Snowflake à évoluer fait de lui une option fiable pour gérer les tâches de traitement des données. Snowflake peut facilement ajuster ses ressources pour traiter les données de manière efficace et précise. Le système effectue cet ajustement lors du chargement des données. Cette évolutivité est cruciale pour les organisations traitant des quantités massives de données, car elle leur permet de gérer facilement les pics de volume de données sans rencontrer de problèmes de performance.
De plus, la conception flexible de Snowflake permet aux organisations de modifier facilement leurs ressources pour répondre à leurs besoins. Cela assure une organisation et une gestion rapides des informations, favorisant des insights rapides et de meilleures décisions.
Aspects de sécurité de la mise en scène des données dans Snowflake
Quand il s’agit de mettre en scène des données dans Snowflake, la sécurité est une priorité absolue. Snowflake propose plusieurs fonctionnalités pour assurer la sécurité et l’intégrité de vos données en staging :
- Contrôle d’accès : Snowflake vous permet de donner des permissions spécifiques aux utilisateurs et aux rôles, garantissant que seules les personnes autorisées peuvent accéder et manipuler les données en staging.
- Chiffrement : Toutes les données dans Snowflake Stage sont automatiquement chiffrées au repos et en transit, protégeant les informations sensibles contre tout accès non autorisé.
- Validation des données : Snowflake fournit des mécanismes pour valider l’intégrité et la cohérence des données en staging avant de les charger dans les tables.
Exemple
Ici, nous utilisons un stage par défaut de Snowflake en utilisant l’interface en ligne de commande (CLI). Le stage est pour un environnement de test et les fausses données CSV ont été générées aléatoirement sur mockaroo.com. Pour utiliser un stage par défaut de Snowflake pour le fichier MOCK_DATA_1.csv, suivez ces étapes :
Connectez-vous à votre compte Snowflake en utilisant la CLI de Snowflake. La sortie devrait ressembler à ceci :
C:\Users\user>snowsql -a xz13yxx.eu-central-1 User: DAN Password:******* * SnowSQL * v1.2.32 Type SQL statements or !help DAN#COMPUTE_WH@(no database).(no schema)>
Créez une nouvelle base de données (si elle n’est pas déjà créée). Utilisez la base de données :
DAN#COMPUTE_WH@(no database).(no schema)>CREATE DATABASE mock_database; +----------------------------------------------+ | status | |----------------------------------------------| | Database MOCK_DATABASE successfully created. | +----------------------------------------------+ 1 Row(s) produced. Time Elapsed: 1.062s
DAN#COMPUTE_WH@MOCK_DATABASE.PUBLIC>use MOCK_DATABASE; +----------------------------------+ | status | |----------------------------------| | Statement executed successfully. | +----------------------------------+ 1 Row(s) produced. Time Elapsed: 0.156s
Chargez les données dans le stage par défaut (nous ne créons pas de stage nommé ici) :
DAN#COMPUTE_WH@MOCK_DATABASE.PUBLIC>PUT 'file://C:/TmpDataSnowflake/MOCK_DATA_1.csv' @~ AUTO_COMPRESS=TRUE; +-----------------+--------------------+ ... +--------------------+----------+---------+ | source | target | ... | target_compression | status | message | |-----------------+--------------------+ ... +--------------------+----------+---------| | MOCK_DATA_1.csv | MOCK_DATA_1.csv.gz | ... | GZIP | UPLOADED | | +-----------------+--------------------+ ... +--------------------+----------+---------+ 1 Row(s) produced. Time Elapsed: 1.922s
Vérifiez les données mises en scène :
DAN#COMPUTE_WH@MOCK_DATABASE.PUBLIC>LS @~; +--------------------+-------+...+-------------------------------+ | name | size |...| last_modified | |--------------------+-------+...+-------------------------------| | MOCK_DATA_1.csv.gz | 29456 |...| Fri, 22 Mar 2024 10:49:54 GMT | +--------------------+-------+...+-------------------------------+ 1 Row(s) produced. Time Elapsed: 1.071s
La sortie affichera les fichiers correctement mis en scène dans Snowflake. Notez que vous ne pouvez pas utiliser le stage par défaut interne pour une table externe. De plus, si vous voulez créer une table pour les données mises en scène, vous utiliseriez soit la CLI et la commande CREATE ou REPLACE EXTERNAL TABLE mock_table_1, soit simplement créer une table externe dans Snowflake Worksheet. Utiliser le Worksheet basé sur le Web est plus pratique pour la création de la table en raison des problèmes de copier-coller dans le client console.
USE DATABASE MOCK_DATABASE; CREATE or REPLACE TABLE mock_table_1 ( id INT, first_name VARCHAR, last_name VARCHAR, email VARCHAR, gender VARCHAR, ip_address VARCHAR, card_num VARCHAR ); CREATE OR REPLACE FILE FORMAT my_csv_format TYPE = 'CSV' FIELD_OPTIONALLY_ENCLOSED_BY = '"' SKIP_HEADER = 1; COPY INTO mock_table_1 FROM @~/MOCK_DATA_1.csv.gz FILE_FORMAT = (FORMAT_NAME = my_csv_format) ON_ERROR = 'CONTINUE';
Exemple
Créer un stage Snowflake en utilisant l’interface Web de Snowflake :
- Connectez-vous à votre compte Snowflake via l’interface Web.
- Accédez à l’onglet “Bases de données” et sélectionnez ou créez la base de données et le schéma souhaités.
- Cliquez sur l’onglet “Stages” et sélectionnez “Créer”.
- Donnez un nom à votre stage et configurez les paramètres nécessaires, tels que l’intégration de stockage et le format de fichier.
- Cliquez sur “Créer” pour créer le stage.
- Pour charger des données dans le stage, accédez à l’onglet “Stages”, sélectionnez votre stage et cliquez sur “Charger des données”.
- Spécifiez l’emplacement et le format des fichiers de données et cliquez sur “Charger”.
Les données mises en scène seront disponibles pour un traitement ultérieur et un chargement dans les tables Snowflake.
Conclusion
Snowflake Stage facilite la préparation des données pour l’analyse en cloud. Snowflake aide les organisations à gérer et traiter beaucoup de données de différentes sources de manière sécurisée et flexible. Avec son architecture basée sur le cloud et sa scalabilité, Snowflake Stage rationalise le processus de staging des données. Cela permet aux entreprises de prendre des décisions basées sur les données plus rapidement et plus efficacement.
DataSunrise offre des outils exceptionnels et flexibles pour Snowflake, incluant des fonctionnalités de sécurité, des règles d’audit, de masquage et de conformité. Pour en savoir plus sur la façon dont DataSunrise peut améliorer votre expérience Snowflake, visitez notre site Web et programmez une démonstration en ligne.