You can create transformation mappings when the source and target schemas use the same or different data structure types. Depending on which data structure types are used, the transformation mapping may be described as instance or multiple mapping.
Data Structure Types
A flat data structure consists of one or more single fields and records in a two-dimensional structure. Examples include CSV files, simple XML files, and single database tables. A flat data structure is also referred to as a flat file structure.
A hierarchical data structure has one or more parent-child or nested relationships between fields and records in a complex structure. A hierarchical data structure is sometimes referred to as a relational, multilevel, complex data, or tree structure.
If you are mapping data from a flat structure to a hierarchical structure, the data may need to be normalized before being transformed.
By default, Jitterbit Harmony uses a normalization algorithm to construct the target tree. This will convert the flat structure of the source into a hierarchical source structure that can then be mapped to the hierarchical target structure.
In the target structure, the root element and all of the multiple-instance elements under the root are used to create the structure of secondary source elements. The attributes (or fields) of these secondary source elements are flat data elements that are then used in the mappings of the corresponding target element.
With the source structure properly defined, the normalization process is simplified to combining nodes with the same parents.
There are three options for normalization:
- Complete Normalization: All the elements with the same parent and all the fields are reduced to one element. (This is the default.)
- Partial Normalization: The same as complete normalization, except that the lowest children are not normalized.
- No Normalization: Each flat record creates a branch of elements; no reduction of elements is performed when creating the hierarchical source structure.
It is possible for the hierarchical structure to contain a single instance node. In that case, only the first element for this root will be kept, and flat records that conflict with this root data node will be ignored.
To disable normalization, set the Jitterbit variable
true (see Transformation Jitterbit Variables).
Instance and Multiple Mapping
Transformation mapping is the process used to define the relationship of data between inputs and a resulting output of data. Depending on which data structure types are used, the transformation mapping may be described as instance mapping or multiple mapping.
Instance mapping describes when the mapping of a target instance depends on possibly more than one instance of a source. Instance mapping can be either flat-to-flat (one-to-one) or hierarchical-to-flat (many-to-one).
Multiple mapping describes the mapping of two hierarchical data structures or the mapping from a single, flat structure that is actually hierarchical in nature, with its lower segments containing multiple sets of values such as name/value pairs. Multiple mapping can be either hierarchical-to-hierarchical (many-to-many) or flat-to-hierarchical (one-to-many).
Sample situations for both instance and multiple mapping can be found within the Design Studio documentation:
- Instance Mapping
- Multiple Mapping
Although these examples are for Design Studio, the same concepts can be applied in Cloud Studio.
Last updated: Mar 27, 2019
- No labels