You can use Oracle Call Interface (OCI) as an alternative to ODBC to significantly improve data load and dimension build performance. With this method, you use Data Prep Editor to specify an OCI connect identifier.
To use an Oracle OCI connect identifier, use the following syntax for the Data Source Name (DSN) identification:
host:port/Oracle_service_name
Following is an example OCI connect identifier where the host server name is “myserver,” the port number is 1521, and the Oracle Service Name is “orcl.us.oracle.com”:
myserver:1521/orcl.us.oracle.com
See also Oracle Essbase Administration Services Online Help.
On AIX systems, when you load SQL data using OCI, you must enable asynchronous I/O or the data load fails with this message:
Cannot get async process state. Essbase Error(1021104): Cannot load instant client shared library [libociei.so].Make sure that the required binaries are present with correct environment variables set.
To enable asynchronous I/O on AIX:
Run this command to determine the state of the aio0 driver:
lsdev -C -l aio0
Example output:
aio0 Defined Asynchronous I/O
Defined indicates that the aio0 driver is installed on the system but is not available for applications to use. If the driver is not available for applications, change the state of the aio0 driver Defined to Available.
cfgmgr -l aio0
To make the Available state permanent (across system reboots), issue the chdev AIX command:
chdev -l aio0 -P -a autoconfig='available'
You do not need to reboot the system to effectuate these changes.
Example output:
aio0 changed
Run this command to check the state of the aio0 driver:
lsdev -C -l aio0
Example output:
aio0 Available Asynchronous I/O