Domains Overview¶
Alation Cloud Service Applies to Alation Cloud Service instances of Alation
Customer Managed Applies to customer-managed instances of Alation
Available from release 2021.1
Domains are a hierarchical organization system for your data that provides an accessible way of interacting with different types of catalog objects.
Domains let Alation admins logically group catalog objects, increasing discoverability of data by organizing data around context. Searches for catalog objects can be done at the appropriate domain level. By searching within a domain, users can find relevant objects with more ease.
Each domain is a separate catalog object with a dedicated catalog page. Domain catalog pages have a template that can be customized by adding, removing, and rearranging custom fields. All domains can be viewed and browsed by going to Apps > Domains.
Domains are modeled as a hierarchy of top-level domains and their respective subdomains. Subdomain content is included in the parent level domains. For example, domain A that has a subdomain domain B and any objects to domain B will appear in searches within domain A. The content of domain B is a subset of the content of its parent domain A. The domains and objects can be mapped by many to many logic: this means one data object can belong to multiple domains even in separate domain hierarchies.
Example¶
A Company maintains a warehouse that stores data about its product, company operations, business objectives, customer survey data, and customer satisfaction metrics. The company operates in North America and Asia, and analysts from both the continents use this warehouse to analyze data about their specific company division.
Here is how Company uses domains in their Alation catalog to help analysts find the relevant data in a faster and more efficient way.
The catalog stewards analyze the data subjects within the warehouse and come up with two top-level domains: Internal and Customers. The top domain Internal will contain internal company data about its product, operations, and policies. The other top domain Customers will organize the data about the Company’s customer base and customer feedback sourced from various channels.
Within Internal, they create two subdomains based on the company geography: North America and Asia. These subdomains include one more subdomain level reflecting the business units operating on each of the continents.
Within Customers, they create 2 subdomains: Accounts and Customer Engagement. The Customer Engagement domain includes 2 more subdomains, Community and Surveys, which point to the source of customer feedback.
Then they perform an audit of the catalog content assigning datasources, schemas, tables, columns, articles, queries and BI objects to a relevant domain or subdomain. Some data objects are added to multiple domains as they are relevant to multiple aspects of Company analytics.
Now, when analysts search for data, they are able to retrieve objects from a specific domain or browse each available domain and apply search filters to a subset of data in the selected domain.
Supported Object Types¶
The object types that can be added to domains are:
API resources
Articles
BI objects
Dataflow objects
Documents
File system objects
Folders
Glossaries
NoSQL database objects
Queries
RDBMS objects
Terms
For articles, BI objects, folders, and RDBMS objects, you can add a parent object and Alation will give you the option of adding all child objects to the domain.
Permissions¶
Server Admin or Catalog Admin roles are required to create, edit, and delete domains and subdomains.
Stewards of a data object can add that object to domains.
Query authors (users to authored a query in Compose) can add their queries to domains.
Users with a Steward or higher role can add articles or documents they’ve authored to domains.
See Add Objects to a Domain for more help.
Hierarchy¶
Note
There is no restriction on the number of levels of subdomains. A domain or subdomain can have any number of objects added to them.
Enable Domains¶
Important
From 2021.2, domains are enabled by default and an admin does not need to explicitly enable this feature. However, to enable domain inheritance, you must enable the domain materialization job. See Schedule Domain Membership Updates.
The domains feature is enabled either using alation_conf or in Admin Settings.
Enable Domains using alation_conf¶
To enable domains using alation_conf:
Use SSH to connect to the Alation server.
Enter the Alation shell using the following command:
sudo /etc/init.d/alation shell
In alation_conf, set the domains flag:
alation_conf alation.domains.enable_domains_service -s True
Restart uWSGI.
alation_supervisor restart web:uwsgi
Restart celery.
alation_supervisor restart celery:celery-domains_0 alation_supervisor restart celery:celery-domains_small_0
Enable Domains in Admin Settings¶
To enable domains in Admin Settings:
Go to Settings > Feature Configuration.
Set the Data Domains feature toggle on and click the Save changes button.
In the pop-up, click on Save Configuration to enable the domains feature.
Restart the uWSGI. This restart needs to be done by the admin with the server-side access on the backend from the Alation shell.
alation_supervisor restart web:uwsgi
Restart celery.
alation_supervisor restart celery:celery-domains_0 alation_supervisor restart celery:celery-domains_small_0