Chapter 17 · Data Guard, Standby Databases, Broker, and High Availability

Synchronous vs Asynchronous Transport, Far Sync Concepts, Lag, and Network Design

Connect SYNC/ASYNC transport to the commit path and measurable redo/network capacity, separate transport lag from apply lag, and place Active Data Guard Far Sync behind its exact licensing/topology boundary.

Advanced120–145 minutesRedo-rate/RTT/lag capacity labSYNC/ASYNC are architecture choices, not tuning slogansFar Sync requires Active Data Guard on EE/EE-ESLast reviewed: August 2026

Learning outcomes

ServiceHub's primary is in one city and its standby is 80 ms away. The team chooses synchronous transport because “SYNC means zero data loss” and later discovers every commit became slower. Another team chooses ASYNC without measuring peak redo rate and accumulates transport lag during batch windows. Transport is a queueing/network design: redo generation, network throughput/round-trip time (RTT), standby receive I/O and apply capacity determine currency and commit impact.

01

Trace the SYNC and ASYNC commit paths and connect them to latency/data-loss exposure.

02

Separate transport lag, apply lag and stale DATUM_TIME evidence.

03

Measure redo bytes/second and commit rate in Free as inputs to a production transport design.

04

Use network RTT/throughput tests as capacity evidence rather than universal latency thresholds.

05

Explain Active Data Guard Far Sync as a licensed lightweight redo relay, not a standby database.

Generation-time baseline, licensing, topology, and safety boundary

The chapter was reviewed against Oracle AI Database 26ai RU 23.26.3, SQL Developer 26.2, and SQLcl 26.2.1. Oracle AI Database Free remains limited to 2 foreground CPU cores, 2 GB combined SGA/PGA memory, 12 GB user data, and one installation per logical environment, and receives no Oracle patches or Support service requests. Crucially, the current 26ai licensing matrix marks Oracle Data Guard Redo Apply, SQL Apply, Snapshot Standby, and Oracle Active Data Guard unavailable in Free. Therefore the mandatory Free exercises are architecture/design-validation labs using the existing FREE/FREEPDB1 database; they do not create a standby or enable Data Guard. Actual Data Guard commands are labeled for Oracle Enterprise Edition / EE-ES or entitled cloud offerings with at least two independent database systems plus Oracle Net connectivity. Active Data Guard features and Far Sync have their own option/offerings boundaries. No AWR/ASH/Diagnostics Pack is required for mandatory monitoring examples.

1. SYNC puts a remote acknowledgment in the protection path

With synchronous redo transport, primary transaction protection requires the remote destination to acknowledge the redo according to the configured durability mode. In Maximum Protection, SYNC to a synchronized standby is required. Maximum Availability also uses synchronized transport but preserves primary availability according to its rules when the destination becomes unavailable.

Commit latency can therefore include network RTT, standby/far-sync receive processing, and—when AFFIRM durability is used—standby redo-log I/O before acknowledgment.

2. ASYNC decouples primary commit from remote acknowledgment

With ASYNC, the primary can commit after local redo durability while transport workers send redo independently. This reduces direct WAN latency impact on commits but creates potential data-loss exposure for redo generated but not received by the target when the primary/site is lost.

Choice Commit path Primary tradeoff
SYNC/AFFIRM Local redo + synchronized remote durable receipt Lower data-loss exposure; network/remote I/O affects commit
FASTSYNC/NOAFFIRM Remote acknowledgment after receipt in memory Less remote-I/O latency; acknowledged redo can still be lost in certain compound failures
ASYNC Local redo durability; remote shipping decoupled Lower direct commit impact; untransported redo can be lost in a primary/site loss

Protection mode plus transport attribute—not the word “synchronous” alone—defines the real durability contract.

3. Transport lag and apply lag must be sampled repeatedly

sql · entitled standby
SELECT  name,  value,  time_computed,  datum_timeFROM v$dataguard_statsWHERE name IN ('transport lag','apply lag','apply finish time')ORDER BY name;

If DATUM_TIME stops changing, the displayed lag value is stale because fresh primary data is not arriving. Oracle notes that potential data loss during that disconnection must be considered from the last datum time toward the present, not from the frozen formatted lag alone.

4. Free design lab: measure source redo rate and commits/second

sql · snapshot A, run representative work, then snapshot B
SELECT  SYSTIMESTAMP AS captured_at,  MAX(CASE WHEN name='redo size' THEN value END) AS redo_bytes,  MAX(CASE WHEN name='user commits' THEN value END) AS commitsFROM v$sysstatWHERE name IN ('redo size','user commits');

Compute:

  • redo bytes/sec = delta redo bytes ÷ elapsed seconds
  • commits/sec = delta user commits ÷ elapsed seconds

Design network capacity from peak/percentile workload windows rather than one average. Include protocol/encryption/compression overhead, other traffic and failure/catch-up headroom based on measured testing—not a universal percentage.

5. Measure the path rather than infer it from geography

text · Linux/macOS: basic reachability/RTT sample
ping -c 20 standby-host.example.com
text · Windows PowerShell/Command Prompt
ping -n 20 standby-host.example.com

Ping gives an ICMP RTT sample, not Oracle Net throughput, packet-loss behavior under sustained load, or standby redo-write latency. Production qualification should measure Oracle Net transfer/redo behavior during normal and stressed network/storage conditions. Firewalls, MTU, TLS/native encryption, routing and competing traffic matter.

6. Entitled destination status shows transport state

sql · primary
SELECT  dest_id,  db_unique_name,  status,  type,  synchronization_status,  synchronized,  recovery_mode,  archived_seq#,  applied_seq#,  errorFROM v$archive_dest_statusWHERE type IN ('PHYSICAL','FAR SYNC')ORDER BY dest_id;

Sequence counters and synchronization status complement lag metrics. Do not interpret APPLIED_SEQ# alone for real-time apply without understanding whether the current SRL contains newer, not-yet-archived redo.

7. Far Sync moves the synchronous acknowledgment closer to the primary

An Oracle Data Guard far sync instance is a lightweight instance with a control file, SPFILE, password file and standby redo logs—but no user datafiles and no online redo logs. It cannot be opened for application access, run Redo Apply, become primary, or serve as a normal standby.

A common design sends redo synchronously from primary to a nearby far-sync instance and forwards it asynchronously over the WAN to a remote physical standby. This can extend zero-data-loss protection to a distant failover target under the documented failure model without putting the full WAN RTT directly into every primary commit.

Licensing

Far Sync is an Oracle Active Data Guard feature. The current licensing matrix marks it unavailable in Free/BaseDB EE/EE-HP and requires Active Data Guard on EE/EE-ES; it is included in BaseDB EE-EP and ExaDB.

8. Deliberately wrong: “RTT is 3 ms, therefore zero data loss is guaranteed”

RTT says nothing about standby redo-log durability, transport mode, protection mode, missing SRLs, observer/failover rules, redo corruption, bandwidth saturation, storage stalls or simultaneous failures. A zero-data-loss design requires a synchronized target and a tested failover path whose durability state is verified at failure time.

9. Network/redo capacity worksheet

Measured input Why it matters
Peak redo bytes/sec Minimum sustained transport demand before overhead/catch-up
Commit rate Frequency of synchronous acknowledgment pressure
RTT distribution SYNC commit-path network component
Packet loss/retransmits Transport stalls/jitter
Standby SRL write latency SYNC AFFIRM acknowledgment durability component
Apply MB/sec Whether apply can consume transported redo
Transport/apply lag trend Actual currency under production load

10. Production judgment

Choose SYNC when the business requires the lower data-loss exposure and the network/standby durability path fits commit-latency objectives. Choose ASYNC when commit isolation is more important and the explicit RPO permits transport lag. Monitor lag/freshness and test outage/catch-up conditions, not just healthy steady state.

Far Sync is topology-heavy and Active Data Guard licensed; do not present it as a free WAN accelerator. Lesson 4 now separates basic mounted standby protection from the separately licensed ability to keep apply running while application PDBs are open for reads.

Check your understanding

  1. Why can SYNC increase commit latency?
  2. What data-loss exposure does ASYNC introduce?
  3. What does an unchanged DATUM_TIME imply?
  4. Is a far sync instance a queryable standby database?
  5. Does a low ping RTT prove zero data loss?
Review the answers

Remote receipt/durability acknowledgment becomes part of the transaction protection path.

Redo generated/committed locally but not yet received by a surviving standby can be lost with the primary/site.

The standby is not receiving fresh lag data from the source, so the displayed lag can be stale.

No. It has no user datafiles, cannot open for applications and does not run Redo Apply.

No. Protection mode, transport durability, SRLs, bandwidth/storage behavior and failover/fencing state also determine the outcome.

Authoritative references

Keep knowledge open

Help the academy stay free and grow.

If these tutorials save you time, a small donation supports new lessons, technical review, diagrams, examples, and long-term maintenance.

ETHEthereum / ERC-20 only
0x716c4Ab160C4B66F31a28AE2448BfF68fc3a2ef0

Send only Ethereum or ERC-20 compatible assets to this address.