dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.
dbt is the T in ELT. Organize, cleanse, denormalize, filter, rename, and pre-aggregate the raw data in your warehouse so that it's ready for analysis.
GizmoSQL is an Apache Arrow Flight-based SQL engine for data warehouses. It is designed to be fast, scalable, and easy to use.
It has DuckDB and SQLite back-ends. You can see more information about GizmoSQL here.
# Create the virtual environment
python3 -m venv .venv
# Activate the virtual environment
. .venv/bin/activate
pip install --upgrade pip
python -m pip install dbt-core dbt-gizmosqlgit clone https://github.com/gizmodata/dbt-gizmosql
cd dbt-gizmosql
# Create the virtual environment
python3 -m venv .venv
# Activate the virtual environment
. .venv/bin/activate
# Upgrade pip, setuptools, and wheel
pip install --upgrade pip setuptools wheel
# Install the dbt GizmoSQL adapter - in editable mode with dev dependencies
pip install --editable .[dev]You can setup the adapter by running dbt init - and choosing values that the wizard prompts you for.
Then you can run by going into the directory for the project you just created:
dbt runAdd something like the following to your ~/.dbt.profiles.yml file (change the values to match your environment):
my-gizmosql-db:
target: dev
outputs:
dev:
type: gizmosql
host: localhost
port: 31337
user: [username]
password: [password]
use_encryption: True
tls_skip_verify: True
threads: 2** Note **
This adapter plugin follows semantic versioning. The first version of this plugin is v1.10.0, in order to be compatible with dbt Core v1.10.0.
It's also brand new! For GizmoSQL-specific functionality, we will aim for backwards-compatibility wherever possible. We are likely to be iterating more quickly than most major-version-1 software projects. To that end, backwards-incompatible changes will be clearly communicated and limited to minor versions (once every three months).
- Be part of the conversation in the dbt Community Slack
- If one doesn't exist feel free to request a #db-GizmoSQL channel be made in the #channel-requests on dbt community slack channel.
- Read more on the dbt Community Discourse
- Want to report a bug or request a feature? Let us know on Slack, or open an issue
- Want to help us build dbt? Check out the Contributing Guide
Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the dbt Code of Conduct.