Create Data Sources

A data source is a logical object in GoodData that represents the database where your source data is stored. To integrate your database into GoodData, you connect it to a workspace. As a result, a data source is registered as an entity in GoodData.

Data sources can be created using the web UI, the API or the Python SDK. To create a data source, refer to one of the following articles:

Networking Issues

Having trouble connecting to your database? Consider the following:

  • Your database should be reachable via a public IP address.
  • If you are using IP whitelisting, allow the IP ranges relevant to your GoodData datacenter, see our IP Whitelisting.
  • If your database is on AWS and you can’t use a public IP, GoodData can set up a connection using AWS PrivateLink. See Use AWS PrivateLink.

Anatomy of a Data Source

A data source has the following properties:

Type

The type of database you are connecting to. For an exact list of avaliable types, submit a GET request to /api/v1/options/availableDrivers.

URL

The URL uses the standard JDBC URL format. For information about how to set up the JDBC URL for your database, review the Create Data Source article specific your database.

  • The URL must not be empty.

  • The URL must start with jdbc: and be constructed in the following format:

    jdbc:<database-type>://<host>:<port>/<path>?<param-1>=<value-1>&<param-2>=<value-2>

    You can use ; instead of ? and &.

    • The query cannot contain parameters that have been forbidden for security reasons. For more information, review the Create Data Source article specific your database..
    • Depending on the database, the path and query can be optional. For more information, review the Create Data Source article specific your database..
    • The combination of (database type, host, database) cannot be the same as the ones used for hosting internal data storages:
      • Analytics metadata (visualizations, metrics, …)
      • The internal OIDC identity provider (authentication)
      • Caching metadata (evidence of cache tables and their expiry)

Username and password

The username and password are optional. These can be empty if implicit authentication (for example, AWS Identity and Access Management) is used.

Tokens

Tokens are an alternative to usernames and passwords.

  • Example: BigQuery service account encoded by Base64

Review the Create Data Source article specific your database to find out if tokens are an option or a requirement for your set up.

Schema

A schema is required. A data source can be connected with only one schema. If you want to access multiple schemas in your database, create a separate data source for each schema.