BI Applications 11.1.1.7.1 introduced a number of changes; adding
new components and processes and enhancing others. As a result many
customers and partners are re-learning how to install, configure and
manage the application and naturally a number of questions have arisen.
This post walks through the steps of registering a source application
system in BI Applications, and then looks a little deeper into what has
actually been setup behind the scenes and how to troubleshoot those
connections.
Registering a Data Source in Configuration Manager
To register a data source, log into configuration manager, and navigate to the
Define Business Intelligence Applications Instance tab.
Note: Configuration manager is the only place to register
data sources, the rest of the details in the post are to allow you to
troubleshoot, but Configuration Manager is the place for everyone,
novices and experts to register a Data Source.
Click on the green ‘+’ sign to start the
Register Source wizard.
In the first page of the wizard, provide a clear name for the source under
Source Instance Name. A description is optional. Assign a unique
Data Source Number – this value ties records in the data warehouse to the specific source system where those records came from.
In the second page of the wizard the physical connections for the
source are setup. Each source system has both a relational and a flat
file technology
associated with it. Most ETL tasks extract from the source database but
several ETL tasks extract from flat files that are associated with that
particular source system. The relational and flat file details are
registered directly into ODI as separate
Data Servers and each Data Server must have
a unique name.
When configuring the relational connection, you are defining the details
required to connect to the source system. The ETL process will use
this information to connect to the source system in order to extract
data. First give a name for the
ODI Data Server Name, as discussed this needs to be unique so an example might be: EBS R12.1 EMEA Dev Database. Next give the details required to
connect to the source application database using a JDBC connection,
i.e. the
JDBC URL, the
Database Username and
Database Password.
For example, to connect to an E-Business Suite database you generally
provide the APPS database user and corresponding password, and to connect to a
Siebel database you provide the SIEBEL database user. To clarify, these are
neither the database details and credentials to connect to the BI Apps
Component Repository database schema nor the BI Applications Data
Warehouse database schema.
You must also define the details for the Flat File connection. A value for the
ODI Data Server Name
must be provided, this must be distinct from the the relational
connection an example for this connection might be: EBS R12.1 EMEA Dev Source Files. The
Host Name is the
machine where the flat files are stored – this host must be accessible
by the ODI agent. This is generally the same machine where ODI Agent is
deployed or a network path accessible from that machine.
Path to
file is a relative or absolute path to the location where the files
associated with the source system can be found. Each source system
needs to have its own dedicated subfolder under the SrcFiles folder.
Looking at the Data Source Definition in ODI Topology
The registering of the Data Source in Configuration Manager
detailed above results in connections being entered into the ODI
repository ready for ETL execution. To view the connection information
in ODI either ODI studio or ODI Console can be used.
If you were to look at the Topology Navigator in ODI prior to
registering any sources in Configuration Manager, you would see the BI
Apps specific physical servers and schemas already defined and populated
with the appropriate credentials and paths – this was provisioned
during the installation process as a result of providing these details
to the installer. You cannot edit these properties from Configuration
Manager and although not recommended, if you were to need to make any
changes, these changes need to be done using ODI Studio.
ODI Topology prior to Source Configuration, showing Only DW Connections
After registering a datasource in Configuration Manager, you will
see the connections in the Physical Architecture in ODI Studio.
Continuing the example, you can see that we now have an Oracle based
entry and a File based entry – the names correspond to the ODI Date
Server Names provided in Configuration Manager.
ODI Topology after Source Configuration, showing DW and Source Connections
Important – Do not edit these entries directly in ODI – any
changes must be made in Configuration Manager. Any changes made in ODI
will not be reflected in Configuration Manager which can lead to
errors. Only follow these steps to confirm the sources were correctly
registered in ODI.
For your information you can inspect the properties of the server and schema that have been created in ODI Studio
Example: Oracle DBMS and File details for EBS R12.1.3 Source
|
Database Server Connection |
Physical Server Definition. |
|
Physical Server JDBC |
|
Physical Schema |
|
Context and mapping to Logical Schema |
|
Flexfields showing Data Source Num ID attribute |
|
|
File Server Connection |
Physical Server Definition. |
|
Physical Server JDBC |
|
Physical Schema |
|
Context and mapping to Logical Schema |
|
Flexfields showing Data Source Num ID attribute |
|
Making Changes to Data Sources
Correcting Connection Details
If you entered the wrong details for a connection to a data source, these can be corrected as follows:
1. Select the datasource and click the ‘Edit’ button
2. Make corrections to the details:
3.
Restart the ODI Agent. The ODI Agent does not automatically reflect
changes to the connection. You must restart the ODI agent otherwise it
will continue to use the old credentials. The ODI Agent can be
restarted from Enterprise Manager or the WebLogic Server Console
Restarting the ODI Agent from Enterprise Manager:
Connect to Enterprise Manager and under ‘Deployments’ scroll down and drill on ‘oraclediagent’
Click on the ‘Application Deployment’ menu option and select ‘Shut Down…’ and ‘Start Up’
Restarting the ODI Agent from the WebLogic Server Console
Log into the WLS console, click on ‘Deployments’ under ‘Domain Structure’
Scroll down to ‘oraclediagent’ and check the checkbox
Click the ‘Stop’ and ‘Start’ buttons.
Changing and disabling a data source connection
The Configuration Manager UI does not support deleting
connections. If a connection exists for a data source of the correct
type of application, also known as a product line version, but the
details are incorrect, then you should update the existing connection to
use the correct details. If the connection is for a product line
version that you don’t need to connect to, you should simply disable it:
Using a ‘Read-Only’ or other alternate user to access the OLTP tables
When registering a source in BIACM, we assume the database user
defined is the owner of the OLTP tables or at least the user’s schema is
populated with objects that can be selected from. ODI will generate
SQL in the form:
SELECT … FROM <Database User Defined in BIACM>.TABLE
If you define a read-only user that has select privileges on the
OLTP tables but there are no objects in this user’s schema, the SQL will
fail with ‘Table or View not found’ errors. You must populate this
user’s schema with objects that can be selected from – either replicas
of the actual tables that are populated with data else with synonyms or
views that point to the actual tables in the base schema. Otherwise,
you must go into the ODI Studio and update the physical schema under the
OLTP data server definition and provide the schema name where the
tables can be found. This will allow ODI to log on with the alternate
ETL user but generate SQL in the following form:
SELECT … FROM <Base Schema>.TABLE
A future blog article will provide more information on how to
configure an alternate ETL user. The most important thing to be aware
of is that in some cases, ETL tasks may execute packages or procedures
on the OLTP database (this is most commonly done when extracting from an
Oracle eBusiness Suite database) – you must be sure to grant Execute
privileges on these to your ETL user.