Catalog Administrator Guide > Enterprise Data Catalog Concepts > Composite Data Domains
  

Composite Data Domains

A composite data domain is a collection of data domains or other composite data domains linked using rules. A composite data domain helps you search for the required details of an entity across multiple schemas defined for the database. An entity refers to a particular subject for which you need all the associated information. For example, for an entity such as customer, you might want to search for all the associated details such as the customer name, age, location, and contact number. The details might be spread across multiple tables and columns in the database. Composite data domains help you define a search query that includes the entity details that you want to find from multiple schemas defined for the database.
Note: You must configure a primary key-foreign key relationship between tables if you want to search for entity details across multiple schemas.
A composite data domain helps you define search patterns based on a combination of existing data domains or composite data domains. Data domains in the example can be customer name, age, location and other details associated with the entity customer. In a composite data domain definition, you can define rules to link existing data domains or other composite data domains. Enterprise Data Catalog links multiple rules using OR operators and links the data domains or composite data domains in each rule using AND operators. Make sure that you create data domains before creating composite data domains.
After you create composite data domains and enable composite data domain discovery for resources, you can search for the entity using composite data domains in Enterprise Data Catalog. Enterprise Data Catalog finds the assets associated with the entity in the catalog.

Business Example

Sophie, a data steward at a retail chain, is asked to find specific details of customers from the customer details stored with the retail chain. The customer details are present across multiple tables in the retail chain database.
The tables in the database include the following details:
From the details, Sophie must find any of the following details that might help to identify the customer location:
The following table lists the steps that Sophie must perform to collect the required customer details:
Scenario
Resolution
Prerequisite to creating composite data domains
Sophie must define data domains based on the existing assets in the catalog.
Sophie creates the following data domains based on the customer details that she wants to collect:
  • - Street
  • - County
  • - Zip_code
  • - State
Create composite data domains
Sophie creates a composite data domain called customer_location and defines rules by linking data domains using the AND and OR operators as shown in the following list:
  • - Street AND County
  • OR
  • - Zip_code
  • OR
  • - State
Identify the resources and enable composite data domain discovery
Sophie identifies the required resources by performing a search in Enterprise Data Catalog based on the composite data domains created. Sophie then enables composite data domain discovery for the identified resources.
Search for the required customer details
Sophie can search using the composite data domain customer_location in Enterprise Data Catalog. The search retrieves a list of assets and tables that include the customer details that the retail chain requires.
Alternatively, Sophie can create the following three composite data domains (Street_county, Zip_code, and State) and include the composite data domains in a composite data domain definition, called as customer_location:
The customer_location composite data domain definition is as follows:

Composite Data Domain Discovery Workflow

The composite data domain discovery workflow includes the following phases:
  1. 1. Synchronizing composite data domains between Model Repository and catalog.
  2. 2. Identifying the list of composite data domains configured for a resource.
  3. 3. Identifying the list of data domains required for each composite data domain.
  4. 4. Fetching data domain discovery results for the data domains for the current resource.
  5. 5. Preparing expressions for each composite data domain and the data domain discovery results for each composite domain.
  6. 6. Using internal machine logic to evaluate the expressions and results.
  7. 7. Publishing the results to the catalog for search and discovery.
Note: Enterprise Data Catalog performs the steps listed in the workflow during composite data domain discovery.