Oracle transactional model
01A consistent point in time is part of the payload.
An Oracle Database route must preserve relational and transactional meaning while rows cross system boundaries. Schema ownership, keys, data types, consistency points, commit behavior, and session settings all shape a dependable extraction or load.
Service, owner, query, SCN
Define service, schema, tables or query, columns, filters, ordering, keys, and the watermark used to discover incremental work. Make character set, time zone, large-object, and numeric precision expectations explicit before moving rows.
Checkpoint at commit evidence
Choose bounded batches and a durable checkpoint aligned with transaction commits. Recovery must distinguish a confirmed commit from an uncertain outcome, then reconcile keys or batch evidence before repeating writes or advancing the source bookmark.
Map Oracle meaning, not labels
Agree on type mapping, nullability, precision, timestamps, constraints, merge or insert behavior, commit cadence, rejected-row handling, and reconciliation totals. The contract should preserve business meaning, not only row count.
Oracle-aware Flower route
02Carry relational meaning through transformation and restart.
Flower's Oracle adapter supports structured reads, writes, and transactions with Oracle bind and identifier rules. The declarative route adds batching, conversion, validation, reject handling, lineage, and alerts without hiding endpoint-specific behavior.
Read from a declared consistency point
Choose statement-level consistency, one transaction view, or a deliberately captured SCN according to the use case and supported query design. Record that boundary with the batch so reconciliation compares like with like.
Normalize Oracle edge semantics
Validate NUMBER precision and scale, DATE versus TIMESTAMP variants, time zones, CHAR padding, RAW, LOB streaming, identifiers, and empty strings that Oracle currently treats as null. Make every lossy conversion a visible rule.
Align checkpoint and commit
Prepared destination writes run in bounded transactions with an intentional commit cadence. Flower advances the source bookmark after committed keys, affected rows, rejects, and reconciliation prove the batch outcome.
Oracle production choices
03Budget undo, sessions, LOBs, and commit cadence.
Oracle can give each query a consistent view while concurrent work continues, but long-running reads depend on undo availability and careful session behavior. Production limits must protect both the integration and the source workload.
Read-duration and undo budget
Test extraction duration against production-like change rates and undo retention. Use indexed predicates, bounded windows, query timeouts, pool limits, and a response plan for snapshot-too-old failures rather than blindly restarting the whole run.
LOB and network path
Profile LOB frequency and size separately from ordinary rows. Stream where appropriate, cap concurrent large values, avoid retaining unnecessary buffers, and reconcile content evidence so a row count cannot conceal a truncated document.
Incremental and delete coverage
Choose a supported business timestamp, sequence, version column, or SCN-based method with a stable key and overlap policy. State separately how hard deletes and backdated corrections are found; a watermark alone is not change-data capture.