Chargement données structurées et semi-structurées

Architecture Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Le workflow de chargement

Chargement du workflow montrant des fichiers entrant dans l’étape et chargés dans Snowflake

  • Fichiers arrivent dans zone de préparation, exécuter COPY INTO pour les charger
Architecture Snowflake

Qu'est-ce qu'une zone de préparation ?

Zone de préparation = zone de stockage temporaire

Qu’est-ce qu’un diagramme Stage de Snowflake

Créer une zone de préparation interne

CREATE STAGE snowy_peak_stage;

Créer une zone de préparation externe

CREATE STAGE my_s3_stage
  STORAGE_INTEGRATION = s3_int
  URL = 's3://snowy-peak-data/raw/';
Architecture Snowflake

Chargement des données dans Snowflake

COPY INTO

  • Chargement en masse depuis zone de préparation
  • Données structurées et semi-structurées
  • Évolutif

INSERT

  • Idéal pour un petit nombre de lignes sans zone de préparation
  • Ajouts ponctuels ou modifications mineures

Interface Snowsight

  • Utilisateurs non techniques et charges de travail ponctuelles rapides
Architecture Snowflake

Inspection d’une zone de préparation avec LIST

snowflake_list_stage.png

Architecture Snowflake

Chargement données structurées avec COPY INTO

Requête

CREATE OR REPLACE FILE FORMAT csv_format
  TYPE = CSV
  SKIP_HEADER = 1;

COPY INTO orders
FROM @snowy_peak_stage/orders.csv
FILE_FORMAT = (FORMAT_NAME = csv_format);
Architecture Snowflake

Chargement et interrogation de données semi-structurées

Chargement

JSON se charge dans un type de colonne Snowflake spécial appelé VARIANT.

CREATE TABLE events (raw_event VARIANT);

COPY INTO events
FROM @snowy_peak_stage/events.json
FILE_FORMAT = (TYPE = JSON);

Interrogation

Utiliser notation avec deux-points pour naviguer dans structure JSON,

SELECT 
raw_event:user_id::STRING AS user_id,
raw_event:event_type::STRING 
AS event_type
FROM events;
Architecture Snowflake

Chargement avec l'interface utilisateur

Capture d’écran de l’interface Snowflake

Architecture Snowflake

Passons à la pratique !

Architecture Snowflake

Preparing Video For Download...