Prerequisites for Data Streams Configuration
Complete the following preparation before creating a Data Stream. Most connection and payload issues originate in the source trail, security configuration, or consumer checkpoint design rather than in the WebSocket code.
Implementation checklist
Ensure that the following actions are in place before configuring Data Streams in Oracle GoldenGate:
-
A running Extract or upstream GoldenGate process writes the required tables and operations to a trail that the Distribution Service can read.
-
The trail retains enough history to cover the longest expected consumer outage and recovery window.
-
Supplemental logging and Extract configuration capture the before images, key columns, LOB values, DDL, tokens, and other data required by the consumer.
-
The Data Stream name, source trail name, and optional trail subdirectory are known.
-
The client can resolve and reach the Distribution Service or managed-service endpoint on the required port.
-
The client trusts the server certificate chain for
wss, and client certificates are available when mutual TLS is required. -
A GoldenGate account with the required role is available for REST administration and WebSocket authentication.
-
The consumer has durable checkpoint storage and a strategy for idempotent or atomic downstream writes.
-
Payload size, LOB handling, schema evolution, and CloudEvents requirements have been agreed with downstream owners.
REST API roles
The following table lists the required privileges to perform different actions for configuring a Data Stream:
| Operation | Minimum role |
|---|---|
| List Data Streams | User |
| Retrieve AsyncAPI YAML | User |
| Retrieve a Data Stream configuration | Operator |
| Create, update, or delete a Data Stream | Administrator |
| Update AsyncAPI YAML | Administrator |
Source trail requirements
Data Streams can publish only information present in the source trail. Creating a Data Stream does not add source logging, reconstruct omitted before images, or recover columns that Extract did not capture. Verify the trail contents before debugging the consumer.
| Consumer requirement | Source-side requirement |
|---|---|
| Full row before and after images | Configure database logging and Extract image options so the trail contains the required columns. |
| Reliable update/delete identity | Capture a primary key, unique key, or approved GoldenGate key columns. |
| DDL events | Enable and validate DDL capture for the source and Extract configuration. |
| Large LOB values | Capture LOB data and set Data Stream maxLobSize and maxRecordSize appropriately. |
| Transaction grouping | Include xid, opSeqno, and transInd; understand that filtering can remove operations from a transaction. |
| Source-level commit identifier | Include csn. Treat its value as a source-dependent string. |