What's New in ODI 11g? - Part 2: Design-Time Experience
By FX on Aug 29, 2010
Oracle Data Integrator 11gR1 includes a large number of features and enhancements to the 10gR3 release. In this blog series I will try to explain the major directions taken by the product and give a quick overview of these features and enhancements.
For a detailed list of features, the following documentation link can be used as a reference.
There are major areas of changes in this release:
- New Architecture for Enterprise-Scale Deployment
- New Design-Time Experience
- New Run-Time Experience
- Core Enhancements to E-LT and Declarative Design
Welcome to the ODI Studio !
The Oracle Data Integrator 11g client is called the Oracle Data Integrator Studio is based on the Fusion Client Platform (FCP is the platform under JDeveloper). ODI benefits from all the usability features that exist in JDeveloper-based IDEs.
One Window to Rule Them All...
The first thing that strikes when starting the the Oracle Data Integrator Studio (well, after the impression that it looks way nicer than the 10g Swing UI!), is that it merges in a single window what was before in four.
The 10g Graphical Modules (Designer, Topology, Operator and Security) now appear as Navigators within the ODI Studio Window.
These navigator include Accordions for sub-items, each accordions containing a tree views. Tree views and context menus have been reorganized in a more meaningful way and harmonized across the components.Figure 1:The 10g Designer Window and 11g Designer Navigator in ODI Studio: 11g has the four "modules" shown as navigator (top tabs). Note that the Security Navigator is currently hidden). The sub-sections for the Design Navigator (Projects, Models, Others, Solution) appear as Accordions in the navigator. Notice also the menu reorganized with separators.
Docking, Navigation & Window Management
The second thing that strikes is the organization and the management of the windows, panels and editors. All these items can be docked, un-docked or stacked (drag the title tab), maximized/minimized within seconds (double-click the title tab)
It becomes easy to navigate (CTRL-tab) between windows, and to perform Close/Save All operations on editors.
Editors have been reorganized with finger tabs (on the left of the editor), and fields within tabs have been organized into expandable option groups.
The previous figure shows an example of this reorganization with the Technology editor.Figure 2:A stack of editors (from the Designer and Topology Navigators) maximized in the ODI Studio window. Notice that the Save/Save all options are available from the toolbar, and the Close/Close All/Close Others are available from the context menu. The visible editor (Oracle Technology) shows example of finger tabs and option groups. Notice that the Data Handling option group in this editor has been reduced.
The editor that made the biggest leap in 11g is the Interface Editor. It has been redesigned entirely !
The JDeveloper diagramming framework was introduced for both the Mapping and Flow tabs. This new editor provides a better rendering of the diagrams, support for zooming and collapsible objects. Making the working through diagrams easier.
The edition was enhanced to support changes that make the developer's life easier.
- Multiple columns drag and drop from a Source into the Target Datastore to create mappings.
- Sortable and selectable columns for the target datastore.
- Searchable and reorganized Property inspectors with option groups.
The same usability effort was made also in the Flow tab. The flow tab supports also zooming, the thumbnail, and allows viewing and edition. As shown in the screenshot below.Figure 4:A filter can be edited from the flow tab.
A major change in the interface window is the new Quick-Edit tab. The quick editor offers the possibility to view and edit the declarative rules of an interface in a tabular form. This form allows intuitive keyboard navigation, copy-paste operations (including on multiple cells), selecting and sorting displayed columns. It works like a spreadsheet !
Quick Editor is a wonderful tool for having a global view of large interfaces, or to perform maintenance on existing interfaces.Figure 5:Quick edit provides a tabular view of the interface mapping .
In order to make the design-time experience better, several other enhancements have been made to help preventing and solving issues at design time.
When clicking the Errors button in the interface editor toolbar, the list of detected design errors is displayed with meaningful messages and tips. Auto-fixes are suggested and can be applied with a single click. In addition, when saving and attempting to execute interfaces, a report is raised with all remaining issues. An example of suggested fixes is displayed below.Figure 6:Errors detected in interfaces are raised and automatic fixes suggested.
It is possible by checking the "Simulation" option in the Execution window to generate the session, steps, tasks and code for an execution without actually running anything. The generate session is displayed as a Simulation that can be saved in XML or HTML format for troubleshooting or simply reviewing the code.Figure 7:Review the generated code without running it!
Errors raised in this new ODI release have been enhanced to provide more contextual information contextual information about the session, step, tasks and operation that was performed.
For example, if a server is down in 10g, the following error shows up:
java.sql.SQLException: [OWLS][SQLServer JDBC Driver]Error establishing socket to host and port: localhost:1433. Reason: Connection refused: connect
In 11g, the following error is returned, and indicates that the interface Load Customer loading target table NortwindEmps has failed because the source Microsoft SQL Server database declared as MICROSOFT_SQL_SERVER in my topology cannot be connected.
ODI-1217: Session Refresh Customer (119011) fails with return code 8000.
ODI-1226: Step Load Customer fails after 1 attempt(s).
ODI-1240: Flow Load Customer fails while performing a Loading operation. This flow loads target table NorthwindEmps.
ODI-1227: Task SrcSet0 (Loading) fails on the source MICROSOFT_SQL_SERVER connection MSSQL.
Caused By: java.sql.SQLException: [OWLS][SQLServer JDBC Driver]Error establishing socket to host and port: localhost:1433. Reason: Connection refused: connect
More changes have taken place in the Design-Time Experience, for example improvement in import and export, a new report when importing objects, a automated naming convention applied when generating scenarios, the capability to abort sessions and so forth.
Other changes that have an impact on design time are core enhancements made to the Declarative Design paradigm and E-LT architecture. These will be covered in the last part of this blog series.
Enough for today, though. The next blog post in this series will focus on Run-Time enhancements.
To learn more about the new ODI design-time features, please review the following documents: