Skip to main content

IBM Netezza setup

The dbt-ibm-netezza adapter allows you to use dbt to transform and manage data on IBM Netezza, leveraging its distributed SQL query engine capabilities. Before proceeding, ensure you have the following:

  • An active IBM Netezza engine with connection details (host, port, database, schema, etc) in SaaS/PaaS.
  • Authentication credentials: Username and password.

Refer to Configuring dbt-ibm-netezza for guidance on obtaining and organizing these details.

  • Maintained by: IBM
  • Authors: Abhishek Jog, Sagar Soni, Ayush Mehrotra
  • GitHub repo: IBM/nz-dbt
  • PyPI package: dbt-ibm-netezza
  • Slack channel:
  • Supported dbt Core version: v1.9.2 and newer
  • dbt Cloud support: Not Supported
  • Minimum data platform version: 11.2.3.4

Installing dbt-ibm-netezza

Use pip to install the adapter. Before 1.8, installing the adapter would automatically install dbt-core and any additional dependencies. Beginning in 1.8, installing an adapter does not automatically install dbt-core. This is because adapters and dbt Core versions have been decoupled from each other so we no longer want to overwrite existing dbt-core installations. Use the following command for installation:

Configuring dbt-ibm-netezza

For IBM Netezza-specific configuration, please refer to IBM Netezza configs.

Connecting to IBM Netezza

To connect dbt with IBM Netezza, you need to configure a profile in your profiles.yml file located in the .dbt/ directory of your home folder. The following is an example configuration for connecting to IBM Netezza instances:

~/.dbt/profiles.yml
my_project:
outputs:
dev:
type: netezza
user: [user]
password: [password]
host: [hostname]
database: [catalog name]
schema: [schema name]
port: 5480
threads: [1 or more]

target: dev

Setup external table options

You also need to configure the et_options.yml file located in your project directory. Make sure the file is correctly setup before running the dbt seed. This ensures that data is inserted into your tables accurately as specified in the external data file.

./et_options.yml
- !ETOptions
SkipRows: "1"
Delimiter: "','"
DateDelim: "'-'"
MaxErrors: " 0 "

Refer the Netezza external tables option summary for more options in the file.

Host parameters

The following profile fields are required to configure IBM Netezza connections.

OptionRequired/OptionalDescriptionExample
userRequiredUsername or email address for authentication.user
passwordRequiredPassword or API key for authenticationpassword
hostRequiredHostname for connecting to Presto.127.0.0.1
databaseRequiredThe catalog name in your Presto instance.Analytics
schemaRequiredThe schema name within your Presto instance catalog.my_schema
portRequiredThe port for connecting to Presto.443

Schemas and databases

When selecting the catalog and the schema, make sure the user has read and write access to both. This selection does not limit your ability to query the catalog. Instead, they serve as the default location for where tables and views are materialized.

Notes:

The dbt-ibm-netezza adapter is built on the IBM Netezza Python driver - nzpy and is a pre-requisite which gets installed along with the adapter.

0