DeltaStream setup
- Maintained by: Community
 - Authors: DeltaStream Team
 - GitHub repo: deltastreaminc/dbt-deltastream   
 - PyPI package: 
dbt-deltastream - Slack channel: #db-deltastream
 - Supported dbt Core version: v1.10.0 and newer
 - dbt support: Not supported
 - Minimum data platform version: ?
 
Installing dbt-deltastream
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:
python -m pip install dbt-core dbt-deltastream
Configuring dbt-deltastream
For DeltaStream-specific configuration, please refer to DeltaStream configs.
Connecting to DeltaStream with dbt-deltastream
To connect to DeltaStream from dbt, you'll need to add a profile
to your profiles.yml file. A DeltaStream profile conforms to the following syntax:
<profile-name>:
  target: <target-name>
  outputs:
    <target-name>:
      type: deltastream
      
      # Required parameters
      token: [ your-api-token ] # Authentication token for DeltaStream API
      database: [ your-database ] # Target database name
      schema: [ your-schema ] # Target schema name
      organization_id: [ your-org-id ] # Organization identifier
      
      # Optional parameters
      url: [ https://api.deltastream.io/v2 ] # DeltaStream API URL, defaults to https://api.deltastream.io/v2
      timezone: [ UTC ] # Timezone for operations, defaults to UTC
      session_id: [ <empty string> ] # Custom session identifier for debugging purpose
      role: [ <empty string> ] # User role
      store: [ <empty string> ] # Target store name
      compute_pool: [ <empty string> ] # Compute pool name to be used if any else use the default compute pool
Description of DeltaStream profile fields
| Field | Required | Description | 
|---|---|---|
type | ✅ | This must be included either in profiles.yml or in the dbt_project.yml file. Must be set to deltastream. | 
token | ✅ | Authentication token for DeltaStream API. This should be stored securely, preferably as an environment variable. | 
database | ✅ | Target default database name in DeltaStream where your dbt models will be created. | 
schema | ✅ | Target default schema name within the specified database. | 
organization_id | ✅ | Organization identifier that determines which DeltaStream organization you're connecting to. | 
url | ❌ | DeltaStream API URL. Defaults to https://api.deltastream.io/v2 if not specified. | 
timezone | ❌ | Timezone for operations. Defaults to UTC if not specified. | 
session_id | ❌ | Custom session identifier for debugging purposes. Helps track operations in DeltaStream logs. | 
role | ❌ | User role within the DeltaStream organization. If not specified, uses the default role associated with the token. | 
store | ❌ | Target default store name. Stores represent external system connections (Kafka, PostgreSQL, etc.) in DeltaStream. | 
compute_pool | ❌ | Compute pool name to be used for models that require computational resources. If not specified, uses the default compute pool. | 
Security best practices
When configuring your project for production, it is strongly recommended to use environment variables to store sensitive information such as the authentication token:
your_profile_name:
  target: prod
  outputs:
    prod:
      type: deltastream
      token: "{{ env_var('DELTASTREAM_API_TOKEN') }}"
      database: "{{ env_var('DELTASTREAM_DATABASE') }}"
      schema: "{{ env_var('DELTASTREAM_SCHEMA') }}"
      organization_id: "{{ env_var('DELTASTREAM_ORG_ID') }}"
Troubleshooting connections
If you encounter issues connecting to DeltaStream from dbt, verify the following:
Authentication issues
- Ensure your API token is valid and has not expired
 - Verify the token has appropriate permissions for the target organization
 - Check that the 
organization_idmatches your DeltaStream organization 
Was this page helpful?
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.