Caricamento di dati strutturati e semi-strutturati

Architettura di Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Il flusso di caricamento

Flusso di caricamento con file nello stage e poi caricati in Snowflake

  • I file arrivano nello stage, esegui COPY INTO per caricarli
Architettura di Snowflake

Cos'è uno Stage?

Stage = area di archiviazione temporanea

Cos'è uno Stage, diagramma da Snowflake

Crea uno stage interno

CREATE STAGE snowy_peak_stage;

Crea uno stage esterno

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

Caricare dati in Snowflake

COPY INTO

  • Caricamento massivo dallo Stage
  • Dati strutturati e semi-strutturati
  • Scalabile

INSERT

  • Ottimo per poche righe senza staging
  • Aggiunte una tantum o piccole modifiche

Snowsight UI

  • Utenti non tecnici e carichi spot veloci
Architettura di Snowflake

Ispezionare uno Stage con LIST

snowflake_list_stage.png

Architettura di Snowflake

Caricare dati strutturati con COPY INTO

Query

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);
Architettura di Snowflake

Caricare e interrogare dati semi-strutturati

Caricamento

JSON viene caricato in un tipo colonna speciale di Snowflake chiamato VARIANT.

CREATE TABLE events (raw_event VARIANT);

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

Query

Usa i due punti per navigare nella struttura JSON,

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

Caricare con l'interfaccia

Screenshot dell'interfaccia Snowflake

Architettura di Snowflake

Passons à la pratique !

Architettura di Snowflake

Preparing Video For Download...