dbt-redis-adbc
A community dbt adapter for Redis 8.x using the Redis Arrow Database Connectivity (ADBC) driver. Supports Python-based dbt 1.x; dbt 2.x and the dbt platform are not supported.
Install
Requires Python 3.10 or later and Redis 8.x with the Query Engine (Search) enabled. The adapter is tested against Redis 8.6.2.
python -m pip install dbt-redis-adbc
The Python package does not include the native Redis ADBC driver. Download and extract the shared library for your platform from the driver releases. The example project uses driver v0.0.14. Prebuilt libraries are available for macOS Apple Silicon, Linux x86-64, and Linux arm64.
Set REDIS_ADBC_DRIVER to the library's absolute path. See the driver's
server requirements and ACL permissions
before connecting.
Configure
Set your dbt project's profile to redis_project and add this profile to
~/.dbt/profiles.yml:
redis_project:
target: dev
outputs:
dev:
type: redis_adbc
driver: "{{ env_var('REDIS_ADBC_DRIVER') }}"
uri: "{{ env_var('REDIS_URI', 'redis://localhost:6379/0') }}"
username: "{{ env_var('REDIS_USERNAME', '') }}"
password: "{{ env_var('REDIS_PASSWORD', '') }}"
database: redis
schema: analytics
threads: 4
Use a rediss:// URI for TLS. Keep credentials in the separate username and
password fields. From your project, verify the connection with:
dbt debug --profile redis_project
Features and limitations
- Tables, views, ephemeral models, Arrow bulk-loaded seeds, and snapshots
- SQL incremental models with
append,delete+insert,merge, andmicrobatch - Model contracts, persisted relation and column descriptions, and Python table models
- No SQL transactions or rollback: statements autocommit, and interrupted writes may need cleanup or a rerun
- No materialized views or SQL grants; configure access with Redis ACLs
- Python models run in the dbt process and load their inputs into its memory; incremental Python models are not supported
See the adapter reference for all profile options, supported features, and limitations. The example project and functional tests demonstrate the adapter with NYC taxi data.
Metadata
Release files for dbt-redis-adbc 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dbt_redis_adbc-0.1.0.tar.gz | 27.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dbt_redis_adbc-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 47.9 kB
Release files / dbt_redis_adbc-0.1.0.tar.gz
| Download URL | dbt_redis_adbc-0.1.0.tar.gz |
|---|---|
| Size | 27.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ec0c43fbd2726ad83aedb97ca991f369bed166c93aab3e77e3523d5c06718fa
|
|
BLAKE2b-256 checksum How to use checksums |
7305b883ba248e54183c488baa1e5d90581f05946ead155977a78346044748ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / dbt_redis_adbc-0.1.0-py3-none-any.whl
| Download URL | dbt_redis_adbc-0.1.0-py3-none-any.whl |
|---|---|
| Size | 20.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
650041d56d3b5c28350f18f2b9d03522e1f55316497e1afce493d63b7363b402
|
|
BLAKE2b-256 checksum How to use checksums |
3e98364134cf521eca2e4e1c43a6e63e1e684af4ed86ec1da752e90c53979369
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Security for dbt-redis-adbc 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.