Manual Catalog Sets

Alation Cloud Service Applies to Alation Cloud Service instances of Alation

Customer Managed Applies to customer-managed instances of Alation

Manual catalog sets provide a way to group similar objects by hand, giving you direct control over the composition of the set. Manual sets can be useful when you want to manage equivalent objects without the constraints of automatic rules. For example, if you are dealing with multiple similar or duplicated data sources, using manual sets allows you to uniformly and concurrently manage catalog field values for the objects in the set and any related child objects.

Create a Manual Catalog Set

To create a manual catalog set:

  1. On the Catalog Sets page, click the Add icon on the upper right.

    ../../_images/Sets_05.png
  2. In the new catalog set editor that opens, select the Manual tab.

    ../../_images/Sets_12.png
  3. Provide a title for your new set.

  4. Under Member Data Object Type, select the type of data objects that you want to unite in this set. You can select:

    • Data Source/Catalog

    • Schemas

    • Tables

    • Columns

  5. If you want to conceal the set members from the catalog and Search, select the checkbox Hide schemas and their children from Catalog and Search.

  6. Select the objects to be included into the set:

    1. Click Add to open the quick search for objects of the selected object type.

    2. Find and select specific objects.

    ../../_images/Sets_13.png
  7. Click Save. Your new set will be created and you will be navigated to the Overview and Rules tab of the new set’s catalog page.

    ../../_images/Sets_14.png

Next, you can use your new set to manage catalog field values on the objects you selected as set members. You manage the field values on these tabs of a set’s page:

Bulk-Edit Shared Fields

The Shared Fields tab of a manual catalog set allows you to bulk-edit catalog field values. The values provided via the set will be applied to the shared fields on all member objects.

To bulk-edit catalog field values:

  1. Open the Shared Fields tab. It lists the fields you can manage through this set.

    ../../_images/Sets_15.png
  2. Edit the fields as necessary using the editing controls on each field. As you edit values, they will be applied to all objects in this set.

Identify Catalog Set Values in the Catalog

On the catalog pages of specific objects, the values shared from a catalog set are indicated with a gear icon. The set information is displayed under the Properties field on the right side of the page. The screenshot below shows an example of such information:

  • 1—The name of the catalog set under Properties > Sets

  • 2—A field value that is applied via the set. You can hover over the gear icon to view the set information.

../../_images/Sets_Manual_Properties.png

The field values that were provided via a manual set and marked with the gear icon can only be updated via that set and cannot be changed directly on the catalog page of a member object. However, you can provide extra values in addition to those shared from the set. A field can hold values shared from catalog sets and values added by users. The values added by users are not propagated to other set members and only belong to the specific object where they were added. The screenshot below shows a Description field with a value propagated via a catalog set and a value added by a user. The value added by a user can be updated directly on the catalog page, while the value propagated from the set is not editable.

../../_images/Sets_Manual_ExampleFieldValues.png

Synchronize Metadata Across Child Objects

The Sync Children tab allows you to synchronize metadata across equivalent child objects of the parent objects in the set. Synchronization means propagating a field value to all objects in a synchronized group of objects. Any edits to the fields made on one child object will be mirrored on all other synchronized objects. The synchronization job will replace existing values in single-value fields with designated “master” values and will append new values to multi-value fields, ensuring that all synchronized objects have a consistent set of values.

You can synchronize child levels successively down to the column level.

Important

The names of child objects should exactly match to be synchronized. For the second and other successive levels, the parent object names should also exactly match. For example, in a manual catalog set for schema objects, the first-level child objects are Tables, and the second-level child objects are Columns. The columns and their parent tables should both have matching names for synchronization to happen on the column level. If this set unites schema A and schema B and both these schemas have a table table C with a column id, then the columns schemaA.tableC.id and schemaB.tableC.id can be synchronized as the names of the columns match and the names of their respective parent tables also match.

To enable metadata synchronization:

  1. Open the Sync Children tab.

  2. Click Edit next to the Synchronization Rules & Settings.

    ../../_images/Sets_16.png
  3. Activate the Metadata Synchronization toggle. This will reveal the child object settings.

    ../../_images/Sets_09.png
  4. Under Children and Fields to Synchronize, enable the child object levels to be synchronized by activating the respective toggles. Each successive level will become editable only after the parent level is enabled. For example, columns cannot be synchronized before synchronization for the table level is enabled.

  5. For each of the child levels you activated, designate the fields to be synchronized. The fields you find listed here are the custom and built-in fields currently added to the object template of the corresponding object type:

    • Select the All Current & Future Fields option to synchronize all fields, both current and new that may be added to the template in the future.

    • Select the Select Fields option to select specific fields and then select the checkboxes of the fields you want synchronized.

    ../../_images/Sets_19.png
  6. Click Save and in the confirmation dialog that opens, confirm synchronization. This will trigger the initial full synchronization job. Alation will identify child objects with exactly matching names. For these objects, single-value field values will be overwritten by “master” values. Multi-value field values will be combined across all synchronized child objects and display a list of values from all synchronized objects. The history and details of the job are available in the Synchronization Status table under the Sync Children tab.

    Note

    “Master” values and logic are used only in the context of full metadata synchronization jobs when child objects of the set members are synchronized from the Sync Children tab. Full synchronization occurs when you a) enable metadata synchronization and b) edit the synchronized child level and/or fields and save your changes.

    “Master” values come from the matching child of the “master” catalog set member, which is the first object added to the set. This object appears first in the list of catalog set members in the Catalog Set Members table on the Overview & Rules tab of the set’s catalog page. The values on child objects of the “master” object are used as “master” values when synchronizing metadata on equivalent child objects of other catalog set members. If any field on the child object of the “master” object does not have a value, Alation will apply values from the similar child object on the catalog set member that is second in the list, and so on.

    When users update a field value on the catalog page of a synchronized child object whose parent is in a manual catalog set, and if there are equivalent child objects on other set members, the same field will be updated on all equivalent objects. In such a case, the value update gets propagated from the object that is updated to equivalent objects. No synchronization job is triggered and the “master” object logic does not apply.

    ../../_images/Sets_20.png

    The fields that you have selected for synchronization are displayed under <Data Object Type> Sync Details section under Synchronization Rules and Settings:

    ../../_images/Sets_11.png

    When the synchronization job has completed, equivalent child objects will become synchronized.

    Important

    Currently in the Alation user interface, there is no indication of synchronized child objects. When you edit a value on a synchronized child, it will be propagated to all other equivalent child objects, but on the catalog page of this object, there is no sign of this value belonging to a synchronized group.

    Catalog users may have different access level and do not necessarily have edit permissions for all manual set members and their child objects. A user with appropriate permissions can update fields on the catalog page that this user is allowed to edit:

    • From version 2024.1.3, with metadata synchronization enabled in the respective manual set, such a change will be propagated to all synchronized child objects sharing the field, even if the user initiating the change doesn’t have edit access to all of the synchronized objects. The field history of all updated objects will contain the details of the actual user who updated the field value.

    • In versions before 2024.1.3, only users with edit permissions for all synchronized objects and users with the Server Admin role can edit synchronized fields.

Edit a Manual Catalog Set

To edit a manual catalog set:

  1. On the Catalog Sets page, in the All Catalog Sets table, click the name of the set you want to edit. The set’s properties page will open.

  2. You can edit the Title of the set and its configuration on the tabs Overview & Rules, Shared Fields, and Sync Children:

Edit the Title

To edit the Title field, hover over the current title and click the pencil icon to enter the editing mode. Update the title and press Enter to save the change.

../../_images/Sets_Manual_EditTitle.png

Edit the Overview and Rules

Description

Click the Edit button on the right side of the Description field to enter the field editing mode. Edit the field and click Save to save the changes.

Membership Rules

  1. Click Edit on the right side of the Membership Rules area to enter the editing mode.

  2. To change visibility settings for the set members, select or clear the Hide schemas and their children from Catalog and Search.

  3. To add more catalog set members, click the Add button on the right side of the member list and click it to open the quick search. Select more objects to add to the set.

    ../../_images/Sets_26.png
  4. To remove set members, in the Catalog Set Members list, hover over the data object you want to remove and click the X icon on the right to remove the object from the set.

    ../../_images/Sets_27.png
  5. Click Save on the bottom right to save the changes.

Update the Shared Fields

On the Shared Fields tab, you can manage the shared fields for the catalog set members. See Bulk-Edit Shared Fields for details.

Update the Metadata Synchronization Settings

On the Sync Children tab, you can enable or disable metadata synchronization and change the synchronization rules by redefining the fields to synchronize or by changing the number of child levels you want to be in sync. See Synchronize Metadata Across Child Objects for details.

To disable synchronization, deactivate the Metadata Synchronization toggle. When you disable synchronization, the child objects become independent of the set and can be edited individually. The values that had existed before the synchronization was enabled will not be restored.

Delete a Manual Catalog Set

To delete a manual set, click the Delete button in the upper right corner of the set’s page and then confirm the delete action. Values previously shared through the set will remain, but objects will become independent of the removed set and require individual management of values on each object.

../../_images/Sets_Manual_Delete.png