Lead your team forward
OCT 24 / 9AM ET Register nowData Sources Configuration
This article describes the properties used to configure data sources in Data Processing Engine (DPE).
To modify the default configuration in on-premise deployments, add or edit properties in the dpe/etc/application.properties
file.
JDBC data source plugin default settings
These properties define default JDBC connection configuration for all data sources. You can also configure each driver separately, in which case driver-specific properties override the values provided here for that particular driver.
Each property follows the pattern plugin.jdbcdatasource.ataccama.one.connections.{propertyName}
.
Property | Data type | Description |
---|---|---|
|
Boolean |
If set to If you use data source throttling by specifying |
|
Number |
Defines for how long the pool manager or, in case connection pooling is not enabled, a data source, lets the client’s connection request wait before a timeout exception is thrown. This typically happens when all available connections are already in use and no new connections can be added due to other limits. Expressed in milliseconds. The default value is |
|
Number |
Specifies for how long a connection can remain idle in the connection pool before it is closed. Applicable if connection pooling is enabled. Expressed in milliseconds. Default value: |
|
Number |
Determines for how long a connection can remain in the pool. The connections that are currently in use are not closed. Expressed in milliseconds. Applicable if connection pooling is enabled. The period should be several seconds shorter compared to the database limit. Default value: |
|
Number |
The minimum number of idle connections in the pool. Applicable if connection pooling is enabled. If the property is not set, the value corresponds to the value of the property Default value: |
|
Number |
The maximum number of connections in the connection pool. This includes both active and idle connections. Applicable if connection pooling is enabled. When the maximum number of connections is reached, further connection requests are blocked. If the property is not set, the number of allowed connections is Default value: |
|
String |
Specifies the maximum waiting time for row count operation during preprocessing. Default value: |
JDBC data source driver settings
The following properties need to be set when configuring a JDBC data source plugin. You can use these properties as a template for adding custom data sources.
The property names follow this pattern: plugin.jdbcdatasource.ataccama.one.driver.{driverId}.{propertyName}
.
The identifier of the driver (driverId
) needs to be unique and should match the identifier of the database, for example, postgresql
.
It is also possible to add custom JDBC properties.
To do this, use the pattern plugin.jdbcdatasource.ataccama.one.driver.{driverId}.properties.{propertyName}
and replace all placeholder values.
For example, if you are working with an Oracle database with the default configuration and want to define how many rows are prefetched, the following property should be provided:
plugin.jdbcdatasource.ataccama.one.driver.oracle.properties.oracle.jdbc.defaultRowPrefetch
Or, if you need to log in as a system user in an Oracle database, the following property should be added:
plugin.jdbcdatasource.ataccama.one.driver.oracle.properties.oracle.jdbc.internal_logon=sysdba
Examples of configuration with default values are provided in the following sections for a number of data sources. The H2 data source should only be used for testing purposes.
The properties related to connection pooling are driver-specific values of connection pooling properties that are defined for all drivers.
The <driverId>.driver-class
property must be added if there are multiple drivers found in the driver’s classpath (<driverId>.driver-class-path
).
Property | Data type | Description | ||
---|---|---|---|---|
|
String |
The name of the data source that is displayed in ONE Web Application. |
||
|
String |
Refers to the pattern of a valid JDBC connection string. This serves as a template for users and should use placeholders to indicate what users need to modify. For example, for PostgreSQL, the value is |
||
|
String |
A regular expression for a schema name from connection string in its first group. This is especially useful for data sources where all schemas are listed regardless of the database specified in the connection string, such as Teradata ( |
||
|
String |
The classpath of the driver, for example, To select multiple files, use a semicolon ( |
||
|
String |
A path for additional files that are loaded to the classpath of this driver. Suitable for adding additional libraries or license files. |
||
|
String |
The driver’s class name. Must be added in the following cases:
|
||
|
String |
The customized implementation class of the driver’s provider. If the property is not provided, the default provider is used. Omitted if configuring a custom JDBC driver. |
||
|
Boolean |
If set to |
||
|
Number |
Defines for how long the pool manager or, in case connection pooling is not enabled, a data source, lets the client’s connection request wait before a timeout exception is thrown. This typically happens when all available connections are already in use and no new connections can be added due to other limits. Expressed in milliseconds. The default value is |
||
|
Number |
Specifies for how long a connection can remain idle in the connection pool before it is closed. Applicable if connection pooling is enabled. Expressed in milliseconds. Default value: |
||
|
Number |
Determines for how long a connection can remain in the pool. The connections that are currently in use are not closed. Expressed in milliseconds. Applicable if connection pooling is enabled. The period should be several seconds shorter compared to the database limit. Default value: |
||
|
Number |
The minimum number of idle connections in the pool. Applicable if connection pooling is enabled. If the property is not set, the value corresponds to the value of the property Default value: |
||
|
Number |
The maximum number of connections in the connection pool. This includes both active and idle connections. Applicable if connection pooling is enabled. When the maximum number of connections is reached, further connection requests are blocked. If the property is not set, the number of allowed connections is Default value: |
||
|
String |
A query pattern for displaying all records, for example, Allowed placeholders: |
||
|
String |
A query pattern for displaying a preview of records, for example, If the property is not set, the pattern |
||
|
String |
A DSL query pattern for loading data source preview. The property is mainly used for optimization purposes. By default, the pattern is as follows: For exact configuration details, refer to the corresponding section for your data source type on this page. |
||
|
String |
A DSL query pattern for importing metadata. The property is mainly used for optimization purposes. By default, the pattern is as follows: For exact configuration details, refer to the corresponding section for your data source type on this page. |
||
|
String |
A query pattern for counting the number of rows in a catalog item, for example, |
||
|
String |
A row number column query for processing of relational databases in Spark environment. |
||
|
String |
A query pattern for retrieving a sample of records from a catalog item, for example, Allowed placeholders: |
||
|
String |
The punctuation mark used to delimit identifiers in queries, typically a backtick ( |
||
|
String |
Restricts which table types can be queried in the data source. |
||
|
Number |
If set, metadata is loaded in bulk for all tables available in a schema or database provided that the number of tables selected for import exceeds the threshold specified. Otherwise, the bulk import strategy is applied only when users attempt to load the whole schema (or, in data sources that do not use schemas, the whole database). In other words, if the property is omitted or not supported for the given data source, tables are processed and queried one by one. The property is particularly useful when working with slow databases.
For example, if querying metadata for a single table takes two minutes and for the full schema five minutes, setting the threshold to In the current version, the property can be used for the following data sources: MSSQL, Oracle, PostgreSQL, Amazon Aurora PostgreSQL. |
||
|
Boolean |
Disables the JDBC driver.
To do so, set the property to
|
||
|
String |
Customizes the query to determine the location root. The default value is data source dependent. |
||
|
String |
If set, entities whose name matches this pattern are excluded from the job result. This property is not used for the following data sources which do not support schemas: MySQL, Amazon Aurora MySQL, MariaDB. If you specify any value here, this would result in an empty job result.
|
||
|
String |
If set, only entities whose name matches this pattern are included in the job result. This property is not used for the following data sources which do not support schemas: MySQL, Amazon Aurora MySQL, MariaDB. If you specify any value here, this would result in an empty job result.
|
||
|
String |
If set, entities whose name matches this pattern are excluded from the job result.
|
||
|
String |
If set, only entities whose name matches this pattern are included in the job result.
|
||
|
If set to Default value: |
plugin.jdbcdatasource.ataccama.one.driver.<driverId>.parent-resource-last |
JDBC data export
The following properties are used for enabling data export on all data sources. For more information about the data export feature, see Data Export.
Property | Data type | Description | ||
---|---|---|---|---|
|
Boolean |
If set, exporting data is not possible on the data source. Default value: |
||
|
String |
Used for creating a new table. The default value is |
||
|
String |
Used for creating a new column. The default value is |
||
|
String |
Used for creating a new column as the primary key.
To apply this, specify Default value: |
||
|
String |
Specifies the separator for columns.
Example value: |
||
|
String |
Used for editing existing tables. The default value is |
||
|
Boolean |
(Optional) Some databases support multiple column changes in a single alter table command. Default value: |
||
|
String |
Used for adding a new column to an existing table. The default value is |
||
|
String |
This property helps in cases where an existing column type is incompatible with the requested type. It first drops the column and then creates the column of the same name with the correct type. Default value:
|
||
|
Boolean |
(Optional) Some databases do not support the Boolean data type natively, so you can use Default value: |
||
|
String |
Used for editing a column in an existing table. The default value is |
||
|
String |
Used for deleting columns. Default value: |
||
|
String |
In cases when there is a redundant existing column which is also marked as Default value:
|
||
|
String |
Used to make a column nullable. Default value: |
||
|
String |
Used for deleting the contents of a table. Default value: |
||
|
Date |
Specifies the mapping of an export type of an attribute for
The value of the property is the target type or specifier. |
||
|
String |
Specifies the mapping of an attribute size for Example value: |
||
|
String |
Specifies the mapping of an attribute size for You can specify the condition using the property Example value: |
||
|
String |
The column size specifier condition.
It supports the Example value: |
||
|
Boolean |
If set to Default value:
|
When it comes to type mappings, you can also use different target types for the same source type based on some conditions.
For any conditional mapping, specify two more properties with the following general syntax, where subType
is any descriptive name that is used to bind these properties together:
plugin.jdbcdatasource.ataccama.one.driver.<driverId>.data-export.type-mappings.<Type>.<subType> = target type
plugin.jdbcdatasource.ataccama.one.driver.<driverId>.data-export.type-mappings.<Type>.<subType>.when = condition expression
For example, we want to use VARCHAR2
type for STRING
column of size ⇐ 2000
and type CLOB
for the larger sizes.
In this case, the default mapping is as follows:
data-export.type-mappings.STRING = VARCHAR2({columnSize})
While the conditional mapping is as follows:
data-export.type-mappings.STRING.lob = CLOB
data-export.type-mappings.STRING.lob.when = columnSize > 2000
Shared settings
The following property is common for all configured JDBC drivers.
Property | Data type | Description | ||
---|---|---|---|---|
|
String |
Determines which table types are shown in data sources. Applies to all available data sources. If no value is provided or the property is removed or commented out, all table types are displayed (not recommended).
Default value: |
Oracle configuration
The following properties are used only for Oracle databases.
Property | Data type | Description |
---|---|---|
|
String |
Restricts which schemas can be queried in the data source. |
|
Boolean |
If set to Default value: |
Oracle JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.oracle.name = Oracle
plugin.jdbcdatasource.ataccama.one.driver.oracle.connection-pattern = jdbc:oracle:thin:@<hostname>:<port>:<sid>
plugin.jdbcdatasource.ataccama.one.driver.oracle.driver-class-path = ojdbc*.jar
plugin.jdbcdatasource.ataccama.one.driver.oracle.additional-classpath-files = oracleLibs/*;
plugin.jdbcdatasource.ataccama.one.driver.oracle.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.oracle.OracleDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.oracle.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.oracle.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.oracle.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.oracle.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.oracle.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.oracle.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.oracle.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.oracle.preview-query-pattern = SELECT {columns} FROM {table} WHERE ROWNUM <= {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.oracle.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) WHERE ROWNUM <= {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.oracle.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) WHERE ROWNUM = 0
plugin.jdbcdatasource.ataccama.one.driver.oracle.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.oracle.sampling-query-pattern = SELECT {columns} FROM {table} SAMPLE ({percentageLimit})
plugin.jdbcdatasource.ataccama.one.driver.oracle.disallowed-indexes-table-types = SYNONYM,VIEW
plugin.jdbcdatasource.ataccama.one.driver.oracle.disallowed-indexes-schema-names = SYS
plugin.jdbcdatasource.ataccama.one.driver.oracle.bulk-import-table-count-threshold = 5
plugin.jdbcdatasource.ataccama.one.driver.oracle.location-query = select nvl(nullif(service_name, 'SYS$USERS'), nvl(instance_name, sid))\
from (SELECT distinct sys_context('userenv', 'service_name') service_name, sys_context('userenv', 'instance_name') instance_name, sys_context('USERENV', 'SID') sid FROM DUAL)
# Example of custom driver property (prefixed by plugin.jdbcdatasource.ataccama.one.driver.oracle.properties.):
#plugin.jdbcdatasource.ataccama.one.driver.oracle.properties.oracle.jdbc.defaultRowPrefetch = 1000
plugin.jdbcdatasource.ataccama.one.driver.oracle.row-number-column = ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) as ____rno
#plugin.jdbcdatasource.ataccama.one.driver.oracle.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.oracle.skip-oracle-maintained-tables = true
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.alter-column-pattern = MODIFY {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE CONSTRAINTS
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.make-column-nullable-pattern = MODIFY {column} NULL
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.allow-boolean-as-number = true
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.INTEGER = NUMBER(10)
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.BOOLEAN = NUMBER(1)
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.LONG = NUMBER(20)
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.DATETIME = TIMESTAMP
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.FLOAT = NUMBER({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.FLOAT.real = BINARY_FLOAT
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.FLOAT.real.when = jdbcColumnTypeNumber == 100
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.FLOAT.double = BINARY_DOUBLE
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.FLOAT.double.when = jdbcColumnTypeNumber == 101
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.STRING = VARCHAR2({columnSize = 128} CHAR)
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.STRING.lob = CLOB
plugin.jdbcdatasource.ataccama.one.driver.oracle.data-export.type-mappings.STRING.lob.when = columnSize > 2000
PostgreSQL configuration
PostgreSQL JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.postgresql.name = PostgreSQL
plugin.jdbcdatasource.ataccama.one.driver.postgresql.supports-analytical-queries = true
plugin.jdbcdatasource.ataccama.one.driver.postgresql.connection-pattern = jdbc:postgresql://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.postgresql.driver-class-path = postgresql-*.jar
plugin.jdbcdatasource.ataccama.one.driver.postgresql.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.postgresql.PostgreSQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.postgresql.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.postgresql.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RANDOM() < {percentageLimit} limit {limit}
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.sampling-query-pattern = SELECT {columns} FROM {table} TABLESAMPLE SYSTEM ({percentageLimit}) -- for Postgresql version >= 9.5
plugin.jdbcdatasource.ataccama.one.driver.postgresql.query-quotation-mark = \"
plugin.jdbcdatasource.ataccama.one.driver.postgresql.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.postgresql.bulk-import-table-count-threshold = 30
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.properties.NAME_OF_THE_CUSTOM_PROPERTY = CUSTOM_PROPERTY_VALUE
#plugin.jdbcdatasource.ataccama.one.driver.postgresql.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.alter-multiple-columns = true
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.add-column-pattern = ADD COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.alter-column-pattern = ALTER COLUMN {column} TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.make-column-nullable-pattern = ALTER COLUMN {column} DROP NOT NULL
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.INTEGER = integer
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.BOOLEAN = boolean
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.DATETIME = timestamp
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.FLOAT = numeric({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.FLOAT.real = real
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.FLOAT.double = double precision
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.STRING = varchar({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.STRING.lob = text
plugin.jdbcdatasource.ataccama.one.driver.postgresql.data-export.type-mappings.STRING.lob.when = columnSize > 2000
Amazon Aurora PostgreSQL configuration
Amazon Aurora PostgreSQL JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.name = Amazon Aurora PostgreSQL
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.supports-analytical-queries = true
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.connection-pattern = jdbc:postgresql://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.driver-class-path = postgresql-*.jar
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.postgresql.PostgreSQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RANDOM() < {percentageLimit} limit {limit}
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.sampling-query-pattern = SELECT {columns} FROM {table} TABLESAMPLE SYSTEM ({percentageLimit}) -- for Postgresql version >= 9.5
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.query-quotation-mark = \"
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.bulk-import-table-count-threshold = 30
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.properties.NAME_OF_THE_CUSTOM_PROPERTY = CUSTOM_PROPERTY_VALUE
#plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.alter-multiple-columns = true
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.add-column-pattern = ADD COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.alter-column-pattern = ALTER COLUMN {column} TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.make-column-nullable-pattern = ALTER COLUMN {column} DROP NOT NULL
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.INTEGER = integer
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.BOOLEAN = boolean
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.DATETIME = timestamp
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.FLOAT = numeric({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.FLOAT.real = real
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.FLOAT.double = double precision
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.STRING = varchar({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.STRING.lob.when = columnSize > 2000
plugin.jdbcdatasource.ataccama.one.driver.aurora-postgresql.data-export.type-mappings.STRING.lob = text
MySQL configuration
MySQL JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.mysql.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.mysql.name = MySQL
plugin.jdbcdatasource.ataccama.one.driver.mysql.connection-pattern = jdbc:mysql://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.mysql.driver-class-path = mysql-connector-j-8*.jar
plugin.jdbcdatasource.ataccama.one.driver.mysql.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mysql.MySQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.mysql.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.mysql.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.mysql.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.mysql.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.mysql.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.mysql.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.mysql.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mysql.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.mysql.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.mysql.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.mysql.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mysql.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RAND() < {percentageLimit};
plugin.jdbcdatasource.ataccama.one.driver.mysql.query-quotation-mark =`
plugin.jdbcdatasource.ataccama.one.driver.mysql.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.mysql.properties.characterEncoding = utf-8
#plugin.jdbcdatasource.ataccama.one.driver.mysql.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.alter-column-pattern = MODIFY {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.make-column-nullable-pattern = MODIFY {column} {type} NULL
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.INTEGER = INT
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.BOOLEAN = BOOL
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.LONG = BIGINT
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.DATETIME = DATETIME
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.FLOAT = DECIMAL({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.FLOAT.real = FLOAT
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.FLOAT.double = DOUBLE
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.STRING = VARCHAR({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.STRING.mediumtext.when = columnSize > 2000 && columnSize <= 16777215
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.STRING.mediumtext = MEDIUMTEXT
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.STRING.longtext.when = columnSize > 16777215
plugin.jdbcdatasource.ataccama.one.driver.mysql.data-export.type-mappings.STRING.longtext = LONGTEXT
plugin.jdbcdatasource.ataccama.one.driver.mysql.processing-properties.provide-file-driver-property-as-url = true
Amazon Aurora MySQL configuration
Amazon Aurora MySQL JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.name = Amazon Aurora MySQL
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.connection-pattern = jdbc:mysql://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.driver-class-path = mysql-connector-j-8*.jar
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mysql.MySQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RAND() < {percentageLimit};
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.query-quotation-mark =`
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.properties.characterEncoding = utf-8
#plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.alter-column-pattern = MODIFY {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.make-column-nullable-pattern = MODIFY {column} {type} NULL
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.INTEGER = INT
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.BOOLEAN = BOOL
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.LONG = BIGINT
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.DATETIME = DATETIME
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.FLOAT = DECIMAL({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.FLOAT.real = FLOAT
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.FLOAT.double = DOUBLE
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.STRING = VARCHAR({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.STRING.mediumtext.when = columnSize > 2000 && columnSize <= 16777215
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.STRING.mediumtext = MEDIUMTEXT
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.STRING.longtext.when = columnSize > 16777215
plugin.jdbcdatasource.ataccama.one.driver.aurora-mysql.data-export.type-mappings.STRING.longtext = LONGTEXT
MS SQL configuration
MS SQL JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.mssql.name = MSSQL Server
plugin.jdbcdatasource.ataccama.one.driver.mssql.connection-pattern = jdbc:sqlserver://<hostname>:<port>;databaseName =<database>
plugin.jdbcdatasource.ataccama.one.driver.mssql.driver-class-path = mssql-jdbc*.jar
plugin.jdbcdatasource.ataccama.one.driver.mssql.additional-classpath-files = mssqlLibs/*;
plugin.jdbcdatasource.ataccama.one.driver.mssql.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mssql.MSSQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.mssql.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.mssql.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.mssql.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.mssql.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.mssql.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.mssql.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.mssql.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mssql.preview-query-pattern = SELECT TOP {previewLimit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mssql.dsl-query-preview-query-pattern = SELECT TOP {previewLimit} * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.mssql.dsl-query-import-metadata-query-pattern = SELECT TOP 0 * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.mssql.row-count-query-pattern = SELECT COUNT_BIG(*) FROM {table}
#plugin.jdbcdatasource.ataccama.one.driver.mssql.sampling-query-pattern = SELECT {columns} FROM {table} TABLESAMPLE ({percentageLimit} PERCENT)
plugin.jdbcdatasource.ataccama.one.driver.mssql.sampling-query-pattern = IF (SELECT TABLE_TYPE FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '{simpleTable}' AND TABLE_SCHEMA = '{schema}') = 'BASE TABLE' \
EXEC('SELECT TOP {limit} {columns} FROM {table} TABLESAMPLE (CASE WHEN {percentageLimit}*110 > 100 THEN 100 ELSE {percentageLimit}*110 END PERCENT)') \
ELSE SELECT TOP {limit} {columns} FROM (select t1.*, RAND(CHECKSUM(NEWID())) as ____rnd from {table} as t1) as t1 where ____rnd < {percentageLimit} * 1.1
plugin.jdbcdatasource.ataccama.one.driver.mssql.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.mssql.bulk-import-table-count-threshold = 30
plugin.jdbcdatasource.ataccama.one.driver.mssql.row-number-column = ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) as ____rno
#plugin.jdbcdatasource.ataccama.one.driver.mssql.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.alter-column-pattern = ALTER COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.drop-column-pattern = DROP COLUMN {column}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.make-column-nullable-pattern = ALTER COLUMN {column} {type} NULL
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.INTEGER = integer
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.BOOLEAN = bit
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.DATETIME = datetime
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.FLOAT = numeric({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.FLOAT.real = real
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.FLOAT.double = float(53)
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.STRING = varchar({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.STRING.lob = varchar(max)
plugin.jdbcdatasource.ataccama.one.driver.mssql.data-export.type-mappings.STRING.lob.when = columnSize > 2000
Azure Synapse Analytics configuration
Azure Synapse Analytics JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.name = Azure Synapse Analytics
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.connection-pattern = jdbc:sqlserver://<hostname>:<port>;databaseName =<database>
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.driver-class-path = mssql-jdbc*.jar
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.additional-classpath-files = mssqlLibs/*;
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mssql.MSSQLDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.preview-query-pattern = SELECT TOP {previewLimit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.dsl-query-preview-query-pattern = SELECT TOP {previewLimit} * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.dsl-query-import-metadata-query-pattern = SELECT TOP 0 * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.row-count-query-pattern = SELECT COUNT_BIG(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.sampling-query-pattern = SELECT TOP {limit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.disallowed-indexes-table-types = SYNONYM
#plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.schema-exclude-pattern =
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.schema-include-pattern =
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.table-exclude-pattern =
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.table-include-pattern =
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.alter-column-pattern = ALTER COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.drop-column-pattern = DROP COLUMN {column}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.make-column-nullable-pattern = ALTER COLUMN {column} {type} NULL
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.use-implicit-transaction-for-ddl = true
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.INTEGER = integer
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.BOOLEAN = bit
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.DATETIME = datetime
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.FLOAT = numeric({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.FLOAT.real = real
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.FLOAT.double = float(53)
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.data-export.type-mappings.STRING = varchar({columnSize = 128})
SAP HANA configuration
SAP HANA JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.name = SAP HANA
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.connection-pattern = jdbc:sap://<hostname>:<port>/?databaseName =<database>
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.driver-class-path = ngdbc*.jar
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.saphana.SaphanaDataSourceClientProvider
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.driver-class = com.sap.db.jdbc.Driver
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.pooling-enabled = true
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.sampling-query-pattern = SELECT {columns} FROM {table} TABLESAMPLE BERNOULLI ({percentageLimit}*100)
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.disallowed-indexes-table-types = SYNONYM,VIEW
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.location-query = select value from "SYS"."M_SYSTEM_OVERVIEW" where section = 'System' and name = 'Instance ID'
#plugin.jdbcdatasource.ataccama.one.driver.sap-hana.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.add-column-pattern = ADD ({column} {type})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.alter-column-pattern = ALTER ({column} {type})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.drop-column-pattern = DROP ({column})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.make-column-nullable-pattern = ALTER ({column} {type} NULL)
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.INTEGER = INTEGER
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.BOOLEAN = BOOLEAN
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.LONG = BIGINT
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.DATETIME = DATETIME
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.FLOAT = DECIMAL({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.FLOAT.real = REAL
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.FLOAT.double = DOUBLE
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.STRING = VARCHAR({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.STRING.lob = CLOB
plugin.jdbcdatasource.ataccama.one.driver.sap-hana.data-export.type-mappings.STRING.lob.when = columnSize > 5000
MariaDB configuration
MariaDB JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.mariadb.name = MariaDB
plugin.jdbcdatasource.ataccama.one.driver.mariadb.connection-pattern = jdbc:mariadb://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.mariadb.driver-class-path = mariadb*.jar
plugin.jdbcdatasource.ataccama.one.driver.mariadb.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mariadb.MariaDBDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.mariadb.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.mariadb.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.sampling-query-pattern = SELECT {columns} FROM {table} LIMIT {limit}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.query-quotation-mark =`
plugin.jdbcdatasource.ataccama.one.driver.mariadb.disallowed-indexes-table-types = SYNONYM
#plugin.jdbcdatasource.ataccama.one.driver.mariadb.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.alter-column-pattern = MODIFY {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.make-column-nullable-pattern = MODIFY {column} {type} NULL
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.INTEGER = INT
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.BOOLEAN = BOOL
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.LONG = BIGINT
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.DATETIME = DATETIME
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.FLOAT = DECIMAL({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.FLOAT.real = FLOAT
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.FLOAT.double = DOUBLE
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.STRING = VARCHAR({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.STRING.mediumtext.when = columnSize > 2000 && columnSize <= 16777215
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.STRING.mediumtext = MEDIUMTEXT
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.STRING.longtext.when = columnSize > 16777215
plugin.jdbcdatasource.ataccama.one.driver.mariadb.data-export.type-mappings.STRING.longtext = LONGTEXT
Teradata configuration
Teradata JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.teradata.name = Teradata
plugin.jdbcdatasource.ataccama.one.driver.teradata.connection-pattern = jdbc:teradata://<hostname>/database =<database>,charset = UTF8
plugin.jdbcdatasource.ataccama.one.driver.teradata.driver-class-path = terajdbc4-*.jar
plugin.jdbcdatasource.ataccama.one.driver.teradata.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.teradata.TeradataDataSourceClientProvider
plugin.jdbcdatasource.ataccama.one.driver.teradata.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.teradata.preview-query-pattern = SELECT {columns} FROM {table} SAMPLE {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.teradata.dsl-query-preview-query-pattern = SELECT TOP {previewLimit} * FROM ({dslQuery}) dslQuery
plugin.jdbcdatasource.ataccama.one.driver.teradata.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery WHERE 1 = 0
plugin.jdbcdatasource.ataccama.one.driver.teradata.row-count-query-pattern = SELECT CAST(COUNT (*) AS BIGINT) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.teradata.sampling-query-pattern = SELECT {columns} FROM {table} SAMPLE {limit}
#plugin.jdbcdatasource.ataccama.one.driver.teradata.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.teradata.connection-timeout = 20000 // not supported anyway
#plugin.jdbcdatasource.ataccama.one.driver.teradata.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.teradata.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.teradata.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.teradata.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.teradata.disallowed-indexes-table-types = SYNONYM
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.teradata.properties.NAME_OF_THE_CUSTOM_PROPERTY = CUSTOM_PROPERTY_VALUE
#plugin.jdbcdatasource.ataccama.one.driver.teradata.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.teradata.schema-regex = jdbc:teradata://.*database =([a-zA-Z0-9_]*).*
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.alter-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.drop-column-pattern = DROP {column}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.make-column-nullable-pattern = ADD {column} NULL
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.allow-boolean-as-number = true
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.INTEGER = INTEGER
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.BOOLEAN = DECIMAL(1)
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.LONG = BIGINT
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.DATETIME = TIMESTAMP
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.FLOAT = NUMERIC({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.FLOAT.double = DOUBLE PRECISION
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT" || jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.STRING = VARCHAR({columnSize = 128}) CHARACTER SET UNICODE CASESPECIFIC
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.STRING.longtext.when = columnSize > 2000
plugin.jdbcdatasource.ataccama.one.driver.teradata.data-export.type-mappings.STRING.longtext = CLOB
Amazon Redshift configuration
Amazon Redshift JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.redshift.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.redshift.name = Amazon Redshift
plugin.jdbcdatasource.ataccama.one.driver.redshift.connection-pattern = jdbc:redshift://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.redshift.driver-class-path = redshift-*.jar
plugin.jdbcdatasource.ataccama.one.driver.redshift.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.redshift.RedshiftDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.redshift.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.redshift.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.redshift.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.redshift.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.redshift.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.redshift.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.redshift.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.redshift.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.redshift.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.redshift.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.redshift.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.redshift.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RANDOM() < {percentageLimit} limit {limit}
plugin.jdbcdatasource.ataccama.one.driver.redshift.query-quotation-mark = \"
plugin.jdbcdatasource.ataccama.one.driver.redshift.disallowed-indexes-table-types = SYNONYM
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.redshift.properties.NAME_OF_THE_CUSTOM_PROPERTY = CUSTOM_PROPERTY_VALUE
#plugin.jdbcdatasource.ataccama.one.driver.redshift.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.add-column-pattern = ADD COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.alter-column-pattern = ALTER COLUMN {column} TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.not-null-superfluous-column-strategy = drop
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.use-implicit-transaction-for-ddl = true
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.INTEGER = integer
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.BOOLEAN = boolean
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.DATETIME = timestamp
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.FLOAT = numeric({columnSize =32},{fractionalDigits =8})
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.FLOAT.real = real
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.FLOAT.real.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.FLOAT.double = double precision
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.STRING = varchar({columnSize =128})
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.STRING.LIMITED = VARCHAR(65535)
plugin.jdbcdatasource.ataccama.one.driver.redshift.data-export.type-mappings.STRING.LIMITED.when = columnSize > 65535
Snowflake configuration
Snowflake JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.snowflake.name=Snowflake
plugin.jdbcdatasource.ataccama.one.driver.snowflake.connection-pattern=jdbc:snowflake://<hostname>:<port>?db=<database>
plugin.jdbcdatasource.ataccama.one.driver.snowflake.provider-class = com.ataccama.dpe.plugin.snowflake.jdbc.SnowflakeDataSourceClientProvider
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.pooling-enabled = true
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.connection-timeout = 20000
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.idle-timeout = 300000
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.max-lifetime = 900000
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.minimum-idle = 1
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.snowflake.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.snowflake.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.sampling-query-pattern = select {columns} from {table} sample bernoulli({percentage100Limit})
plugin.jdbcdatasource.ataccama.one.driver.snowflake.query-quotation-mark =\"
plugin.jdbcdatasource.ataccama.one.driver.snowflake.disallowed-indexes-table-types=SYNONYM
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.properties.NAME_OF_THE_CUSTOM_PROPERTY=CUSTOM_PROPERTY_VALUE
#plugin.jdbcdatasource.ataccama.one.driver.snowflake.allow-partial-listing=false
plugin.jdbcdatasource.ataccama.one.driver.snowflake.schema-exclude-pattern=^(INFORMATION_SCHEMA)|(information_schema)$
plugin.jdbcdatasource.ataccama.one.driver.snowflake.schema-include-pattern=
plugin.jdbcdatasource.ataccama.one.driver.snowflake.table-exclude-pattern=
plugin.jdbcdatasource.ataccama.one.driver.snowflake.table-include-pattern=
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.disabled=false
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.alter-multiple-columns=false
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.add-column-pattern = ADD COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.alter-column-pattern = ALTER COLUMN {column} SET DATA TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.drop-column-pattern = DROP COLUMN {column} CASCADE
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.make-column-nullable-pattern = ALTER COLUMN {column} DROP NOT NULL
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.delete-table-pattern = DELETE FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.DATE=DATE
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.INTEGER=NUMBER(10)
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.BOOLEAN=BOOLEAN
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.LONG=NUMBER(20)
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.DATETIME=DATETIME
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.FLOAT=NUMBER({columnSize=32},{fractionalDigits=8})
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.STRING=VARCHAR({columnSize=128})
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.STRING.LIMITED=VARCHAR(16777216)
plugin.jdbcdatasource.ataccama.one.driver.snowflake.data-export.type-mappings.STRING.LIMITED.when=columnSize > 16777216
Apache Cassandra configuration
Apache Cassandra requires a primary key defined for every table.
Make sure you specify the plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.create-table-primary-key-strategy property.
|
Apache Cassandra JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.cassandra.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.cassandra.name = Cassandra
plugin.jdbcdatasource.ataccama.one.driver.cassandra.connection-pattern = jdbc:cassandra://<hostname>:<port>
plugin.jdbcdatasource.ataccama.one.driver.cassandra.driver-class-path = CassandraJDBC42*.jar
plugin.jdbcdatasource.ataccama.one.driver.cassandra.driver-class = com.simba.cassandra.jdbc42.Driver
plugin.jdbcdatasource.ataccama.one.driver.cassandra.pooling-enabled = true
plugin.jdbcdatasource.ataccama.one.driver.cassandra.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.cassandra.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.cassandra.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.cassandra.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.cassandra.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.cassandra.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.cassandra.preview-query-pattern = SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.sampling-query-pattern = SELECT {columns} FROM {table} LIMIT {limit};
plugin.jdbcdatasource.ataccama.one.driver.cassandra.query-quotation-mark =\"
plugin.jdbcdatasource.ataccama.one.driver.cassandra.schema-regex = jdbc:cassandra://.*?/([a-zA-Z0-9_]*).*
#plugin.jdbcdatasource.ataccama.one.driver.cassandra.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.create-table-primary-key-strategy = first_column
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.add-column-pattern = ADD {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.alter-column-pattern = ALTER {column} TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.drop-column-pattern = DROP {column}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.not-null-superfluous-column-strategy = drop
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.incompatible-column-type-strategy = fail
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.delete-table-pattern = TRUNCATE {table}
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.DATE = date
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.INTEGER = int
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.BOOLEAN = boolean
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.LONG = bigint
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.DATETIME = timestamp
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.FLOAT = decimal
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.FLOAT.float = float
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.FLOAT.float.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT"
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.FLOAT.double = double
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.FLOAT.double.when = jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.cassandra.data-export.type-mappings.STRING = text
BigQuery configuration
BigQuery JDBC properties
# Disabled by default (disabled = true)
plugin.jdbcdatasource.ataccama.one.driver.bq.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.bq.name = Big Query
plugin.jdbcdatasource.ataccama.one.driver.bq.skip-database-level = false
plugin.jdbcdatasource.ataccama.one.driver.bq.connection-pattern = jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId =<projectID>;
plugin.jdbcdatasource.ataccama.one.driver.bq.driver-class-path = GoogleBigQueryJDBC42.jar
plugin.jdbcdatasource.ataccama.one.driver.bq.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.bigquery.BigQueryDataSourceClientProvider
plugin.jdbcdatasource.ataccama.one.driver.bq.additional-classpath-files = bigQueryLibs/*.jar
plugin.jdbcdatasource.ataccama.one.driver.bq.driver-class = com.simba.googlebigquery.jdbc42.Driver
plugin.jdbcdatasource.ataccama.one.driver.bq.pooling-enabled = false
plugin.jdbcdatasource.ataccama.one.driver.bq.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.bq.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.bq.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.bq.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.bq.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.bq.full-select-query-pattern = #standardSQL \n \
SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.bq.preview-query-pattern = #standardSQL \n \
SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.bq.dsl-query-preview-query-pattern = #standardSQL \n \
SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.bq.dsl-query-import-metadata-query-pattern = #standardSQL \n \
SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
#plugin.jdbcdatasource.ataccama.one.driver.bq.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.bq.row-count-query-pattern = #standardSQL \n \
SELECT row_count FROM `{database}`.`{schema}`.__TABLES__ WHERE table_id = '{simpleTable}'
plugin.jdbcdatasource.ataccama.one.driver.bq.sampling-query-pattern = #standardSQL \n \
SELECT {columns} FROM {table} WHERE RAND() < {percentageLimit};
plugin.jdbcdatasource.ataccama.one.driver.bq.query-quotation-mark =`
# This driver supports custom properties, which can be set through:
#plugin.jdbcdatasource.ataccama.one.driver.bq.properties.NAME_OF_THE_CUSTOM_PROPERTY = CUSTOM_PROPERTY_VALUE
plugin.jdbcdatasource.ataccama.one.driver.bq.properties.Timeout = 7200
#plugin.jdbcdatasource.ataccama.one.driver.bq.properties.AllowLargeResults = 1
#plugin.jdbcdatasource.ataccama.one.driver.bq.properties.LargeResultDataset =_simba_jdbc
#plugin.jdbcdatasource.ataccama.one.driver.bq.properties.LargeResultTable = temp_table_{now}
#plugin.jdbcdatasource.ataccama.one.driver.bq.allow-partial-listing = false
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.create-table-pattern = CREATE TABLE {table} ({columns})
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.create-table-column-pattern = {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.fragment-separator = ,\n
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.alter-table-pattern = ALTER TABLE {table} {commands}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.alter-multiple-columns = false
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.add-column-pattern = ADD COLUMN {column} {type}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.alter-column-pattern = ALTER COLUMN {column} SET DATA TYPE {type}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.drop-column-pattern = DROP COLUMN {column}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.make-column-nullable-pattern = ALTER COLUMN {column} DROP NOT NULL
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.incompatible-column-type-strategy = fail
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.delete-table-pattern = truncate table {table}
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.DATE = DATE
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.INTEGER = INT
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.BOOLEAN = BOOL
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.LONG = INT64
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.DATETIME = DATETIME
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.FLOAT = BIGNUMERIC({columnSize = 32},{fractionalDigits = 8})
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.FLOAT.float64= FLOAT64
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.FLOAT.float64.when = jdbcColumnType == "REAL" || jdbcColumnType == "FLOAT" || jdbcColumnType == "DOUBLE"
plugin.jdbcdatasource.ataccama.one.driver.bq.data-export.type-mappings.STRING = STRING({columnSize = 128})
plugin.jdbcdatasource.ataccama.one.driver.bq.parent-resource-last = true
IBM Db2 configuration
IBM Db2 JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.db2.name=DB2
plugin.jdbcdatasource.ataccama.one.driver.db2.connection-pattern=jdbc:db2://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.db2.driver-class-path=db2jcc4.jar
plugin.jdbcdatasource.ataccama.one.driver.db2.driver-class=com.ibm.db2.jcc.DB2Driver
plugin.jdbcdatasource.ataccama.one.driver.db2.full-select-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.db2.preview-query-pattern=SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.db2.dsl-query-preview-query-pattern=SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.db2.dsl-query-import-metadata-query-pattern=SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.db2.row-count-query-pattern=SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.db2.sampling-query-pattern = SELECT {columns} FROM {table} WHERE RANDOM() < {percentageLimit} limit {limit}
# Depending on the Db2 server version, instead of 'values current server' you might need to use the command 'select current_server from sysibm.sysdummy1' for the following property. Run both commands on your database server before modifying the configuration. The server name is used as the top-level location of imported catalog items.
plugin.jdbcdatasource.ataccama.one.driver.db2.location-query = values current server
IBM Netezza configuration
IBM Netezza JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.netezza.name=Netezza
plugin.jdbcdatasource.ataccama.one.driver.netezza.connection-pattern=jdbc:netezza://<hostname>:<port>/<database>
plugin.jdbcdatasource.ataccama.one.driver.netezza.driver-class-path=nzjdbc.jar
plugin.jdbcdatasource.ataccama.one.driver.netezza.driver-class=org.netezza.Driver
plugin.jdbcdatasource.ataccama.one.driver.netezza.pooling-enabled=true
plugin.jdbcdatasource.ataccama.one.driver.netezza.connection-timeout=20000
plugin.jdbcdatasource.ataccama.one.driver.netezza.idle-timeout=300000
plugin.jdbcdatasource.ataccama.one.driver.netezza.max-lifetime=900000
plugin.jdbcdatasource.ataccama.one.driver.netezza.minimum-idle=1
plugin.jdbcdatasource.ataccama.one.driver.netezza.maximum-pool-size=5
plugin.jdbcdatasource.ataccama.one.driver.netezza.full-select-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.netezza.preview-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.netezza.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.netezza.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.netezza.row-count-query-pattern=SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.netezza.sampling-query-pattern=SELECT {columns} FROM {table} LIMIT {limit}
plugin.jdbcdatasource.ataccama.one.driver.netezza.query-quotation-mark=\"
plugin.jdbcdatasource.ataccama.one.driver.netezza.connection-test-query=select 1
Informix configuration
For Informix, you need to refer to tables by a simplified syntax with no reference to the catalog: {schema}.{simpleTable}
, where:
-
{schema}
- Schema name. -
{simpleTable}
- Name of the table.
Informix JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.informix.name = INFORMIX
plugin.jdbcdatasource.ataccama.one.driver.informix.connection-pattern = jdbc:informix-sqli://<hostname>:<port>/<dbname>:informixserver =<server_name>
plugin.jdbcdatasource.ataccama.one.driver.informix.driver-class-path = jdbc-4.10.8.1.jar
plugin.jdbcdatasource.ataccama.one.driver.informix.driver-class = com.informix.jdbc.IfxDriver
plugin.jdbcdatasource.ataccama.one.driver.informix.pooling-enabled = true
plugin.jdbcdatasource.ataccama.one.driver.informix.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.informix.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.informix.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.informix.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.informix.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.informix.full-select-query-pattern = SELECT {columns} FROM {schema}.{simpleTable}
plugin.jdbcdatasource.ataccama.one.driver.informix.preview-query-pattern = SELECT {columns} FROM {schema}.{simpleTable} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.informix.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.informix.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.informix.row-count-query-pattern = SELECT COUNT(*) FROM {schema}.{simpleTable}
plugin.jdbcdatasource.ataccama.one.driver.informix.sampling-query-pattern = SELECT {columns} FROM {schema}.{simpleTable} WHERE 0 < {percentageLimit} limit {limit}
plugin.jdbcdatasource.ataccama.one.driver.informix.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.informix.disabled = false
plugin.jdbcdatasource.ataccama.one.driver.informix.query-quotation-mark =\u0020
Dremio configuration
Dremio JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.dremio.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.dremio.name = Dremio
plugin.jdbcdatasource.ataccama.one.driver.dremio.connection-pattern = jdbc:dremio:direct =<hostname>:<port>[;schema =<schema>]
plugin.jdbcdatasource.ataccama.one.driver.dremio.driver-class-path = dremio-jdbc-driver*.jar
plugin.jdbcdatasource.ataccama.one.driver.dremio.driver-class = com.dremio.jdbc.Driver
plugin.jdbcdatasource.ataccama.one.driver.dremio.pooling-enabled = false
plugin.jdbcdatasource.ataccama.one.driver.dremio.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.dremio.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.dremio.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.dremio.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.dremio.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.dremio.profiling-sample-limit = 100000
plugin.jdbcdatasource.ataccama.one.driver.dremio.full-select-query-pattern = SELECT {columns} FROM "{schema}"."{simpleTable}"
plugin.jdbcdatasource.ataccama.one.driver.dremio.preview-query-pattern = SELECT {columns} FROM "{schema}"."{simpleTable}" LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.dremio.row-count-query-pattern = SELECT COUNT(*) FROM "{schema}"."{simpleTable}"
plugin.jdbcdatasource.ataccama.one.driver.dremio.sampling-query-pattern = SELECT {columns} FROM "{schema}"."{simpleTable}" WHERE RAND() < {percentageLimit};
plugin.jdbcdatasource.ataccama.one.driver.dremio.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.dremio.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
Sybase configuration
Sybase JDBC properties
# Disabled by default, change to disabled = false to enable driver configuration
plugin.jdbcdatasource.ataccama.one.driver.sybase.disabled = true
plugin.jdbcdatasource.ataccama.one.driver.sybase.name = Sybase
plugin.jdbcdatasource.ataccama.one.driver.sybase.connection-pattern = jdbc:jtds:sybase://<hostname>:<port>;DatabaseName =<database>
plugin.jdbcdatasource.ataccama.one.driver.sybase.driver-class-path = jtds-*.jar
plugin.jdbcdatasource.ataccama.one.driver.sybase.driver-class = net.sourceforge.jtds.jdbc.Driver
plugin.jdbcdatasource.ataccama.one.driver.sybase.pooling-enabled = true
plugin.jdbcdatasource.ataccama.one.driver.sybase.connection-timeout = 20000
plugin.jdbcdatasource.ataccama.one.driver.sybase.idle-timeout = 300000
plugin.jdbcdatasource.ataccama.one.driver.sybase.max-lifetime = 900000
plugin.jdbcdatasource.ataccama.one.driver.sybase.minimum-idle = 1
plugin.jdbcdatasource.ataccama.one.driver.sybase.maximum-pool-size = 5
plugin.jdbcdatasource.ataccama.one.driver.sybase.connection-test-query = SELECT 1
plugin.jdbcdatasource.ataccama.one.driver.sybase.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sybase.preview-query-pattern = SELECT TOP {previewLimit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sybase.dsl-query-preview-query-pattern = SELECT TOP {previewLimit} * FROM ({dslQuery}) dslQuery
plugin.jdbcdatasource.ataccama.one.driver.sybase.dsl-query-import-metadata-query-pattern = SELECT TOP 0 * FROM ({dslQuery}) dslQuery
plugin.jdbcdatasource.ataccama.one.driver.sybase.row-count-query-pattern = SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sybase.sampling-query-pattern = SELECT TOP {limit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sybase.disallowed-indexes-table-types = SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.sybase.bulk-import-table-count-threshold = 30
plugin.jdbcdatasource.ataccama.one.driver.sybase.row-number-column = ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) as ____rno#
SQLite configuration
SQLite JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.sqlite.name=Sqlite3
plugin.jdbcdatasource.ataccama.one.driver.sqlite.connection-pattern=jdbc:sqlite:/path
plugin.jdbcdatasource.ataccama.one.driver.sqlite.driver-class-path=sqlite-jdbc-*.jar
plugin.jdbcdatasource.ataccama.one.driver.sqlite.driver-class=org.sqlite.JDBC
plugin.jdbcdatasource.ataccama.one.driver.sqlite.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.sqlite.SqliteDataSourceClientProvider
plugin.jdbcdatasource.ataccama.one.driver.sqlite.pooling-enabled=false
plugin.jdbcdatasource.ataccama.one.driver.sqlite.connection-timeout=20000
plugin.jdbcdatasource.ataccama.one.driver.sqlite.idle-timeout=300000
plugin.jdbcdatasource.ataccama.one.driver.sqlite.max-lifetime=900000
plugin.jdbcdatasource.ataccama.one.driver.sqlite.minimum-idle=1
plugin.jdbcdatasource.ataccama.one.driver.sqlite.maximum-pool-size=5
plugin.jdbcdatasource.ataccama.one.driver.sqlite.profiling-sample-limit=100000
plugin.jdbcdatasource.ataccama.one.driver.sqlite.full-select-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sqlite.preview-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sqlite.row-count-query-pattern=SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.sqlite.sampling-query-pattern=SELECT {columns} FROM {table} WHERE RAND() < {percentageLimit};
plugin.jdbcdatasource.ataccama.one.driver.sqlite.query-quotation-mark=`
plugin.jdbcdatasource.ataccama.one.driver.sqlite.dsl-query-preview-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT WHERE RAND() < {percentageLimit}
plugin.jdbcdatasource.ataccama.one.driver.sqlite.dsl-query-import-metadata-query-pattern = SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
Azure Data Explorer (ADX) configuration
Azure Data Explorer (ADX) JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.adx.name=Azure Data Explorer
plugin.jdbcdatasource.ataccama.one.driver.adx.connection-pattern=jdbc:sqlserver://<hostname>:<port>;databaseName=<database>
plugin.jdbcdatasource.ataccama.one.driver.adx.driver-class-path = mssql-jdbc*.jar
plugin.jdbcdatasource.ataccama.one.driver.adx.additional-classpath-files = mssqlLibs/;
plugin.jdbcdatasource.ataccama.one.driver.adx.provider-class = com.ataccama.dpe.plugin.dataconnect.jdbc.provider.mssql.ADXDataSourceClientProvider
plugin.jdbcdatasource.ataccama.one.driver.adx.full-select-query-pattern = SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.adx.preview-query-pattern = SELECT TOP {previewLimit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.adx.dsl-query-preview-query-pattern = SELECT TOP {previewLimit} * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.adx.dsl-query-import-metadata-query-pattern = SELECT TOP 0 * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.adx.row-count-query-pattern = SELECT COUNT_BIG() FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.adx.sampling-query-pattern = IF (SELECT TABLE_TYPE FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '{simpleTable}' AND TABLE_SCHEMA = '{schema}') = 'BASE TABLE' \
EXEC('SELECT TOP {limit} {columns} FROM {table} TABLESAMPLE (CASE WHEN {percentageLimit}*110 > 100 THEN 100 ELSE {percentageLimit}110 END PERCENT)') \
ELSE SELECT TOP {limit} {columns} FROM (select t1., RAND(CHECKSUM(NEWID())) as ____rnd from {table} as t1) as t1 where ____rnd < {percentageLimit} * 1.1
plugin.jdbcdatasource.ataccama.one.driver.adx.disallowed-indexes-table-types=SYNONYM
plugin.jdbcdatasource.ataccama.one.driver.adx.bulk-import-table-count-threshold=30
plugin.jdbcdatasource.ataccama.one.driver.adx.row-number-column=ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) as ____rno
#plugin.jdbcdatasource.ataccama.one.driver.adx.allow-partial-listing=false
plugin.jdbcdatasource.ataccama.one.driver.adx.schema-exclude-pattern=
plugin.jdbcdatasource.ataccama.one.driver.adx.schema-include-pattern=
plugin.jdbcdatasource.ataccama.one.driver.adx.table-exclude-pattern=
plugin.jdbcdatasource.ataccama.one.driver.adx.table-include-pattern=
AWS Athena configuration
AWS Athena JDBC properties
plugin.jdbcdatasource.ataccama.one.driver.athena.disabled=false
plugin.jdbcdatasource.ataccama.one.driver.athena.name=Athena
ataccama.one.data-source.allowed-table-types=TABLE,VIEW,EXTERNAL_TABLE,VIRTUAL_VIEW
plugin.jdbcdatasource.ataccama.one.driver.athena.disallowed-indexes-schema-names=SYS
plugin.jdbcdatasource.ataccama.one.driver.athena.disallowed-indexes-table-types=SYNONYM,VIEW
plugin.jdbcdatasource.ataccama.one.driver.athena.connection-pattern=jdbc:awsathena://
plugin.jdbcdatasource.ataccama.one.driver.athena.additional-classpath-files=/opt/app/ataccama/one/dpe/lib/runtime/aws-java-sdk-core-1.11.820.jar
plugin.jdbcdatasource.ataccama.one.driver.athena.driver-class-path=AthenaJDBC42*.jar
plugin.jdbcdatasource.ataccama.one.driver.athena.driver-class=com.simba.athena.jdbc.Driver
plugin.jdbcdatasource.ataccama.one.driver.athena.pooling-enabled=true
plugin.jdbcdatasource.ataccama.one.driver.athena.connection-timeout=20000
plugin.jdbcdatasource.ataccama.one.driver.athena.idle-timeout=300000
plugin.jdbcdatasource.ataccama.one.driver.athena.max-lifetime=900000
plugin.jdbcdatasource.ataccama.one.driver.athena.minimum-idle=1
plugin.jdbcdatasource.ataccama.one.driver.athena.maximum-pool-size=5
plugin.jdbcdatasource.ataccama.one.driver.athena.profiling-sample-limit=100000
plugin.jdbcdatasource.ataccama.one.driver.athena.full-select-query-pattern=SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.athena.dsl-query-preview-query-pattern=SELECT * FROM ({dslQuery}) dslQuery LIMIT 0
plugin.jdbcdatasource.ataccama.one.driver.athena.dsl-query-import-metadata-query-pattern=SELECT * FROM ({dslQuery}) dslQuery LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.athena.preview-query-pattern=SELECT {columns} FROM {table} LIMIT {previewLimit}
plugin.jdbcdatasource.ataccama.one.driver.athena.row-count-query-pattern=SELECT COUNT(*) FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.athena.sampling-query-pattern=SELECT {columns} FROM {table} TABLESAMPLE bernoulli({percentageLimit}*100)
Troubleshooting
Microsoft SQL Server SSL issues
Connections to older versions of MSSQL might fail due to JDK algorithm restrictions. If this happens, SSL-related issues are found in the DPE logs.
Possible solutions: If they are present, remove TLSv1
and TLSv1.1
from the list of values for the property jdk.tls.disabledAlgorithms
in the java.security
and java.config
files (usually found in /etc/crypto-policies/back-end
).
If java.config
is not present in your distribution, it is sufficient to edit just the java.security
file.
Additionally, in java.config
, if present, allow key length to be 1024 bits by changing the value of keySize
in jdk.certpath.disabledAlgorithms
and jdk.tls.disabledAlgorithm
.
Key length restrictions are likely to be found on the algorithms in RedHat Enterprise Linux distributions.
Example using the jdk.tls.disabledAlgorithms
property:
jdk.tls.disabledAlgorithms=DH keySize < 768, TLSv1.1, TLSv1, SSLv3, SSLv2, DHE_DSS, RSA_EXPORT, DHE_DSS_EXPORT, DHE_RSA_EXPORT, DH_DSS_EXPORT, DH_RSA_EXPORT, DH_anon, ECDH_anon, DH_RSA, DH_DSS, ECDH, 3DES_EDE_CBC, DES_CBC, RC4_40, RC4_128, DES40_CBC, RC2, HmacMD5
jdk.tls.disabledAlgorithms=DH keySize < 1024, SSLv3, SSLv2, DHE_DSS, RSA_EXPORT, DHE_DSS_EXPORT, DHE_RSA_EXPORT, DH_DSS_EXPORT, DH_RSA_EXPORT, DH_anon, ECDH_anon, DH_RSA, DH_DSS, ECDH, 3DES_EDE_CBC, DES_CBC, RC4_40, RC4_128, DES40_CBC, RC2, HmacMD5
Dremio error: Failure getting metadata
In case you encounter the following error Failure getting metadata: Number of fields in dataset exceeded the maximum number of fields of 800
, you need to review and modify the configuration of wide table limits in Dremio.
For more information, refer to the official Dremio documentation, specifically Creating and Querying Wide Tables.
Microsoft SQL Server connection error
You might experience an error while trying to connect to an Microsoft SQL data source due to a failure to establish a secure connection using Secure Sockets Layer (SSL) encryption.
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
To fix this, add ;encrypt=false
to the following property:
plugin.jdbcdatasource.ataccama.one.driver.mssql.connection-pattern = jdbc:sqlserver://<hostname>:<port>;databaseName =<database>;encrypt=false
Azure Synapse truncation error
When you preview or profile data or run monitoring projects, you might see an error message like this:
String or binary data would be truncated while reading column of type 'VARCHAR(8000)'. Check ANSI_WARNINGS
To resolve this error, add SET ANSI_WARNINGS OFF;
to the following properties, as shown here:
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.full-select-query-pattern = SET ANSI_WARNINGS OFF; SELECT {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.preview-query-pattern = SET ANSI_WARNINGS OFF; SELECT TOP {previewLimit} {columns} FROM {table}
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.dsl-query-preview-query-pattern = SET ANSI_WARNINGS OFF; SELECT TOP {previewLimit} * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.dsl-query-import-metadata-query-pattern = SET ANSI_WARNINGS OFF; SELECT TOP 0 * FROM ({dslQuery}) AS dslQuery
plugin.jdbcdatasource.ataccama.one.driver.azure-synapse.sampling-query-pattern = SET ANSI_WARNINGS OFF; SELECT TOP {limit} {columns} FROM {table}
Snowflake error: Database does not exist or not authorized
When trying to preview, import, or profile a Snowflake view, you might see an error message like this:
Snowflake database does not exist or is not authorized
Failure during expansion of view '<view>': SQL compilation error: Database '<database>' does not exist or not authorized.
This means one of the following:
-
The view you wanted to work with references a table for which you don’t have the necessary access rights. We recommend contacting your database admin to verify that your permissions are correctly assigned.
-
The view is based on a table from a database that no longer exists.
Not all data counted when Snowflake database is queried
When using the default implementation, there is a limit to how many records can be returned. This means that even if your Snowflake schema has, for example, 200000 tables, the count is returned as c.10000. This issue is a result of limits in JDBC metadata queries.
To resolve this problem, you can set the property jdbc.snowflake.useInformationSchemaQueries
to true
, in which case Snowflake information schema queries replaces JDBC metadata queries.
This property is set via JAVA_OPTS
, as follows:
plugin.executor-launch-model.ataccama.one.launch-type-properties.LOCAL.env.JAVA_OPTS=-Djdbc.snowflake.useInformationSchemaQueries=true
Connecting to Databricks using OpenJDK 17 error
When trying to connect to Databricks using OpenJDK 17, the following error might occur:
[Databricks][JDBCDriver](500540) Error caught in BackgroundFetcher. Foreground thread ID: 177. Background thread ID: 211. Error caught: Could not initialize class com.databricks.client.jdbc42.internal.apache.arrow.memory.util.MemoryUtil.
To resolve this problem, add EnableArrow=0
to your JDBC URL.
BigQuery connection issues
When attempting to troubleshoot BigQuery connection issues, try the following:
-
Consult the ODBC and JDBC drivers for BigQuery documentation.
-
Consult the JDBC driver documentation. Included as a PDF in the downloaded JDBC driver ZIP file.
-
The recommended predefined Service Account roles used to access BigQuery data are BigQuery Data Viewer (
roles/bigquery.dataViewer
) and BigQuery Job User (roles/bigquery.jobUser
). -
Pay attention to the Large Result Set Support section and the related
AllowLargeResults
,LargeResultDataset
, andLargeResultTable
properties. -
If you are using a large result set:
-
Make sure that the
LargeResultDataset
option is specified, the specified dataset exists, and is in the same region as the queried table. -
Otherwise, the Service Account used must have
bigquery.datasets.create
permissions on the BigQuery instance specified by theProjectId
property. -
Note that setting the
LargeResultTable
value causes all results to be written to the same table. However, the table creation time is not shown when the value is set.
-
-
If you are setting the
OAuthPvtKeyPath
driver property as a file path, for example, the key file is present on the DPE or the Runtime server:-
Set it directly as a JDBC string, not as a driver property object.
-
Make sure the user running ONE (DPE or Runtime server) has read access to the key files
.json
and.p12
.
-
-
Use
LogLevel=6
andLogPath=<path>
driver properties for the JDBC driver to create<path>/BigQuery…log
files with detailed information about connecting to BigQuery, metadata processing, and SQL commands execution.
Azure SQL database token failure
Connecting to Azure SQL database fails with the following error:
MSI Token failure: Failed to acquire access token from IMDS, verify your clientId
The error means that the clientId
is either wrong or missing some required privileges.
Verify the following in your environment:
-
Make sure that the Azure AD account is created within the Azure SQL server. The following example shows what the creation SQL queries look like. The user is in the table named
sys.sysusers
.Creation SQL queriesCREATE USER name_of_the_user_managed_identity FROM EXTERNAL PROVIDER; ALTER ROLE db_datareader ADD MEMBER name_of_the_user_managed_identity;
-
Make sure that in your Azure SQL server, the following property is enabled on the Set server firewall tab: Allow Azure services and resources to access this server.
-
On the virtual machine (VM) where your DPE is running, check Identity > User assigned. The managed identity should match the one in the JDBC string.
Sample JDBC stringjdbc:sqlserver://host.database.windows.net:1433;encrypt=true;database=yourDB;encrypt=true;trustServerCertificate=false;loginTimeout=30;hostNameInCertificate=*.database.windows.net;authentication=ActiveDirectoryMSI;msiClientId=abcdxyz;
-
In most cases, completing the previous steps should be enough for DPE or any other external applications installed inside the VM to successfully connect to Azure SQL. If the problem persists, try enabling the System assigned and remove
msiClientId
.
PostgreSQL issue: Jobs getting stuck in DPE
If you encounter jobs getting stuck while trying to read data, add the following driver properties to solve the issue. For more information about the properties, see the official PostgreSQL documentation.
Property | Type | Encrypted | Value | Description |
---|---|---|---|---|
|
Value |
No |
|
Enable or disable the TCP keep-alive probe. |
|
Value |
No |
|
Define a timeout value used for socket read operations. |
Was this page useful?