[![pypi](https://badge.fury.io/py/dbt-ibmdb2.svg)](https://pypi.org/project/dbt-ibmdb2/)
[![python](https://img.shields.io/pypi/pyversions/dbt-ibmdb2)](https://pypi.org/project/dbt-ibmdb2/)
# dbt-ibmdb2
This plugin ports [dbt](https://getdbt.com) 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](https://hub.getdbt.com/) (like [dbt_utils](https://hub.getdbt.com/fishtown-analytics/dbt_utils/latest/)) is only partially tested
Please read these docs carefully and use at your own risk. [Issues](https://github.com/aurany/dbt-ibmdb2/issues/new) welcome!
Table of Contents
=================
* [Installation](#installation)
* [Supported features](#supported-features)
* [Configuring your profile](#configuring-your-profile)
* [Running Tests](#setup-dev-environment-and-run-tests)
* [Reporting bugs](#reporting-bugs)
### Installation
This plugin can be installed via pip:
```bash
$ 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](https://github.com/aurany/dbt-ibmdb2/issues/new).
### Credits
dbt-ibmdb2 is heavily inspired by and borrows from [dbt-mysql](https://github.com/dbeatty10/dbt-mysql) and [dbt-oracle](https://github.com/techindicium/dbt-oracle).
Raw data
{
"_id": null,
"home_page": "https://github.com/aurany/dbt-ibmdb2",
"name": "dbt-ibmdb2",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "dbt, ibm, db2, data, engineering",
"author": "aurany",
"author_email": "rasmus.nyberg@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/21/32/48c0a954a62070ab5059f1e06e554238cfb7d03a3aadb6cf1682e4baf012/dbt_ibmdb2-1.8.0.tar.gz",
"platform": null,
"description": "[![pypi](https://badge.fury.io/py/dbt-ibmdb2.svg)](https://pypi.org/project/dbt-ibmdb2/)\n[![python](https://img.shields.io/pypi/pyversions/dbt-ibmdb2)](https://pypi.org/project/dbt-ibmdb2/)\n\n# dbt-ibmdb2\n\nThis plugin ports [dbt](https://getdbt.com) functionality to IBM DB2.\n\nThis is an experimental plugin:\n- We have not tested it extensively\n- Only basic tests are implemented\n- Compatibility with other [dbt packages](https://hub.getdbt.com/) (like [dbt_utils](https://hub.getdbt.com/fishtown-analytics/dbt_utils/latest/)) is only partially tested\n\nPlease read these docs carefully and use at your own risk. [Issues](https://github.com/aurany/dbt-ibmdb2/issues/new) welcome!\n\nTable of Contents\n=================\n\n * [Installation](#installation)\n * [Supported features](#supported-features)\n * [Configuring your profile](#configuring-your-profile)\n * [Running Tests](#setup-dev-environment-and-run-tests)\n * [Reporting bugs](#reporting-bugs)\n\n### Installation\nThis plugin can be installed via pip:\n\n```bash\n$ pip install dbt-ibmdb2\n```\n\n### Supported features\n\n| DB2 LUW | DB2 z/OS | Feature |\n|:---------:|:---:|---------------------|\n| \u2705 | \ud83e\udd37 | Table materialization |\n| \u2705 | \ud83e\udd37 | View materialization |\n| \u2705 | \ud83e\udd37 | Incremental materialization |\n| \u2705 | \ud83e\udd37 | Ephemeral materialization |\n| \u2705 | \ud83e\udd37 | Seeds |\n| \u2705 | \ud83e\udd37 | Sources |\n| \u2705 | \ud83e\udd37 | Custom data tests |\n| \u2705 | \ud83e\udd37 | Docs generate |\n| \u2705 | \ud83e\udd37 | Snapshots |\n\n*Notes:*\n- dbt-ibmdb2 is built on the ibm_db python package and there are some known encoding issues related to z/OS.\n\n### Configuring your profile\n\nA dbt profile can be configured to run against DB2 using the following configuration example:\n\n**Example entry for profiles.yml:**\n\n```\nyour_profile_name:\n target: dev\n outputs:\n dev:\n type: ibmdb2\n schema: analytics\n database: test\n host: localhost\n port: 50000\n protocol: TCPIP\n user: my_username\n password: my_password\n extra_connect_opts: my_extra_config_options\n```\n\n| Option | Description | Required? | Example |\n| --------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------ | ---------------------------------------------- |\n| type | The specific adapter to use | Required | `ibmdb2` |\n| schema | Specify the schema (database) to build models into | Required | `analytics` |\n| database | Specify the database you want to connect to | Required | `testdb` |\n| host | Hostname or IP-adress | Required | `localhost` |\n| port | The port to use | Optional | `50000` |\n| protocol | Protocol to use | Optional | `TCPIP` |\n| user | The username to use to connect to the server | Required | `my-username` |\n| password | The password to use for authenticating to the server | Required | `my-password` |\n| extra_connect_opts | Extra connection options | Optional | `Security=SSL;SSLClientKeyStoreDB=<path-to-client-keystore>;SSLClientKeyStash=<path-to-client-keystash>` |\n\n### Setup dev environment and run tests\n\nMake sure you have docker and poetry installed globally.\n\n```\nmake install\nmake test\nmake uninstall\n```\n\n### Reporting bugs\n\nWant to report a bug or request a feature? Open [an issue](https://github.com/aurany/dbt-ibmdb2/issues/new).\n\n### Credits\n\ndbt-ibmdb2 is heavily inspired by and borrows from [dbt-mysql](https://github.com/dbeatty10/dbt-mysql) and [dbt-oracle](https://github.com/techindicium/dbt-oracle).\n",
"bugtrack_url": null,
"license": "Apache Software License 2.0",
"summary": "The db2 adapter plugin for dbt (data build tool)",
"version": "1.8.0",
"project_urls": {
"Homepage": "https://github.com/aurany/dbt-ibmdb2",
"Repository": "https://github.com/aurany/dbt-ibmdb2"
},
"split_keywords": [
"dbt",
" ibm",
" db2",
" data",
" engineering"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "adaa56d1cab48a5630ce03c94aff6851c149304223ba9025105cf7f5afde2aa9",
"md5": "f27cb8ec1983522c8dae40a2618ab3a6",
"sha256": "f220e70b014c3ea0b17f60ca6aeb3c134973944f380740c808305b5ce14ef856"
},
"downloads": -1,
"filename": "dbt_ibmdb2-1.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f27cb8ec1983522c8dae40a2618ab3a6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 23271,
"upload_time": "2024-05-21T19:12:27",
"upload_time_iso_8601": "2024-05-21T19:12:27.682795Z",
"url": "https://files.pythonhosted.org/packages/ad/aa/56d1cab48a5630ce03c94aff6851c149304223ba9025105cf7f5afde2aa9/dbt_ibmdb2-1.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "213248c0a954a62070ab5059f1e06e554238cfb7d03a3aadb6cf1682e4baf012",
"md5": "34214ee37f0ca477e269149155f8760c",
"sha256": "22e34cfbb8fe2b0348caf4f2e4ab2df9d09dd14d9c03c542e17ddcb2f5cec82d"
},
"downloads": -1,
"filename": "dbt_ibmdb2-1.8.0.tar.gz",
"has_sig": false,
"md5_digest": "34214ee37f0ca477e269149155f8760c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 17112,
"upload_time": "2024-05-21T19:12:29",
"upload_time_iso_8601": "2024-05-21T19:12:29.280746Z",
"url": "https://files.pythonhosted.org/packages/21/32/48c0a954a62070ab5059f1e06e554238cfb7d03a3aadb6cf1682e4baf012/dbt_ibmdb2-1.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-21 19:12:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aurany",
"github_project": "dbt-ibmdb2",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "dbt-ibmdb2"
}