This chapter includes the following sections:
About Compatibility Mode
Oracle Data Integrator 12c provides a backward-compatibility feature that allows you to import and run Interfaces created in ODI 11g. You can create these 11g-compatible mappings in the following two ways:
When upgrading to ODI 12c using the Upgrade Assistant, disable the Upgrade interfaces to 12c mappings - losing 11g SDK compatibility option
Create mappings using the ODI 11g SDK
De-selecting the 11g SDK compatibility flag in the Upgrade Assistant is only required if you want to modify your 11g-compatible mappings later, using the 11g SDK. 11g SDK-compatible mappings are read-only when viewed in ODI Studio 12c. The 11g SDK is the only way to modify an upgraded 11g-compatible mapping. If you do not want to modify your 11g-compatible mappings, you do not need to enable 11g SDK compatibility using the Upgrade Assistant.
11g-compatible mappings use a special mapping component, the "11g Compatible Dataset," to emulate 11g Interface behavior.
You can run an 11g SDK-compatible mapping in ODI 12c in exactly the same way as running an ODI 12c mapping.
You can convert an 11g SDK-compatible mapping to a true ODI 12c mapping, using a context menu command.
ODI 12c mappings cannot be converted to 11g compatibility.
Maintaining 11g SDK Compatibility with Imported Interfaces
When importing an 11g-compatible mapping, you must set a user preference to determine whether it is imported as an 11g SDK-compatible mapping, or converted to 12c mapping:
In ODI Studio, select ODI from the menu bar, select User Interface, and then select Designer.
Enable the option Maintain 11g SDK compatibility for migrated interfaces.
When importing an 11g Interface export file, this option will determine the imported interface's compatibility as either 11g SDK, or 12c.
Creating Compatible Mappings
You have two options for creating 11g SDK-compatible mappings:
Creating Mappings using Upgrade Assistant
You can upgrade an earlier version of ODI to ODI 12c, using the Oracle Upgrade Assistant. While upgrading ODI, 11g Interfaces are converted to 12c mappings by default.
The Upgrade Assistant gives you the option of enabling 11g SDK Compatibility Mode, by de-selecting an option. 11g SDK Compatibility Mode allows you to modify upgraded 11g-compatible mappings using the ODI 11g SDK.
To convert ODI 11g Interfaces to 11g-compatible mappings, de-select the Upgrade interfaces to 12c mappings - losing 11g SDK compatibility option in Task 6 Selecting the ODI Upgrade Option of the Upgrading Your Oracle Data Integrator Environment chapter, in Upgrading Oracle Data Integrator.
Creating Mappings with the 11g SDK in ODI 12c
In any upgraded or standard ODI 12c environment, you can create 11g-compatible mappings using the ODI 11g SDK. In ODI 12c, these mappings are read-only.
If you upgraded to ODI 12c using the Oracle Upgrade Assistant, and you enabled 11g compatibility mode, you can modify 11g-compatible mappings using the 11g SDK.
To create an 11g-compatible mapping using the 11g SDK, review the Java API Reference for Oracle Data Integrator.
About Internal Identifiers (IDs)
To ensure object uniqueness across several work repositories, ODI 11g used a mechanism to generate unique IDs for objects (such as technologies, data servers, Models, Projects, Mappings, KMs, etc.). Every object in Oracle Data Integrator 11g is identified by an internal ID. The internal ID appears on the Version tab of each object.
ODI 11g Master and Work Repositories are identified by their unique 3-digit internal IDs. The internal ID of an 11g object is calculated by appending the value of the RepositoryID to an automatically incremented number:
If the Repository ID is shorter than 3 digits, the missing digits are completed with "0". For example, if a repository has the ID
5, possible internal IDs of the objects in this repository could be:
1234567005. Note that all objects created within the same repository have the same three last digits, in this example
This internal ID is unique for the object type within the repository and also unique between repositories for the object type because it contains the repository unique ID.
Important Export/Import Rules and Guidelines
Due to the structure of the 11g object IDs, these guidelines should be followed:
ODI 11g Work repositories must always have different internal IDs. Work repositories with the same ID are considered to contain the same objects.
When importing ODI 11g objects from an 11g repository, you must define an Upgrade Key. The Upgrade Key should uniquely identify the set of repositories that are working together.
Renumbering a master or work repository consists of changing the repository ID and the internal ID of the objects stored in the repository. This operation is only available on repositories that are in 11g Compatibility Mode. In ODI 12c, repositories have unique global identifiers, which cannot be (and do not need to be) renumbered.
Renumbering a repository is advised when two repositories have been created with the same ID. Renumbering one of these repositories allows object import/export between these repositories without object conflicts.
Renumbering a repository is an administrative operation that requires you to perform a backup of the repository that will be renumbered on the database.
Renumbering an 11g Compatible Repository
- In the Topology Navigator, expand the Repositories panel.
- Expand the Master Repositories or Work Repositories node and right-click the repository you want to renumber.
- Select Renumber...
- In the Renumbering the Repository - Step 1 dialog click Yes.
- In the Renumbering the Repository - Step 2 dialog enter a new and unique ID for the repository and click OK.
- The repository and all the details stored in it such as topology, security, and version management details are renumbered.