The db2 adapter plugin for dbt (data build tool)
Project description
dbt-ibmdb2
This plugin ports dbt functionality to IBM DB2.
This is an experimental plugin:
- We have not tested it extensively
- Only basic tests are implemented
- Compatibility with other dbt packages (like dbt_utils) is only partially tested
Please read these docs carefully and use at your own risk. Issues welcome!
Table of Contents
Installation
This plugin can be installed via pip:
$ pip install dbt-ibmdb2
Supported features
DB2 LUW | DB2 z/OS | Feature |
---|---|---|
✅ | 🤷 | Table materialization |
✅ | 🤷 | View materialization |
✅ | 🤷 | Incremental materialization |
✅ | 🤷 | Ephemeral materialization |
✅ | 🤷 | Seeds |
✅ | 🤷 | Sources |
✅ | 🤷 | Custom data tests |
✅ | 🤷 | Docs generate |
✅ | 🤷 | Snapshots |
Notes:
- dbt-ibmdb2 is built on the ibm_db python package and there are some known encoding issues related to z/OS.
Configuring your profile
A dbt profile can be configured to run against DB2 using the following configuration example:
Example entry for profiles.yml:
your_profile_name:
target: dev
outputs:
dev:
type: ibmdb2
schema: analytics
database: test
host: localhost
port: 50000
protocol: TCPIP
user: my_username
password: my_password
extra_connect_opts: my_extra_config_options
Option | Description | Required? | Example |
---|---|---|---|
type | The specific adapter to use | Required | ibmdb2 |
schema | Specify the schema (database) to build models into | Required | analytics |
database | Specify the database you want to connect to | Required | testdb |
host | Hostname or IP-adress | Required | localhost |
port | The port to use | Optional | 50000 |
protocol | Protocol to use | Optional | TCPIP |
user | The username to use to connect to the server | Required | my-username |
password | The password to use for authenticating to the server | Required | my-password |
extra_connect_opts | Extra connection options | Optional | Security=SSL;SSLClientKeyStoreDB=<path-to-client-keystore>;SSLClientKeyStash=<path-to-client-keystash> |
Setup dev environment and run tests
Make sure you have docker and poetry installed globally.
make install
make test
make uninstall
Reporting bugs
Want to report a bug or request a feature? Open an issue.
Credits
dbt-ibmdb2 is heavily inspired by and borrows from dbt-mysql and dbt-oracle.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dbt_ibmdb2-1.5.0.tar.gz
(17.1 kB
view hashes)
Built Distribution
dbt_ibmdb2-1.5.0-py3-none-any.whl
(23.3 kB
view hashes)
Close
Hashes for dbt_ibmdb2-1.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75db44d59e5454049a53ff0fb5c661fa630e135cf32a20a678968fc9c11fac43 |
|
MD5 | 2bf8d8fccd5149ce4177be8725dc0465 |
|
BLAKE2b-256 | 4a0f10d789d3305a39b4dab8be349a84ab21e762308e95556f61b4540746d01c |