Database Integration

The Transcend Database Integration allows user to connect the database of their choice using ODBC drivers. The databases that we currently support are:

  • Postgres
  • Redshift
  • MicrosoftSQL
  • MariaDB
  • Snowflake

Note: We also support Google BigQuery, but it has its own separate integration. The doc can be found here.

Connecting your database:

  1. Enter the connection info necessary to form a connection string.

    • You'll need the server name, database name, username, password and port.

    • Note that by connecting your database to Transcend, users in Transcend may run queries with the permissions granted to the database user.

  2. Connect the database.

Consider whether to use network level restriction when connecting to your database. The IP addresses that you connect with will vary depending on whether you are using a Transcend or self hosted Sombra gateway. We recommend using IP restriction to restrict access to your databases. Additionally, for the most secure connection to your database, we recommend using a self-hosted Sombra gateway.

If you are using a Transcend hosted Sombra gateway, you can find Transcend's IPs and more info on allowlisting IPs here.

If you are self hosting Sombra, you will want to look up the IP addresses of your Sombra cluster, and allowlist those IPs.

If you are connecting to Snowflake, you'll need to provision the Transcend user with the appropriate permissions. At minimum, Transcend needs to be assigned a default_warehouse as well as a role that has permission to access that warehouse.

There is also an option to configure a Database Enricher, which allows the ability to populate a privacy request by specifying a SQL query that will be run prior to the SQL query for the request.

  1. Go to the Identifiers section underneath Privacy Requests
  2. Select the + button beside the Enrichers section, which will open up a side bar.
  3. Select the Database enricher and enter all the necessary information, which includes:
  • Database Data Silo — Integration to run.

  • Title — Title of enricher

  • Description — Description of enricher

  • Input Identifier — Initial identifier that the enricher will accept. Privacy request would only use the enricher, if any of the identifiers is the same type as the input identifier specified here.

  • Output Identifier — The output identifier that will be mapped from the result of the SQL query

  • SQL Query — The SQL query to run.

    • This field only appear after filling in all the prior fields.
    • Query has to be of type SELECT. Ex. SELECT name FROM database
  • Field to Identifier Mapping — This is where we will map the result of the SQL query to the output identifier.

    • This field only appears after filling a valid SELECT SQL query
    • Mapping will be column names from the SQL query to the output identifier.
    • Each output identifier can be mapped to many column names
    • If the column name is a function, make sure to add an AS clause to map the result of the function
    • For any AS clause, only the word after AS will be used for mapping. Ex. COUNT(name) AS total then only total will be used for mapping

  1. Click Create Enricher

Currently, integrations that support this database enricher are:

  • Any database driver that can be picked from the Database integration
  • Google BigQuery
  • Snowflake