This project illustrates how to use the Soda framework to run data quality checks against Snowflake tables, entirely on your local machine.
The code is based on the Snowflake Quickstart Guide on Data Quality Testing with Soda.
- A valid LocalStack for Snowflake license. Your license provides a
LOCALSTACK_AUTH_TOKEN. localstackCLI withLOCALSTACK_AUTH_TOKENenvironment variable setawslocalCLI- LocalStack Snowflake emulator
snowCLI withlocalstackconnection profile pointing to LocalStack Snowflake
To install the snow CLI with a local connection profile, follow the instructions here.
It basically boils down to running this command:
snow connection add \
--connection-name localstack \
--user test \
--password test \
--account test \
--host snowflake.localhost.localstack.cloud
Run the following command to install dependencies for the project (into a local Python virtual environment):
make install
To start LocalStack with custom Snowflake logging flags, use:
DOCKER_FLAGS='-e SF_LOG=trace' \
DEBUG=1 \
localstack start -s snowflake -dThe sample application provides Makefile targets to simplify the setup process.
Run the following command to initialize the environment and seed test data into local Snowflake:
make initOnce the test data has been set up, we can run the Soda data quality checks via this command:
make scanThe code in this project is licensed under the Apache 2.0 License.