Case q03 · fact
Is Oracle Streams still an option for replicating to Azure?
Expected: No: desupported in Oracle Database 19c (deprecated since 12.1); name the replacement route (GoldenGate or a log-based CDC tool / Azure DMS where applicable).
No tools
larger model · 1 turn · 16 s · 16.4k in / 1.5k out✓ verdict ✗ grounded ✓ cited
Grader: Correct verdict; many unsourced claims (XStream licensing, Qlik/Striim, ZDM).
Answer
Is Oracle Streams still an option for replicating to Azure?
No, don't use Oracle Streams for a new Azure replication design. Oracle deprecated it in 12c (12.1.0.2) and removed support in Database 19c. Every supported target on Azure runs 19c or later, whether that's an Oracle VM on Azure or Oracle Database@Azure, so none of them support Streams.
Key facts
- Deprecation timeline: Oracle deprecated Streams in 12.1.0.2 and removed support in 19c. The 19c Upgrade Guide says to use Oracle GoldenGate instead. Advanced Replication was removed even earlier, in 12.1.
- Legacy sources: If your source is still 11g or 12c running Streams, both the source and Streams are well past Premier Support. Plan to decommission it, not extend it.
- XStream is not a way around this. The XStream APIs still exist, but you need a GoldenGate license to use them.
What to use instead
| Scenario | Recommended option |
|---|---|
| Oracle to Oracle on Azure VMs | Data Guard (physical standby) for DR or migration cutover. Use GoldenGate for active-active, filtering, or near-zero-downtime upgrades. |
| Oracle to Oracle Database@Azure (Exadata / Autonomous) | Zero Downtime Migration (ZDM), which uses Data Guard or GoldenGate under the hood, plus OCI GoldenGate for ongoing replication |
| Oracle to Azure SQL / PostgreSQL / Fabric (heterogeneous CDC) | GoldenGate (Azure Marketplace image or GoldenGate for Big Data), or third-party CDC tools such as Qlik Replicate, Striim or Debezium (via Kafka / Event Hubs) |
| Batch or bulk loads only | Azure Data Factory / Fabric Data Factory with the Oracle connector (not true CDC) |
Useful references:
- Microsoft, Oracle on Azure VMs, HA/DR: https://learn.microsoft.com/azure/virtual-machines/workloads/oracle/oracle-reference-architecture
- Oracle Database@Azure migration: https://learn.microsoft.com/azure/oracle/oracle-db/
- Oracle ZDM: https://www.oracle.com/database/zero-downtime-migration/
Recommendation
For a like-for-like Oracle target, use Data Guard, or ZDM if you're moving to Oracle Database@Azure. Add GoldenGate only if you need logical, bidirectional or heterogeneous replication. If you have existing Streams configurations, treat them as requirements to rebuild in GoldenGate. Map each capture, propagation and apply rule to a GoldenGate Extract, distribution path and Replicat.
Keyword search
larger model · 1 turn · 8 s · 18.6k in / 0.8k out✓ verdict ✗ grounded ✗ cited
Grader: Correct verdict; unsupported pump/Azure VM deployment claims; no URLs.
8 keyword-search passages
mapping_oracle-streams--oracle-db-at-azurescore 13.836feature_oracle-streamsscore 10.135mapping_oracle-streams--fabricscore 10.038caveat_pg-no-fast-refresh-mvscore 9.527glossary_scnscore 9.279glossary_desupportedscore 9.269mapping_oracle-streams--azure-dmsscore 8.299dispute_dbms-job-deprecated-vs-removedscore 8.258
Answer
No, Oracle Streams isn't an option. It was desupported in Oracle 19c, and no Azure database target can take part in Streams. You'll need to replace it, usually with GoldenGate.
Status
- Oracle deprecated Streams in 12.1 and named GoldenGate as its replacement. Oracle desupported it from 19.1 (notice dated April 2019). Streams never supported 12c-era features such as multitenant. [2]
- "Desupported" means Oracle no longer fixes bugs and may have removed the code. A target on a newer Oracle release, such as Oracle Database@Azure on 26ai, forces the replacement before or during the move. A non-Oracle target needs an equivalent anyway. [6]
- Advanced Queuing itself isn't deprecated. [2]
Replacement options by target
- Oracle Database@Azure → GoldenGate. It's the Oracle-native successor and the option for active-active replication. Microsoft lists it as a monitored deployment type, so you can watch it through Azure Monitor metrics and logs. [1]
- It isn't included in the Database@Azure price and needs its own licence.
- Streams capture, propagation and apply rules must be rewritten as GoldenGate extract, pump and replicat parameter files.
- You can deploy it on Database@Azure or on Azure VMs that can reach both endpoints.
- Microsoft Fabric mirroring (analytics only). It reads redo through LogMiner and writes Delta tables in OneLake, with latency as low as tens of seconds. [3]
- It only replicates one way, into OneLake, and can't replicate into another Oracle or SQL database.
- It requires archive log mode, supplemental logging and an on-premises data gateway.
- Azure Database Migration Service can't replace Streams. It has no online (continuous sync) scenario with Oracle as a source, only offline migrations to Azure SQL through SSMA. [7]
- Other change-feed routes: Azure Data Factory watermark pipelines or other change data capture tools. [2][7]
Migration tip: Streams configurations rarely show up in application code. Look for capture and apply processes, queue tables and rules, and find out which downstream systems depend on those feeds. [2]
The passages had no URLs, so the citations above refer to the numbered passages.
Sanity Context · GROQ
smaller model · 5 turns · 28 s · 34.2k in / 2.1k out✓ verdict ✓ grounded ✓ cited
Grader: Correct verdict, GoldenGate named, well-sourced Azure mappings.
4 tool calls
- initial_context on groq · 4,126 chars back
- groq_query on groq · 1,176 chars back
*[_type=="oracleFeature" && (slug.current match "*stream*" || name match "*Stream*")]{_id, name, "slug": slug.current, category, introducedIn, deprecatedIn, desupportedIn, oracleReplacement, reviewStatus, "sources": sources[]->{title,url}} - groq_query on groq · 6,928 chars back
*[_type=="mapping" && oracleFeature._ref=="feature_oracle-streams"]{_id, fidelity, effort, rationale, appliesToOracleVersions, "azureTarget": azureTarget->{name, service}, "sources": sources[]->{title,url}, "caveats": *[_type=="caveat" && references(^._id)]{severity, statement, appliesTo, firsthand, "evidence": evidence->{title,url}}} - groq_query on groq · 1,925 chars back
*[_type=="oracleFeature" && _id=="feature_oracle-streams"]{summary, obituary}
Answer
Verdict: No — Oracle Streams is desupported and not usable as a replication option; use Oracle GoldenGate or an Azure-side CDC pipeline instead.
Oracle-side status Oracle Streams (introduced pre-11.2) was deprecated in 12.1 and desupported starting 19.1 (19c), with Oracle naming GoldenGate as the replacement. Oracle's notice also states it never supported multitenant, and that Advanced Queuing (the underlying queuing mechanism) itself remains fully supported. — Deprecated and Desupported Features for Oracle Database 12c (12.1), Oracle Database Changes, Desupports, and Deprecations (Upgrade Guide 19c)
What the dataset maps Streams to on Azure (scoped to Oracle 11.2–18c, since Streams predates its own desupport there):
- Azure Database Migration Service — fidelity none. DMS has no online/continuous-sync scenario with Oracle as a source (Oracle→Azure SQL is offline-only via SSMA; no Oracle→PostgreSQL scenario exists), so it can't substitute for Streams replication. Severity: blocker. — Azure Database Migration Service: supported migration scenarios
- Azure Data Factory — fidelity workaround, effort L. ADF's Oracle connector is batch-only; Oracle isn't in ADF's native CDC or auto-incremental connector lists, so you'd build a customer-managed watermark pipeline — scheduled micro-batches, not log-based streaming, and no delete capture without a soft-delete column. Severity: major. — Change data capture in Azure Data Factory and Azure Synapse, Copy data to and from Oracle with Azure Data Factory
- Microsoft Fabric (Mirroring) — fidelity partial, effort M. Fabric mirrors Oracle via LogMiner into Delta tables in OneLake (latency as low as tens of seconds), reproducing capture-and-apply for analytics — but it's one-directional into OneLake only, requires archive log mode, supplemental logging, and an on-prem data gateway. It cannot replicate into another Oracle or SQL database. Severity: major (prerequisites). — Mirror Oracle databases in Microsoft Fabric, Mirroring in Microsoft Fabric
- Oracle Database@Azure — fidelity partial, effort M. Since Streams is desupported, the Oracle-native successor here is GoldenGate, which Microsoft lists as a monitored deployment type for active-active replication with app-level conflict handling — but GoldenGate is not included in Oracle Database@Azure pricing and requires separate licensing; its capture/replicat config differs from Streams rules. Severity: major. — Overview: Oracle Database@Azure, Business continuity and disaster recovery for Oracle Database@Azure (Exadata Database Service)
Bottom line for migration design: none of the four Azure-side targets are a true drop-in for Streams' database-to-database log-based replication. For operational replication, the dataset points to GoldenGate (self-licensed, on Oracle Database@Azure or elsewhere); for analytics-oriented CDC into Azure, Fabric Mirroring is the closest (partial) fit; ADF is a workaround at best; DMS is not viable at all for this purpose.
No dispute entries were found for Oracle Streams in the dataset.
GROQ + Knowledge Base
smaller model · 8 turns · 34 s · 63.6k in / 2.7k out✓ verdict ✓ grounded ✓ cited
Grader: Correct timeline and GoldenGate replacement; claims tied to cited sources.
7 tool calls
- initial_context on groq · 4,126 chars back
- initial_context on kb · 7,679 chars back
- groq_query on groq · 1,195 chars back
*[_type=="oracleFeature" && (slug.current match "*stream*" || name match "*Stream*")]{_id, name, slug, category, introducedIn, deprecatedIn, desupportedIn, oracleReplacement, reviewStatus, "sources": sources[]->{title,url}} - groq_query on groq · 7,052 chars back
*[_type=="mapping" && oracleFeature->slug.current=="oracle-streams"]{_id, fidelity, effort, rationale, appliesToOracleVersions, "azureTarget": azureTarget->{name, service}, "sources": sources[]->{title,url}, "caveats": *[_type=="caveat" && references(^._id)]{severity, statement, appliesTo, firsthand, "evidence": evidence->{title,url,publisher}}} - groq_query on groq · 749 chars back
*[_type=="dispute" && (claimA->mapping->oracleFeature->slug.current=="oracle-streams" || claimB->mapping->oracleFeature->slug.current=="oracle-streams")]{title, whatDisagrees, resolution, "claimA": claimA->{statement, "src": evidence->{title,url,publisher}}, "claimB": claimB->{statement, "src": evidence->{title,url,publisher}}, "resolvedBy": resolvedBy->{title,url}} - array_field_reader on groq · 111 chars back
{ "mode": "range", "documentId": "feature_oracle-streams", "field": "obituary", "range": { "startIndex": 0, "endIndex": 20 } } - array_field_reader on groq · 1,855 chars back
{ "mode": "range", "documentId": "feature_oracle-streams", "field": "summary", "range": { "startIndex": 0, "endIndex": 20 } }
Answer
Verdict: No. Oracle Streams is deprecated and desupported by Oracle itself — it isn't a supported replication mechanism for any current Oracle release, and Azure has no service that reproduces it directly.
Lifecycle status
- Introduced pre-11.2; deprecated in Oracle 12.1 and desupported starting 19c (19.1, per an April 2019 notice). Oracle's replacement is GoldenGate. — Deprecated and Desupported Features for Oracle Database 12c (12.1), Oracle Database Changes, Desupports, and Deprecations (Upgrade Guide 19c)
- Streams never supported 12c-era multitenant features; note that Advanced Queuing itself is not deprecated and remains fully supported (Streams used AQ queues internally). — same 19c source above, per the feature summary in the dataset.
Azure replication options mapped for Streams-era workloads (Oracle 11.2–18c scope in the dataset)
| Azure target | Fidelity | Key caveat |
|---|---|---|
| Azure Database Migration Service | none | No online/continuous-sync scenario with Oracle as a source at all — only offline SSMA migrations to Azure SQL targets. Azure Database Migration Service: supported migration scenarios |
| Azure Data Factory | workaround (effort L) | No native CDC or auto-incremental support for Oracle; requires a customer-managed watermark pipeline — batch micro-batches, not log-based streaming, and no delete capture without a soft-delete column. Change data capture in Azure Data Factory and Azure Synapse, Copy data to and from Oracle with Azure Data Factory |
| Microsoft Fabric (mirroring) | partial (effort M) | Reads redo via LogMiner into OneLake Delta tables (latency as low as tens of seconds) but is one-directional into OneLake only, requires archive log mode, supplemental logging, and an on-premises data gateway — not database-to-database replication. Mirror Oracle databases in Microsoft Fabric |
| Oracle Database@Azure | partial (effort M) | The Oracle-native successor, GoldenGate, is supported as a monitored deployment type for active-active replication, but is not included in the Database@Azure price and needs its own license; capture/replicat setup differs from Streams rules. Business continuity and disaster recovery for Oracle Database@Azure, Overview: Oracle Database@Azure |
All four mappings apply to Oracle versions 11.2, 12.1, 12.2, 18c. Given Streams' 19c desupport, if you're planning on 19c or later, Streams isn't in scope at all and GoldenGate on Oracle Database@Azure is the closest documented replacement in this dataset.
Disputes: none recorded for Oracle Streams in the dataset.
Gap: the dataset has no mapping evaluating GoldenGate itself as an Azure-independent replication engine beyond the Oracle Database@Azure caveat above (e.g., GoldenGate on Oracle-on-Azure-VM targets isn't covered by a distinct mapping here).