Mappings and transformations
Data migration in Zengines is Target centric, by that we mean all source field mapping is captured and defined in terms of a Target field. A Target's tables and fields, one defined are shown in the Mapping section and can be filtered and sorted there. A Target can have mapping suggestions generated for it. A Target field can have assigned Source fields, and auto or custom transformations as well as a status (used to track progress and determine what fields are output in Conversion).
Mapping
- Only Source fields (data) that are assigned to a Target field will be migrated via Conversion.
- A Target field can have a number of Source fields that Zengines has determined are likely candidates, these are what we call 'suggested matches'
- A Target field can have a number of 'assigned fields', these are Source fields that the user has decided are to be used to populate the data for the target field.
- A Target field has a 'mapping status' to help manage workflow and testing. A field can be set by a user to:
- Not started (no assigned Sources, no action taken on it)
- In progress (this is automatically set when a Source is assigned)
- Testing (user can set when ready)
- Complete (user can set when ready, this triggers a validation check)
- Blocked (user can set)
- A mapping can have assigned Source fields, whose data can be auto-transformed, passed through, other custom transformed through a specific user defined rule.
- A mapping can be Locked/unlocked to prevent any editing, depending on the user's role and specific project restrictions.
- A mapping can have a simple text based explanation added to it so that complex transformation rules can be easily understand by non technical observers.
- Mappings can be reset (have assigned Sources removes and custom transformations cleared).
- All target field mapping changes are audit logged and also appear as a change log in the Notes tab.
- When matches are generated for a Target, Zengines analyzes all Sources set to 'ready', scores the individual fields, and surfaces star rated recommendations for the best Source field matches.
- Assigning a Source field to a Target field is done in the 'Select Sources' view of a selected field on the Mapping grid, any source field can be used, whether recommended or not.
- A single assigned Source field can be 'auto-transformed' (this will simply try to ensure any Target field data type constraints are met). A 'custom transformation' can be added to override this.
- Multiple Source fields from different Sources and tables can be assigned to a Target field, this will require a 'custom transformation'.
- It is not necessary to use all assigned Source fields, although assigned Source fields are used to inform JOIN statement suggested requirements when defining a Conversion Job. Thus it is recommended to unassign any Source fields that have been assigned but are no longer needed.
Custom transformations
- Using the Zengines Transformation Language, custom SQL based rules can be written to manipulate the assigned Source fields so that the output value satisfies the Target field requirements.
- A custom rule can only use Source fields that have been assigned in that mapping.
- All rules can be tested using the example data set on the Source fields, or directly input into the example data area.
- Any custom transformations must be 'valid' to be set the mapping to 'complete'.
- The Zengines AI 'Rule generator' can be used to create the code for SQL transformation rule.