In this section: |
This section describes how to create Model Projects using iWay MDS and manage them by defining a connected system, defining the MDS logical model, and generating MDS resources (transformations and batch interfaces).
A new Model Project consists of connected systems, the MDS logical model, the database, transformations, batch interfaces, and files.
To create a new Model Project:
You can also create a new Model Project from the File menu as shown in the following image.
Select the Blank Transactional MDS Project template.
A new Model Project with supporting artifacts is created as shown in the following image.
A Model Project consists of the following components:
A connected system is the structure of each source system that is connected to iWay MDS for each Model Project. In the connected system artifacts, define Batch Load plans including settings such as Interface, Operating Mode, and size of the batch increments.
The connected system defines the entities of a logical model. Entities should be related, where the Instance ID must be defined to show how entities are related. Source ID must be defined as a key to each entity.
Note: Source ID consists of the connected system name plus the connected system table name, anchored by name of an entity.
The process of defining a connected system consists of:
To add a new connected system to a Model Project:
The available Input interfaces are described as follows:
Input Interface |
Description |
---|---|
batch |
The connected system and its entities can only accept input through batch interface loads. |
both |
The connected system and its entities accepts input from both Batch and Online Interfaces. |
none |
The connected system does not accept either Batch or Online inputs. |
online |
The connected system and its entities can only accept input through an Online or Web Service load. |
For the Buyer Shipper project, select both.
The Entities pane of the Connected systems dialog opens, as shown in the following image:
The Instance Mapping pane of the Connected systems dialog opens, as shown in the following image:
Enter the values in the Instance Mapping pane, as listed in the following table:
Source ID |
Entity |
Instance Mapping |
---|---|---|
Shipper_Contact#BuyerShipper |
BuyerShipper |
instance_id |
Shipper_Contact#ShipperDetails |
ShipperDetails |
instance_id |
Shipper_Contact#Details |
Details |
instance_id |
To complete a connected system, you must define a contact table. The contact table provides the metadata of the incoming data source.
To define a contact table for the sample connected system (Shipper):
The Contact dialog opens as shown in the following image:
For demonstration purposes, enter the values as listed in the following table:
Name |
Database type |
---|---|
id |
integer |
type |
varchar(10) |
name |
varchar(100) |
gender |
varchar(20) |
contract_date |
varchar(100) |
fed_eid |
varchar(20) |
shipper_card |
varchar(20) |
mupdate |
varchar(100) |
Now that a connected system has been created with a defined contact table, the next step is to define the MDS logical model.
The iWay MDS logical model is the architectural representation of how you want to maintain the standardized set of records of your enterprise data. The logical model is also a Data Repository for storing the Cleaned, Matched and, Merged instances.
The MDS logical model can be a single logical table or a set of related denormalized logical tables. The Master Data Repository consists of Master Data, Instance, Definition Master Data and, Metadata for the MDM system. It can hold history data that records changes to the Master Data.
Metadata resides in the Master Data Repository and can be created from scratch or imported to support the Configuration and Administration of the MDM system for functionality such as Data Validation, Data Cleansing, Deterministic Matching and Merging criteria from Business and Data Governance rules.
You can create a Model from scratch or parts of it can be imported, either by importing Database Metadata or as an XMI file. You can also use other model builders and integrate with iWay MDS.
The steps to build a logical model consist of two processes, defining the logical model Metadata and constructing a Relationship Entity, as described below. You can choose to maintain records in one table or multiple tables. In this example we will construct multiple tables and relate them through a relation construct.
Denormalize the Shipper Contact data into three tables (BuyerShipper, ShipperDetail, and Detail).
Enter BuyerShipper in the Table name field, as shown in the following image.
For the BuyerShipper table, select entity.
For the BuyerShipper entity, select automatic.
The options for the MDS type field, are listed and described in the following table.
MDS type |
Description |
---|---|
Boolean |
True or False |
date |
yyyymmdd |
datetime |
yyyymmdd hh:mm:ss |
float | |
integer |
I2 |
long |
I4 |
string |
alphanumeric |
The Column role field can have one of the following choices.
Column role |
Role Description |
---|---|
all |
Original input field |
instance | |
instanceid |
Key field to the table can be used in relationships |
joined |
Non-master join field |
joinedMaster |
Key field used to join tables in a relationship |
key | |
master |
Master data field |
masterId |
Key master field in a table |
output | |
source | |
standardized |
Cleaned field |
Column name |
MDS type |
MDS role |
Database type |
---|---|---|---|
instance_id |
string |
instanceid |
varchar(20) |
type |
string |
all |
varchar(20) |
name |
string |
all |
varchar(100) |
shipper_card |
string |
all |
varchar(30) |
fed_eid |
string |
all |
varchar(20) |
std_first_name |
string |
standardized |
varchar(100) |
std_middle_name |
string |
standardized |
varchar(100) |
std_last_name |
string |
standardized |
varchar(100) |
std_social_title |
string |
standardized |
varchar(10) |
std_aca_title |
string |
standardized |
varchar(10) |
cmo_first_name |
string |
master |
varchar(100) |
cmo_middle_name |
string |
master |
varchar(100) |
cmo_last_name |
string |
master |
varchar(100) |
cmo_social_title |
string |
master |
varchar(10) |
cmo_aca_title |
string |
master |
varchar(10) |
sco_name |
integer |
standardized |
integer |
sco_fed_eid |
integer |
standardized |
integer |
sco_shipper_card |
integer |
standardized |
integer |
sco_instance |
integer |
standardized |
integer |
The BuyerShipper table entity should resemble the following image.
Table 1 - Details
Column name |
MDS type |
MDS role |
Database type |
---|---|---|---|
cmo_detail_id |
long |
masterId |
integer |
instance_id |
string |
instanceid |
varchar(20) |
fed_eid |
string |
all |
varchar(20) |
shipper_card |
string |
all |
varchar(20) |
contract_date |
string |
all |
varchar(100) |
std_fed_eid |
string |
standardized |
varchar(20) |
std_shipper_card |
string |
standardized |
varchar(20) |
std_contract_date |
string |
standardized |
varchar(100) |
cmo_fed_eid |
string |
master |
varchar(20) |
cmo_shipper_card |
string |
master |
varchar(20) |
cmo_contract_date |
string |
master |
varchar(100) |
sco_contract_date |
integer |
standardized |
integer |
Table 2 - ShipperDetail
Column name |
MDS type |
MDS role |
Database type |
---|---|---|---|
cmo_shipper_id |
long |
joinedMaster |
integer |
cmo_detail_id |
long |
joinedMaster |
integer |
instance_id |
string |
instanceId |
varchar(20) |
src_shipper_instance_id |
string |
source |
varchar(20) |
detail type |
string |
all |
varchar(20) |
Once all the tables are constructed, the iWay MDS logical model should resemble the following image.
To relate the three tables to one another, a relationship must be established between them.
Drag the pointer from the ShipperDetail table to the BuyerShipper table and release the pointer, as shown in the following image.
Enter the following new_relationship metadata from the table below and click OK.
Property |
Value |
Description |
---|---|---|
new_relationship Name |
shpdtl_buyer |
unique meaningful name for the new_relationship |
Parent Table |
BuyerShipper |
Automatically defined based on the direction of the relationship |
Child Table |
ShipperDetail |
Automatically defined based on the direction of the relationship |
Parent Role |
buyer |
|
Child Role |
ShipperDetail |
|
Master Foreign Key | ||
Parent Column |
cmo_shipper_id |
From key field in the join |
Child Column |
cmo_shipper_id |
To key field in the join |
Double click the new-relationship artifact. Enter the metadata from the table below and click OK.
Property |
Value |
Description |
---|---|---|
new_relationship Name |
ShpdetDetr |
Unique meaningful name for the new_relationship |
Parent Table |
Details |
Automatically defined based on the direction of the relationship |
Child Table |
ShipperDetail |
Automatically defined based on the direction of the relationship |
Parent Role |
Details |
|
Child Role |
ShipperDetail |
|
Master Foreign Key | ||
Parent Column |
cmo_detail_id |
From key field in the join |
Child Column |
cmo_detail_id |
To key field in the join |
Aside from defining a data and relationship model, the other primary task of iWay MDS is to define processes to Cleanse, Match, and, Merge the data. Templates for transformation processes can be automatically generated based on the tables in the logical model.
Once a table is defined, a database Instance and Representative table are created. Instance Tables are used to define the attributes to generate the Clean, Match and, Merge transformation plans and represents all the input records. The Representative tables are used to derive the attributes to generate the Master Data Record and the MDS repository. For every table defined in the MDS logical model, a table is created for each Instance and Representative artifact.
Perform the following steps to review what was generated when the tables in the MDS logical model were created.
An Instance Table is generated for each table created in the logical model. Double click any Instance table to review.
The different Golden tables contain columns that represent the merged records that pass through all the Data Quality transformation routines.
The plan contains templates until a transformation is generated.
To generate the transformation templates,
This results in transformation files being generated for each table in the logical model.
These steps are used to receive incoming data and send data out, respectively, once it has been transformed.
By default, the Input step contains references to the columns from the table that was used to generate the file, as well as some additional columns that can be used to store data that are useful in the transformation process, such as source_system and source_id, as shown in the following image.
The next step is to generate batch interfaces.
When batch interfaces are generated, the Batch Load Data Quality Plan is created. Three Integration Output steps are generated, one for each table in the logical model. Additional input steps and logic has to be added to send the input to the three Integration Output steps.
When the plan is executed, at the end of each Integration Output step, the Clean, Match and, Merge plans are executed for each table. Data that is moved to each Integration Output is automatically moved to the Clean plan first for each table.
The next step is to create the processes for Cleansing, Matching or, Merging by adding intermediate steps and further configuring the existing steps. This process varies depending on the quality and format of the incoming data. Extensive help on each of the steps is available from the Help Menu.
iWay Software |