liveBook · Manning

Extraction layer

As explained in Snowflake Data Engineering

An extraction layer is the initial data-pipeline layer that hosts staged source files, external tables, or raw structured and semistructured data.

An extraction layer is the initial pipeline layer for source data entering Snowflake. It can hold internal or external stages, external tables, and raw structured or semistructured data before downstream processing. In an ELT flow, data is loaded without transformation so Snowflake can perform later transformations with its compute resources. section 11.1.2 section 11.1.3

Treat layers as logical units, not a fixed physical layout. An extraction layer may be a schema in a shared database or a separate database per source system; separating sources can simplify access control and preserve source-oriented schema organization. section 11.1.4

A practical extraction-layer implementation proceeds as follows:

  • Create or use a storage integration, grant the pipeline role usage, and select the target database and extraction schema. section 11.2.1
  • Create an external stage for cloud files and use LIST to verify that expected files are available. section 11.2.1
  • Create a raw table with a VARIANT payload plus source filename and load timestamp, then COPY data from the stage and query it to validate the load. section 11.2.1

Raw JSON orders

A JSON orders stage feeds JSON_ORDERS_EXT. Each loaded row retains the JSON document in a VARIANT column and records metadata$filename and current_timestamp(), leaving business transformation for the next layer. section 11.2.1

Figure 11.2 ELT pattern where data is first extracted without transformations, loaded into Snowflake, and then transformed using Snowflake compute resources
figure

The ELT flow places the extraction layer before Snowflake-based transformation: extract raw data, load it, then transform it. section 11.1.2

How Snowflake Data Engineering covers it

How deep it goes
Demonstrates an external stage, raw VARIANT table, COPY load, and validation query; defers detailed storage-integration setup.
Examples
Uses cloud-hosted JSON customer orders loaded through JSON_ORDERS_STAGE into JSON_ORDERS_EXT with filename and timestamp metadata.
What it assumes
Assumes a storage integration and role-based access configuration, then teaches the extraction schema, stage, table, and load sequence.
What you can do after
Build it from scratch by creating a stage, raw table, and COPY-based load that preserves source JSON for later transformation.
How it connects
Connects ELT, ETL, and ETLT patterns with staging layer, data warehouse layer, presentation layer, external stages, and external tables.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Snowflake Data Engineering. The section links point to the parts of the book it draws on.