This document is intended for data product owners who want to create and configure data products in Dataplex Universal Catalog.
For more information about the architecture and key concepts of data products, see About data products.
Before you begin
-
Enable the Dataplex, BigQuery APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. Ensure that your data assets (for example, BigQuery datasets, tables, and views) are created and populated.
For more information about creating data assets, see the following documents:
Identify or create the Google groups that you want to configure in your data product. Each data product must have a unique Google group.
Required roles
This section outlines the minimum IAM roles required for two primary user groups: data product owners (those who create and manage data products) and data product consumers (those who search for and use data products).
Roles for a data product owner
To get the permissions that you need to create and manage data products, ask your administrator to grant you the following IAM roles on the project:
-
Full permissions to create, update, delete, and manage permissions for data products:
Dataplex Data Products Admin (
roles/dataplex.dataProductsAdmin) -
Update and manage existing data products:
Dataplex Data Products Editor (
roles/dataplex.dataProductsEditor) -
Add aspects such as
schema,overview, andcontacts: Dataplex Entry and EntryLink Owner (roles/dataplex.entryOwner) -
Search for and add assets:
Dataplex Catalog Viewer (
roles/dataplex.catalogViewer) -
Edit system aspect types such as documentation and contract aspect of refresh cadence:
Dataplex Catalog Editor (
roles/dataplex.catalogEditor)
For more information about granting roles, see Manage access to projects, folders, and organizations.
These predefined roles contain the permissions required to create and manage data products. To see the exact permissions that are required, expand the Required permissions section:
Required permissions
The following permissions are required to create and manage data products:
-
Edit the
overviewsystem aspect type:dataplex.entryGroups.useOverviewAspect -
Edit the
refresh cadencesystem aspect type:dataplex.entryGroups.useRefreshCadenceAspect
You might also be able to get these permissions with custom roles or other predefined roles.
Roles for a data product consumer
For the data product consumers to search for, view, and request access to data products, as a data product owner, you must ensure the data product is discoverable. To do this, grant the data product consumers the following IAM roles on the data product:
- Search for data products and access them in Dataplex Universal Catalog Search:
Dataplex Data Product Consumer (
dataplex.dataProductsConsumer) - Read-only access to view data product definitions and metadata:
Dataplex Data Product Viewer (
dataplex.dataProductViewer) - Request access to data products: Dataplex Data Product Consumer
(
dataplex.dataProductsConsumer)
Create and configure a data product
Creating a data product involves the following high-level tasks:
Create a data product
This mandatory initial step requires defining core details such as a unique data product name, description, region where the data product is created, and owner details.
Optional: Add assets
In this phase, you select assets to include in the data product. A key constraint is that assets must reside in the same region as the data product itself. You can add a maximum of 10 assets to a data product.
For the list of supported assets, see Assets supported.
Optional: Configure access groups and asset permissions
In this optional phase, you simplify access control by creating access groups. These access groups act as user-friendly aliases (for example,
AnalystorReader) for underlying Google groups. You then assign permissions by selecting a specific IAM role and mapping it to an access group for a specific asset.Optional: Add additional details such as contracts, aspects, and documentation
This optional phase enhances governance and metadata. You can add a contract, which is a first-party aspect type, to formally communicate the agreed-upon data refresh cadence, specifying parameters like refresh frequency, refresh time, and threshold. You also include Aspects to provide additional metadata for your data product. Additionally, you add rich text documentation, such as user guides and sample queries.
To create and configure a data product, complete the steps in the following sections:
Create a data product
In the Google Cloud console, go to the Dataplex Universal Catalog Data products page.
Click Create.
In the Create data products pane, enter the following details:
- Data product name: Enter a unique name for your data product.
- Data product ID: This is an auto-generated unique identifier. You can edit this field.
- Project ID: This is a unique identifier of the project where the data product is created. Browse and select the project.
- Region: Select the region or multi-region where the data product is created.
- Icon: Browse and select an icon to visually identify the data product. This is optional.
- Description: Enter a brief description of the data product.
- Contacts: Enter the email ID of the data product owner.
- Labels: Add key-value labels to organize your resources. This is optional.
Click Create data product.
Optional: Add assets
In the Add assets pane, click +Add.
Search for and select the assets that you want to add to your data product. The assets you select must reside in the same region as the data product.
If you have necessary permissions, you can view the metadata of assets by clicking the asset.
To refine the search results, use Filters.
After you select the assets, click Add.
Click Continue.
Optional: Configure access groups and asset permissions
In the Configure access groups and asset permissions pane, you can create access groups and assign permissions to assets.
Configure access groups
To configure access groups, follow these steps:
Click Add access group.
In the Access group name field, enter a name for the access group. For example,
Analyst.In the Access group description field, enter a description for the access group.
In the Access group identifier field, enter the email address of a Google group that you want to assign to this access group. Data product consumers who request access to this access group can be added as members to the mapped Google group.
If you don't have a Google group, you can create one. For more information, see Create and manage Google groups in the Google Cloud console.
Click Add.
Configure asset permissions
After you configure access groups, you can configure permissions for the assets in the data product:
In the Asset permissions section, select the asset for which you want to configure permissions.
Click Configure permissions.
In the Select access group field, select an access group.
In the Assign IAM role field, select an IAM role that you want to assign to the access group.
For example, if your asset is a BigQuery table named
Sales, and if you selectedAnalystaccess group, and assignedBigQuery Metadata Viewerrole to this access group, the data product consumers who are part of theAnalystaccess group haveBigQuery Metadata Viewerpermission on theSalestable.You can add multiple roles to an asset.
Click Configure. The asset now shows its assigned permissions.
To configure permissions for other assets, repeat the steps.
Click Continue.
Optional: Add additional details
In the Add additional details pane, you can add contracts, aspects, and additional documentation for the data product.
Add a contract
To add a contract, follow these steps:
Click Add contract.
In the Select contract field, select
Refresh cadence.In the Frequency field, select an agreed-upon schedule for how often data is updated or delivered, ensuring a predictable flow from data producer to data consumer. For example,
Weekly.In the Refresh time field, enter a maximum acceptable time when data is updated at its source and when it becomes available to the consumer. For example,
23:00 PST.In the Threshold (in minutes) field, enter a measurable limit in minutes for the acceptable delay in data delivery. For example, enter
30to set threshold as 30 minutes.Optional: In the Cron schedule field, enter a cron expression that defines the schedule for data generation and delivery in the format:
MINUTE HOUR DAY_OF_MONTH MONTH DAY_OF_WEEKThe following are the accepted values:
MINUTE:0-59HOUR:0-23DAY_OF_MONTH:1-31MONTH:1-31orJAN-DECDAY_OF_WEEK:0-6orSUN-SAT
For example,
0 8 * * 1-5runs at 8:00 AM on weekdays (Monday-Friday).Click Save.
Add additional metadata
To add additional metadata for the data product as aspects, follow these steps:
Click + Add aspect.
In the Select aspect type field, search for and select an aspect type from the list. For example,
Geo context.In the Country field, select the country to which the asset belongs.
In the Region field, select the business region to which the asset belongs.
Click Save.
To add additional documentation such as user guide or sample queries, click Edit next to Documentation. This opens a rich text editor. Add content and click Save.
Click Save.
The newly created data product appears on the Dataplex Universal Catalog Data products page.
What's next
- Learn more about managing data products.
- Learn how to search for data products.
- As a data consumer, learn how to request access to data products.