Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
This feature is in Beta. To use it, a workspace admin must turn on Lakeflow Connect for Oracle Eloqua from the Previews page. See Manage Azure Databricks previews.
The managed Oracle Eloqua connector in Lakeflow Connect reingests five tables in full on every run, doesn't capture records deleted from incremental tables until you run a full refresh, and can miss activities that Oracle Eloqua records late.
General software as a service (SaaS) connector limitations
The limitations in this section apply to all SaaS connectors in Lakeflow Connect.
- When you run a scheduled pipeline, alerts don't trigger immediately. Instead, they trigger when the next update runs.
- When a source table is deleted, the destination table is not automatically deleted. You must delete the destination table manually. This behavior is not consistent with Spark Declarative Pipelines on Lakeflow behavior.
- During source maintenance periods, Databricks might not be able to access your data.
- If a source table name conflicts with an existing destination table name, the pipeline update fails.
- Multi-destination pipeline support is API-only.
- You can optionally rename a table that you ingest. If you rename a table in your pipeline, it becomes an API-only pipeline, and you can no longer edit the pipeline in the UI.
- If you select a column after a pipeline has already started, the connector does not automatically backfill data for the new column. To ingest historical data, manually run a full refresh on the table.
- Databricks can't ingest two or more tables with the same name in the same pipeline, even if they come from different source schemas.
- The source system assumes that the cursor columns are monotonically increasing.
- The connector ingests raw data without transformations. Use downstream Spark Declarative Pipelines on Lakeflow pipelines for transformations.
Connector-specific limitations
The limitations in this section apply to the Oracle Eloqua connector.
- Expect every pipeline run to reingest the
option_list,event_registration_registrant,custom_object,contact_list_contact, andcontact_segmenttables in full. These tables don't support incremental ingestion, so each run reads all of their records from Oracle Eloqua, and the destination tables reflect inserts, updates, and deletes as of that run. - Run a full refresh of an incremental table to remove records deleted in Oracle Eloqua. Incremental tables capture inserted and updated records only, so deleted records remain in the destination table until the next full refresh. Activities of a deleted contact also remain in the
activity_*tables until a full refresh.
Activity tables
- Expect late-arriving activities to be missed. Each sync rereads the last hour of activities, or the last day for
activity_email_clickthrough, three days foractivity_external_activity, and seven days foractivity_bounceback. Activities that Oracle Eloqua records later than that, including external activities backdated by more than three days, are missed until you run a full refresh. Oracle Eloqua records bouncebacks hours or days late and doesn't document a maximum delay. activity_bouncebackingests activities up to one hour before each sync starts, because Oracle Eloqua records bouncebacks asynchronously. The other activity tables ingest activities up to the start of the sync.- An activity table with no rows rereads its full history, back to
start_datetime, on every sync. To limit the cost, set a recentstart_datetime. - Oracle Eloqua returns at most 5,000,000 records per activity export, and each export covers 30 days by default. If a table produces more than about 160,000 records per day, set a shorter
activity_window_stepon that table. See Connector options. - In
activity_page_viewandactivity_web_visit,ContactIdis the contact linked to the visitor when the activity was recorded. To get the visitor's current contact, joinVisitorIdto thevisitortable.
Contact list and segment membership tables
contact_list_contactskips empty contact lists. It also skips a list whose member count in Oracle Eloqua hasn't yet caught up after members were added, until the count updates.contact_segmentexports every segment on every sync, so its sync duration grows with the number of segments in your instance. Oracle Eloqua applies a soft limit of 2,000 exports per hour to each instance, so schedulecontact_segmentto run daily and at a different time thancontact_list_contact.- After a sync, Oracle Eloqua blocks deleting an exported contact list or segment for up to two hours.
- If a contact list or segment is deleted while a sync is running, that sync fails, and the next sync recovers. If Oracle Eloqua can't export a segment, the
contact_segmenttable fails until you fix the segment in Oracle Eloqua.