Connecting to Oracle Fusion Cloud BICC (extractor)
You can connect your Oracle Fusion Cloud instance to the Celonis Platform using the Business Intelligence Cloud Connector (BICC), allowing you to securely extract large volumes of data. This is the preferred method of connecting to Oracle Fusion Cloud, with REST API another supported method.
For an overview of why the BICC method is preferred, see: Oracle Fusion Cloud.
BICC extractor overview
The Oracle Fusion Cloud BICC extractor extracts data from Oracle Fusion Cloud by connecting to two different instances in your infrastructure:
BICC
External storage
The Oracle Fusion Cloud BICC extractor takes Public View Objects (PVOs) from Oracle Fusion Cloud. The extractor is not limited to any process and can extract all the PVOs that are available in your Oracle instance (usually > 5,000).
The extraction process is highlighted in the following diagram (with a description underneath):
An extraction is configured in the Celonis Platform, with the tables defined, the columns selected, and the filters applied.
When an extraction is executed, the Celonis Platform triggers an extract job in the BICC instance linked to the Oracle Fusion Cloud Application.
The BICC then automatically writes the extracted data to the external storage. When creating the job execution in BICC, the FILE_EXPIRY_DAYS is set by default to 90. Therefore, files will automatically be deleted after 90 days.
The Celonis extractor reads the data from the external storage and ingests it into the Celonis Platform. Data that is successfully ingested into Celonis is automatically tagged. All records and files which have not been processed correctly within an extraction are automatically picked up in the next run.
Setting up the Oracle Fusion Cloud BICC extractor
To set up the Oracle Fusion Cloud BICC extractor, follow these steps in order:
A user needs to be created in your Oracle Fusion Cloud Application that can access BICC and has the following two roles:
ESS Administrator Role
ORA_ASM_APPLICATION_IMPLEMENTATION_ADMIN_ABSTRACT
You need to be able to provide username and password to establish a data connection.
For more information, see Oracle's document: Provision a user with access to BICC.
You have two external storage options here, either using UCM or OCI object storage:
Using UCM external storage
The already created BICC user needs to have access to the files that are being written on the UCM server. Therefore, the following role is required:
OBIA_EXTRACTTRANSFORMLOAD_RWD
Using OCI object storage
When using OCI Object Storage as an external storage, you need to to specify the OCI bucket from which the files will be picked up and also configure a user with which you can authenticate.
In your OCI instance, you either need to create a new storage bucket to which BICC should push the data files, or choose an existing bucket to which BICC is already connected.
For the storage bucket, the following details are required for the connection set-up:
Tenant OCID. For more information, see Oracle's documentation: Required keys and OCID.
Region (e.g. EU_FRANKFURT_1)
Namespace
Bucket Name
To authenticate with the bucket, we require the following:
User OCID. For more information, see Oracle's documentation: Required keys and OCID.
Fingerprint
Private key (in PEM format)
Storage name (provided in step 3)
The user needs to have the right permissions to be able to read from the bucket and rename the files. This requires the following permissions on the specific OCI bucket:
BUCKET_READ
OBJECT_CREATE
OBJECT_OVERWRITE
Ensure that there are no retention rules set for the specific object storage bucket as the extractor relies on the renaming of specific files. For more information, see: Oracle Docs - Object Storage Data Retention Rules.
You can retrieve the Fingerprint and PrivateKey by creating a new API key for the user (selecting the Generate API key pair option). The Private Key needs to be downloaded and is required in the data connection set-up. The fingerprint can be retrieved from the UI after generating the API key.
Important
The private key provided must be in PEM format or you will see errors when attempting to connect.
Based on your choice of external storage, you need to connect it to your BICC:
Using UCM external storage
If you're using UCM external storage, the connection is pre-configured and you need to just verify that it is working. To verify your connection:
Open your BICC instance, which can be accessed by appending /biacm to the URL of your Oracle Fusion instance. For example:
https://your-oracle-fusion-instance.oraclecloud.com/biacm
Navigate to Configure External Storage.
Open the UCM Connection tab.
Click Test UCM Connection.
If successful, a confirmation message is displayed.
For more information, see Oracle's documentation: Configure where to load data.
Using OCI object storage
If you're using OCI object storage, you need to create the connection:
Open your BICC instance, which can be accessed by appending /biacm to the URL of your Oracle Fusion instance. For example:
https://your-oracle-fusion-instance.oraclecloud.com/biacm
Navigate to Configure External Storage.
Open the OCI Object Storage Connection tab.
Click Test Connection.
If successful, a confirmation message is displayed.
Copy the name of the connection in BICC as this is required as an input parameter when creating a data connection in the Celonis Platform.
For more information, see Oracle's documentation: Configure where to load data.
You can create a data connection to Oracle Fusion Cloud from your data pool diagram:
Click Data Connections.
Click Add Data Connection and select Connect to Data Source.
Select Cloud - Oracle Fusion.
Configure the following connection details:
Name: An internal reference for this data connection.
Host: The REST server to contact for your identity domain or Cloud account. This information can be found by accessing your My Services dashboard for your identity domain or Cloud account. Locate the REST Endpoint field, which shows the URL to the REST server, for example: https://sales.oraclecloud.com/.
Username / Password: The username and password for the user who holds the permissions outlined in the prerequisites.
Instance version: Select the instance version that your Oracle Fusion Cloud instance is currently running. This can be found by clicking your profile and then About Application.
Select BICC
Storage: Select either UCM or OCI object storage.
If you're using OCI object storage, the following input paramters are required:
Tenant OCID
Region
Namespace
Bucket Name
User OCID
Fingerprint
Private key
Storage name
Click Test Connection and correct any issues highlighted.
Click Save.
Parallel extractions from the same Oracle Fusion Cloud instance
Extractions running through BICC are using the task ID (of an extraction task in Celonis) as a unique identifier. This identifier helps to distinguish different BICC extractions and their logic for incremental loads. As a result, there is no data loss when extracting the same table in two different data pools or even two different data jobs.
The Oracle Fusion Cloud BICC extractor supports the following functionalities:
Supported functionality | Description |
---|---|
Column selection | Select Customize Column Selection to choose individual table columns to extract, rather than extracting the whole table by default. |
Column pseudonymization | The pseudonymization algorithm (SHA-1, SHA-256, SHA-512) can be selected in the advanced settings of the data connection configuration. See: Oracle Fusion Cloud BICC. |
Non-populated columns | Choose Include Optional Columns to include columns marked in the metadata as "isPopulate": false (non-populated columns). By default these aren’t extracted. This can add a lot of extra columns, so we recommend you also select Customize Column Selection, then go through the updated list of columns and uncheck any that you don't want for your business case. |
Primary key definition | Primary keys are set to default values based on the metadata retrieved from BICC. It’s possible to adjust the defined primary keys in the column selection. |
Filtering | Supports filtering on all columns using the operators =, <, >, =>, =<. |
Delta loads | When executing a delta load on a table using this extractor, incremental loads are used. These incremental loads automatically identify the data that has changed since your last extraction. By default, BICC applies a prune time which defines an offset for how long before the last extraction to extract data from. This value is set to 1,440 minutes (24 hours). You can adjust it as part of the Extract Preferences in BICC. The default setting is suitable if you are scheduling daily delta loads. If you plan to extract more frequently (for example, hourly), we recommend you adjust this value accordingly. For further information on this configuration, see: Oracle Documentation - Configure Extract Preferences. |
Parallelization of requests | The extractor parallelizes the number of requests made to BICC for increased performance. The maximum number of requests can be configured in the advanced settings of the connection configuration (default: 10). For this extractor, the setting is identical to the number of tables that are being extracted in parallel. |
Error message: "Bad Request","message":"JBO-26048: Constraint \"C_JOB_DATA_STORE_REL_C_DA_FK1\" is violated during post operation.
If you receive this error message, we recommend checking whether there are any columns shown in the table’s column configuration. If there are none, it means that all columns have the flag 'isPopulate' set to false and no BICC job can be created. Without available columns, this table cannot be extracted.
To overcome this, you can “Include optional columns” in the Column configuration. Comment end