Skip to main content
Version: Current

Databases

Overview

When you add the database integration, the following components are autogenerated:

In the base case only enricher component is generated when the database integration is added.

If catalog support is available (in Flink's understanding of 'catalog support') or Nussknacker has data type mappings between the database data types and internal Nussknacker data types, a (Flink) Table (API based) source and sink components will also be generated. Under the hood, Nussknacker will use Flink Table API; hence the source / sink component name will be your-integration-name Table.

Additionally, a SQL Source component will be created; this component allows to read only a subset of records of a table; a SQL SELECT statement is used to define the selection criteria.

If catalog support is not available you can define Table integration yourself and provide the data mappings.

Talk to us if you want the data type mappings for your system to be added to Nussknacker.

note
  • Only the One-Way SSL is supported for now.
  • Only the latest drivers versions are supported.
  • Once the database integration definition is created, at minimum, a SQL enricher component will be added to the Component Palette

Contact us for more information about security, drivers versions, etc.

Integrations

Clickhouse

In order to configure MariaDB enricher, you need to provide a username, password and connection URL. Sample connection URL:

jdbc:clickhouse://your_db_host:your_db_port/your-database-name

You can also provide additional connection properties if needed, depending on your database configuration.

MariaDB

In order to configure MariaDB enricher, you need to provide a username, password and connection URL. Sample connection URL:

jdbc:mariadb://your_db_host:your_db_port/your-database-name

You can also provide additional connection properties if needed, depending on your database configuration.

MySQL

In order to configure MySQL enricher, you need to provide a username, password and connection URL. Sample connection URL:

jdbc:mysql://your_db_host:your_db_port/your-database-name?ssl-mode=REQUIRED

You can also provide additional connection properties if needed, depending on your database configuration.

Oracle

Enterprise

In order to configure Oracle database enricher, you need to provide a username, password and connection URL.

You also need to ensure that Mutual TLS authentication is disabled.

Sample connection URL:

jdbc:oracle:thin:@(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=your_db-host))(connect_data=(service_name=your_service_names))(security=(ssl_server_dn_match=yes)))

You can also provide additional connection properties if needed, depending on your database configuration.

PostgreSQL

In order to configure Postgres enricher, you need to provide a username, password and connection URL. Sample connection URL:

jdbc:postgresql://your_db_host:your_db_port/your-database-name

You can also provide additional connection properties if needed, depending on your database configuration.

Redshift

In order to configure Redshift enricher, you need to provide a username, password and connection URL. Sample connection URL:

jdbc:redshift://your-redshift-cluster-name.your-region.redshift.amazonaws.com:5439/your-database-name

You can also provide additional connection properties if needed, depending on your database configuration.

Snowflake

The Snowflake JDBC connection URL requires several parameters. Obtaining these parameters is described in: Blog post.

Additionally you should ensure that:

  • Your user role has grant to the target warehouse.
  • Your user has set the target warehouse as a default one.