Snowflake Architecture
Emily Melhuish
Technical Curriculum Developer, Snowflake

COPY INTO to load themStage = temporary storage location

Create Internal Stage
CREATE STAGE snowy_peak_stage;
Create External Stage
CREATE STAGE my_s3_stage
STORAGE_INTEGRATION = s3_int
URL = 's3://snowy-peak-data/raw/';
COPY INTO
INSERT
Snowsight UI

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);
Loading
JSON loads into a special Snowflake column type called VARIANT.
CREATE TABLE events (raw_event VARIANT);
COPY INTO events
FROM @snowy_peak_stage/events.json
FILE_FORMAT = (TYPE = JSON);
Querying
Use colon notation to navigate the JSON structure,
SELECT
raw_event:user_id::STRING AS user_id,
raw_event:event_type::STRING
AS event_type
FROM events;

Snowflake Architecture