Common Format Designer (CFD) is used to quickly design a data model from the Designer user interface. This data model may be designed as an entirely new model or assembled using elements from other data models. CFD can automatically generate the Data Definition Language (DDL) scripts for implementing this model in a data server.
CFD enables a user to modify an existing model design through the user interface. It can automatically generate the DDL scripts for synchronizing differences between a data model described in Oracle Data Integrator and its implementation in the data server.
Users can for example use Common Format Designer to create operational datastores, datamarts, or master data canonical format by assembling heterogeneous sources.
A diagram is a graphical view of a subset of the datastores contained in a sub-model (or data model). A data model may have several diagrams attached to it.
A diagram is built:
by assembling datastores from models and sub-models.
by creating blank datastores, then:
assembling in these datastores columns from other datastores,
creating new columns in these datastores.
When assembling datastores and columns from other models or sub-models
in a diagram, Oracle Data Integrator keeps track of the origin of the
datastore or column that is added to the model.
These references to the original datastores and columns enable Oracle Data
Integrator to automatically generate the integration interfaces to the
assembled datastores (Interfaces IN)
Automatic interface generation does not work to load datastores and columns that are not created from other model's datastores and columns. It is still possible to create the integration interfaces manually, or complete generated interface for columns not automatically mapped.
In a diagram, a datastore may appear several times as a Graphical Synonym. A synonym is a graphical representation of a datastore. Graphical synonyms are used to make the diagram more readable.
If you delete a datastore from a diagram, Designer prompts you to delete either the synonym (the datastore remains), or the datastore itself (all synonyms for this datastore are deleted).
References in the diagram are attached to a datastore's graphical synonym. It is possible create graphical synonyms at will, and move the references graphical representation to any graphical synonym of the datastores involved in the references.
From a diagram, you can edit all the model elements (datastore, columns,
references, filters, etc) visible in this diagram, using their popup menu,
directly available from the diagram.
Changes performed in the diagram immediately apply to the model.
To create a new diagram:
In the models view, expand the data model, then select the Diagrams node.
Right-click, then select Insert Diagram.
Type in the Diagram Name, and the Description.
The new diagram appears under the Diagrams node of the model.
To insert an existing datastore in a diagram:
In the Diagram edition window, select the Diagram tab.
Select the datastore from a model
Drag this datastore to the diagram.
If the datastore comes from a model/sub-model different from the current
model/sub-model, Designer will prompt you to create a copy of this datastore
in the current model.
If the datastore already exists in the diagram, Oracle Data Integrator
will prompt you to either create new graphical synonym, or create a duplicate
of the datastore.
The new graphical synonym for the datastore appears in the diagram.
If you have added a datastore from another model, or chosen to create a
duplicate, the new datastore appears in model.
Note: To create a graphical synonym of a datastore already in the diagram select Create Graphical Synonym in the popup menu of the datastore.
Note: If references (join) existed in the original models between tables inserted to the diagram, these references are also copied.
To create a new datastore in a diagram:
In the Diagram window, select the Diagram tab.
In the tool bar, click the Add Datastore button.
Click the diagram workbench.
The new datastore window appears. For other operations on the datastore (creating new columns, adding keys, etc.) please refer to Creating a Datastore.
To add columns from other datastores:
In the Diagram edition window, select the Diagram tab.
Select a column from a datastore
Drag this column to a datastore in the diagram.
A datastore window appears with the new column that will be added to
this datastore
Click OK. The new column appear in the datastore.
To create a graphical synonym for a datastore:
In the Diagram, select the datastore.
Right-click, then select Create Graphical Synonym.
The new graphical synonym appears in the diagram.
Note: This operation does not add a new datastore. It creates only a new representation for the datastore in the diagram.
To add columns, condition, filters, keys to a datastore:
In the Diagram, select the datastore.
Right-click then select Add Key, Add Filter, etc,
To add an existing condition, reference or filter to a diagram:
Drag and drop an existing condition, reference or filter onto the diagram.
The datastore to which the condition, reference or filter is attached must already exist in the diagram. This is useful if you have created these objects after adding the datastore to the diagram.
To edit a key on a column:
If a column is part of a key (Primary, Alternate), it is possible to edit the key from this column in the diagram.
In the Diagram, select the column.
Right-click then select the name of the key in the pop-up menu, then select Edit in the sub-menu.
To create a reference between two datastores:
In the Diagram edition window, select the Diagram tab.
In the toolbar the Add Reference button.
Click the first datastore of the reference, then drag the cursor to the second datastore while keeping the mouse button pressed.
Release the mouse button. The new reference window appears.
Set this reference's parameters, then click OK.
To move a reference to another graphical synonym:
In the Diagram, select the reference.
Right-click and select Display
Options.
A Display Options window appears.
Select the synonyms to be used as the parent and child of the reference.
Click OK.
The reference representation appears now on the selected synonyms.
Note: This operation does not changes the reference. It alters only its representation in the diagram.
When data structure changes have been performed in a data server, you usually perform an incremental reverse-engineering in Oracle Data Integrator to retrieve the new meta-data from the data server.
When a diagram or data model is designed or modified in Oracle Data Integrator, it is necessary to implement the data model or the changes in the data server containing the model implementation. This operation is performed by generated DDL scripts. The DDL scripts are generated in the form of Oracle Data Integrator procedures containing DDL commands (create table, alter table, etc). This procedure may be executed by on the data server to impact the changes.
Note: The templates for the DDL scripts are defined as Action Groups. Check in Topology Manager that you have the appropriate action group for the technology of the model before starting DDL scripts generation.
To generate the DDL scripts:
Select the data model you want to generate the DDL scripts for.
Right-click, then select Generate
DDL.
Oracle Data Integrator retrieves the data structure from the data schema,
and compares it to the model definition. The progression is displayed
in the status bar. The Generate DDL window
appears, with the detected differences.
Select the Action Group to use to generate the DDL script.
Click the ... button to select the folder into which the procedure will be created.
Filter the type of changes you want to display using the Filters check boxes.
Note: These filters may be changed at any time, and apply only to the display. A change already selected may not be visible due to a filtering option.
Select the changes you want to apply by checking
the Synchronization column checkbox.
The following icons indicate the type of changes:
- : Element existing in the data model but not in the data server.
+ : Element existing in the data server but not in the data model.
= : Element existing in both the data model and the data server, but with differences in its properties (example: a column resized) or attached elements (example: a table including new columns).
Click OK to generate the DDL script.
Oracle Data Integrator generates the DDL scripts, and opens the procedure containing the DDL commands.
For a given model or datastore assembled using Common Format Designer, Oracle Data Integrator is able to generate:
Interfaces IN: These integration interfaces are used to load the model's datastores assembled from other datastores/columns. They are the integration process merging data from the original datastores into the composite datastores.
Interfaces OUT: These integration interfaces are used to extract data from the model's datastores. They are generated using the interfaces (including the interfaces IN) already loading the model's datastore. They reverse the integration process to propagate the data from the composite datastore to the original datastores.
Example: An AIH assembles bits of information coming from several other applications. It is made up of composite datastores built from several data models, that are assembled in a diagram. The AIH is loaded using the Interfaces IN, and is able to send its data to the original systems using the Interfaces OUT.
To generate the Interfaces IN:
Select a data model or datastore.
Right-click, then select Generate
Interfaces IN.
Oracle Data Integrator looks for the original datastores and columns
used to build the current model or datastore.
A Generate Interfaces IN window appears
with a list of datastores for which Interfaces IN may be generated.
Select the Optimization Context for your interfaces.
Click the ... button to select the folder into which the interfaces will be generated.
In the Candidate Datastores, check the Generate Interface checkbox for the datastores to load.
Edit the content of the Interface Name column to rename the integration interfaces.
Click OK.
Interface generation starts.
The generated interfaces appear in the specified folder.
Warning! Interfaces automatically generated are built using the available metadata and do not always render the expected rules. These interfaces must be carefully reviewed and modified before execution.
Important Note: If no candidate datastore is found when generating the interfaces IN, then it is likely that the datastores you are trying to load are not built from other datastores or columns. Automatic interface generation does not work to load datastores and columns that are not created from other model's datastores and columns.
To generate the Interface OUT:
Select a data model or datastore.
Right-click, then select Generate
Interfaces OUT.
Oracle Data Integrator looks for the existing Interfaces loading these
the datastores.
A Generate Interfaces OUT window appears
with a list of datastores for which Interfaces OUT may be generated.
Select the Optimization Context for your interfaces.
Click the ... button to select the folder into which the interfaces will be generated.
In the Candidate Datastores, check the Generation and Generate Interface checkboxes to select either all or some of the candidate datastore to load from the target datastore of the existing interfaces.
Edit the content of the Interface Name column to rename the integration interfaces.
Click OK.
Interface generation starts.
The generated interfaces appear in the specified folder.
Warning! Interfaces automatically generated are built using the available metadata and do not always render the expected rules. These interfaces must be carefully reviewed and modified before execution.
Important Note: If no candidate datastore is found when generating the interfaces OUT, then it is likely that no interface loads the datastores you have selected to generate the interfaces OUT. The interfaces OUT from a datastore are generated from the interfaces loading this datastore. Without any valid interface loading a datastore, not propagation interface from this datastore can be generated.