Configuring Cassandra compression

You can customize the compression settings for Cassandra SSTables to best suit your application's requirements. By using compression, you reduce the size of the data written to disk, and increase read and write throughput.

Important: The default compression settings ensure the highest performance.
You can configure two types of compression:
  • Client-to-server compression - compresses the communication between Pega Platform and Cassandra.
  • Node-to-node compression - compresses the contents of Cassandra SSTables.
Configure Cassandra compression by editing the corresponding prconfig.xml settings.

For more information about specifying settings through the prconfig.xml file, see Changing node settings by modifying the prconfig.xml file.

Procedure
  • Configure client-to-server compression:
    • If you want to use LZ4 compression, set the value of dnode/cassandra_client_compression to LZ4.

      Note: This is the default setting for client-to-server compression.
    • If you want to use Snappy compression, set the value of dnode/cassandra_client_compression to SNAPPY.

    • If you do not want to use client-to-server compression, set the value of dnode/cassandra_client_compression to NONE.

  • Configure node-to-node compression:
    • If you want to compress all node-to-node compression (both inter-data center and intra-data center), set the value of the dnode/yaml/internode_compression property to ALL.

      Note: This is the default setting for node-to-node compression.
    • If you want to compress only inter-data center traffic, set the value of the dnode/yaml/internode_compression property to DC.

    • If you do not want to use node-to-node compression, set the value of the dnode/yaml/internode_compression property to NONE.