This repo contains documentation, examples, benchmarks, and schemas for SDF.
SDF is a multi-dialect SQL compiler, transformation framework, and analytical database engine. It natively compiles SQL dialects, like Snowflake, and connects to their corresponding data warehouses to materialize models.
For more, check out our official documentation at docs.sdf.com.
SDF is open core built on Apache DataFusion`.
To install the SDF CLI, run the following command:
curl -LSfs https://cdn.sdf.com/releases/download/install.sh | sh -s
For more thorough installation docs, check out the installation guide.
SDF has a rich open-source ecosystem. Here are a few libraries that we recommend you check out:
.sdfcache
..sdfcache
..sdfcache
. This library should act as a model for how to author your own SDF libraries.dead_column
analysis (find columns that are never used and are wasting compute / storage) and column_description_coverage
(find columns that are missing descriptions).Non-default libraries like the SDF Workspace Evaluator can be added to an SDF workspace like so:
workspace:
...
dependencies:
- name: evaluator
git: https://github.com/sdf-labs/workspace-evaluator/workspace-evaluator.git
Note that SDF Utils, SDF Materialization, and SDF Tests are already included in the SDF CLI and do not need to be added to the workspace.
This repo is organized as follows:
sdf new --sample <sample-name>
to create a workspace locally from one of these examples.All SDF releases are reflected in this repo as official releases. You can find the latest release here. And yes, those release notes are begrudgingly reflective of the release notes in our internal repo.
For in-depth release notes, check out the SDF changelog.
SDF is updated frequently and adheres to a strict versioning system: .. || Patch versions include patch fixes, and additive improvments which should not contain any breaking changes _.. || Minor versions may include breaking changes. These might be YML schema changes, information schema changes, or changes in SDF's internal logic *.._ || Major versions
Contributions are welcome to our examples and docs. Although SDF is still being incubated and is not yet open source, it is powered by an open source core: Apache DataFusion and function execution is enabled by our open source SQL Functions Crate. If you're ever missing support for a function, finding that a function is mistyped, or dealing with an execution error - feel free to contribute to either of those repos. If you have a feature request or bug report with the compiler, please open an issue on this repo. We'll track it and prioritize it ASAP.