Snowpipes copy data from S3 into tables in Snowflake (landing tables)
Data transformations are applied to create staging and mart tables using SQL transformations in dbt
Data Pipeline Architecture
Our data platform follows a layered architecture:
1. Data Ingestion Layer
For each source, the ingestion layer is structured as follows:
Each source has:
A folder pipelines/ingest/<source>-ingestion/ containing the core ingestion logic packaged in a container
Infrastructure as Code files in pipelines/*tf for deploying this ingestion container (as serverless functions (AWS Lambda) or container tasks (Amazon ECS))
A YAML file pipelines/<source>_source_schema.yml for the management of the data warehouse tables
Schema management is handled through YAML files, making it easy to define and evolve table structures. More info in FAQ
The template comes with an example data ingestion pipeline deployed as a serverless function using dlt; more details here: