Skip to content

Adding a Google Data Lineage Connection

Prerequisites

  • A user with sufficient permissions is required to establish a connection with Google Data Lineage API.
  • Zeenea traffic flows towards the data source must be open.

Note

You can find a link to the configuration template in Zeenea Connector Downloads.

Supported Versions

The Data Lineage connector was developed and tested with the web version of the product.

Installing the Plugin

The Google plugin can be downloaded here: Zeenea Connector Downloads.

For more information on how to install a plugin, please refer to the following article: Installing and Configuring Connectors as a Plugin.

Declaring the Connection

Creating and configuring connectors is done through a dedicated configuration file located in the /connections folder of the relevant scanner.

Read more: Managing Connections

In order to establish a connection with a Data Lineage instance, specifying the following parameters in the dedicated file is required:

Parameter Expected value
name The name that will be displayed to catalog users for this connection.
code The unique identifier of the connection on the Zeenea platform. Once registered on the platform, this code must not be modified or the connection will be considered as new and the old one removed from the scanner.
connector_id The type of connector to be used for the connection. Here, the value must be google-data-lineage and this value must not be modified.
connection.json_key JSON access key.

The key can be indicated directly or put in a separate file. In the latter case, this parameter indicates the path to the file in the form of a URI of scheme file:.

Example: file:///opt/zeenea-scanner/connections/gdc_json_key.json

Warning: If you indicate directly the token, you must use triple quotes to encapsulate the key as a parameter. Example: """{my: "json"}""".
scope.project_id List of project ids separated by comma
scope.location_id List of location ids separated by comma
filter To filter synchronized data process. See Rich Filters.
proxy.scheme Depending on the proxy, http or https
proxy.hostname Proxy address
proxy.port Proxy port
proxy.username Proxy username
proxy.password Proxy account password
quota.read_per_minute Reads per minute quota value. Default value: 1000 (default value of Google Data Lineage).
quota.search_per_user_per_minute Search quota value per user per minute. Default value: 180.
quota.timeout_minute Maximum waiting time when waiting for the availability of a quota. Default value: 10 minutes.
quota.max_retry Maximum number of retries when a request encounters a quota expiration error

Rich Filters

The Data Lineage connector benefits from the feature of rich filters in the configuration of the connector.

Read more: Filters

The filter can apply to the following criteria:

Criteria Description
name Process name

User Permissions

In order to collect metadata, the running user's permissions must allow them to read data lineage information.

Here, the user must have the followings authorizations:

  • datalineage.events.list
  • datalineage.processes.list
  • datalineage.runs.list

Data Extraction

To extract information, the connector runs the following request on the Google Data Lineage API:

  • projects.locations.processes.list
  • projects.locations.processes.runs.list
  • projects.locations.processes.runs.lineageEvents.list

Collected Metadata

Synchronize

Collects the list of data processes accessible by the user from Google Data Lineage API.

Lineage

The connector will synchronize all processes identified in Google Data Lineage and automatically represent them in the catalog.

List of supported systems:

  • BigQuery
  • Dataplex
  • Redshift
  • MySQL
  • Oracle
  • PostgreSQL
  • SQL Server
  • Snowflake
  • DB2
  • Hive Metastore
  • Google Cloud Storage

Data Process

A data process is a Google Data Lineage transformation.

  • Name
  • Input: Input datasets
  • Output: Output datasets
  • Technical Data:

    • Project : Project identifier of the process
    • Location : Location identifier of the process
    • Origin : Google job's origin
    • Job ID : BigQuery job identifier
    • Id : Process identifier

Unique Identification Keys

A key is associated with each item of the catalog. When the object comes from an external system, the key is built and provided by the connector.

Read more: Identification Keys

Object Identification Key Description
Data process code/project_id/location_id/process_id - code: Unique identifier of the connection noted in the configuration file
- project_id: Google project identifier
- location_id: Google location identifier
- process_id: Google process identifier