Tune compression for availability group

Applies to: SQL Server

By default, SQL Server compresses data streams where appropriate for availability groups. Compression reduces network traffic, increases CPU load, and might induce latency. You must be a member of the sysadmin fixed server role to enable compression. The following table shows when SQL Server uses compression for availability group log streams:

Scenario Compression setting
Synchronous-commit replica Not compressed
Asynchronous-commit replicas Compressed
During automatic seeding Not compressed
TDE enabled and asynchronous-commit in database Compressed
TDE enabled and synchronous-commit in database Not compressed

Trace flags for availability group compression

For most scenarios, we don't recommend changing these settings. You can use global trace flags to test changing these settings. SQL Server applies global trace flags to the entire instance. All of the availability groups in the instance are affected by these settings.

The following table shows trace flags that change the default compression behavior for SQL Server.

Trace flag Description
1462 Disables log stream compression for availability groups with asynchronous replicas. This feature is enabled by default on asynchronous replicas to optimize network bandwidth.
9567 Enables compression of the data stream for availability groups during automatic seeding. During automatic seeding, compression can significantly reduce the transfer time, and increase the load on the processor.
9592 Enables log stream compression for availability groups with synchronous replicas. This feature is disabled by default on synchronous replicas because compression adds latency. Log stream compression is enabled by default for asynchronous replicas.