Oracle Fusion Cloud ERP and Databricks integration
Oracle Fusion Cloud ERP holds your transactional financial data across Accounts Payable, Accounts Receivable, General Ledger, Procurement, and Supply Chain. Databricks is where you perform analytics, reconciliation, and operational reporting on that data. ml-connector moves invoices, payments, suppliers, purchase orders, journal entries, and GL accounts from Oracle Fusion Cloud ERP into Databricks tables on a schedule, so your analytics and reporting teams work with current data without manual export and re-import. Every load carries a full audit trail and can be replayed if a transformation downstream fails.
What moves between them
The main flow runs from Oracle Fusion Cloud ERP into Databricks. ml-connector polls Oracle Fusion Cloud ERP on a configurable schedule (typically daily or weekly for financial close cycles), extracts invoices, purchase orders, journal entries, supplier records, and GL account master data, and writes each dataset into a separate Databricks SQL table within your workspace. Each table is initialized on first load and then updated incrementally, using Oracle Fusion Cloud ERP's LastUpdateDate field to load only new and changed records since the last run. Because Databricks is an analytics platform with no transactional write operations back to Oracle Fusion Cloud ERP, data flows in one direction only.
How ml-connector handles it
ml-connector authenticates to Oracle Fusion Cloud ERP using OAuth 2.0 Client Credentials against your customer-specific pod URL and stores the OAuth token for the duration of the one-hour window, refreshing before expiry. It builds OData query filters to extract only records created or updated since the last run, using timestamp tracking to avoid duplicates across polling intervals. For Databricks, ml-connector obtains a separate OAuth token using your Service Principal and workspace endpoint, then writes extracted records as JSON rows into SQL tables, using an upsert pattern so updated records from Oracle Fusion Cloud ERP overwrite stale rows. ml-connector polls on a schedule (not triggered by Oracle Fusion Cloud ERP Business Events, which require Oracle Integration Cloud middleware) and retries failed table writes with exponential backoff. Every record carries metadata including the load timestamp and the oracle run id so your analytics team can trace data lineage and replay loads if a downstream Spark job or transformation fails.
A real-world example
A mid-market business services firm runs Oracle Fusion Cloud ERP for Finance, Procurement, and HR, and maintains a Databricks warehouse for operational analytics and month-end close reporting. Previously, the finance team exported invoice, payment, and GL data from Oracle Fusion Cloud ERP as CSV files on a weekly schedule and manually loaded them into Databricks, causing data to be 7 to 10 days stale during rolling monthly reconciliation. With Oracle Fusion Cloud ERP and Databricks connected, invoice and GL data flows automatically into Databricks every 24 hours, so the analytics and FP&A teams work with current data the moment it is available in the ledger. Month-end close reporting can pull the most recent GL state without waiting for manual extracts, and the firm eliminates the risk of load errors from misaligned columns or missing rows.
What you can do
- Extract invoices, payments, purchase orders, suppliers, and GL accounts from Oracle Fusion Cloud ERP and load them into Databricks SQL tables on a polling schedule.
- Use Oracle Fusion Cloud ERP's LastUpdateDate filtering to pull only new and changed records since the last run, avoiding duplicate loads.
- Authenticate both Oracle Fusion Cloud ERP and Databricks using OAuth 2.0 with automatic token refresh before expiry.
- Track extraction timestamps and record lineage so your analytics team can trace data back to its source and replay loads if needed.
- Write data into Databricks SQL-managed tables or Unity Catalog volumes, where it integrates with existing Spark and SQL transformations.
Questions
- Does ml-connector support Oracle Fusion Cloud ERP's Business Events system?
- Oracle Fusion Cloud ERP Business Events require Oracle Integration Cloud (OIC) middleware and cannot push directly to external URLs. ml-connector uses polling instead, extracting records on a schedule you control (typically daily) and filtering by LastUpdateDate to load only new and changed records since the last run. This approach works well for financial close cycles and analytics pipelines that do not require sub-minute latency.
- Which Oracle Fusion Cloud ERP entities can ml-connector extract to Databricks?
- ml-connector extracts invoices, payments, suppliers, purchase orders, customers, receivables invoices, journal batches, journal headers, journal lines, and GL accounts. Each entity is written to a separate Databricks SQL table, initialized on first load and then incrementally updated using Oracle Fusion Cloud ERP's LastUpdateDate field to identify changed records.
- What happens if ml-connector's Databricks write fails partway through a load?
- ml-connector tracks extraction timestamps and the source oracle record id in each table row, allowing your analytics team to identify which records were successfully loaded and which were not. If a write fails, ml-connector retries with exponential backoff, and if the retry also fails, the load is marked as incomplete so you can diagnose the root cause (permission, table schema mismatch, token expiry) before attempting a replay.
Related integrations
More Oracle Fusion Cloud ERP integrations
Other systems that connect to Databricks
Connect Oracle Fusion Cloud ERP and Databricks
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started