From: Laimis Juzeliƫnas Date: Fri, 25 Apr 2025 10:08:38 +0000 (+0300) Subject: doc/radosgw/compression: separate RGW and RADOS pool level compression X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a7fa91aebdeec6d4276fcb7d7b9a544c6431f2c0;p=ceph.git doc/radosgw/compression: separate RGW and RADOS pool level compression Add notes indicating a difference between compressions done by RGW and on RADOS pool level for better understanding. Signed-off-by: Laimis Juzeliunas Co-authored-by: Anthony D'Atri --- diff --git a/doc/rados/operations/pools.rst b/doc/rados/operations/pools.rst index 8686dddf635..b84008b77f5 100644 --- a/doc/rados/operations/pools.rst +++ b/doc/rados/operations/pools.rst @@ -399,6 +399,12 @@ You may set values for the following keys: :Description: Sets the maximum size for chunks: that is, chunks larger than this are broken into smaller blobs no larger than this size before compression is performed. :Type: Unsigned Integer +.. note:: Compressed pool statistics are visible using ``ceph df detail``. + Objects within compressed pools will show their original uncompressed + sizes via most API calls or CLI commands. For example: RGW buckets + placed directly in a compressed RADOS pool with no RGW level compression + will report uncompressed bucket sizes via ``radosgw-admin``. + .. _size: .. describe:: size diff --git a/doc/radosgw/compression.rst b/doc/radosgw/compression.rst index 429dde91c73..cf778cc762b 100644 --- a/doc/radosgw/compression.rst +++ b/doc/radosgw/compression.rst @@ -5,7 +5,6 @@ Compression .. versionadded:: Kraken The Ceph Object Gateway supports server-side compression of uploaded objects. -using any of the existing compression plugins. .. note:: The Reef release added a :ref:`feature_compress_encrypted` zonegroup feature to enable compression with `Server-Side Encryption`_. @@ -17,6 +16,16 @@ Supported compression plugins include the following: * zlib * zstd +.. note:: Ceph Object Gateway compression is performed by RGW daemons only + for RGW objects, and is distinct from BlueStore compression that is performed + by OSDs at pool granularity. It is typical to only enable one or the other. + Enabling at both levels does not cause a problem, but one should make the decision + based on the use case. If your cluster only serves object storage and the nodes + where RGW runs have more available CPU than OSD nodes, RGW level compression may be appealing. + Compressing at the OSD level does mean compressing the same user data more + than once since it is post-replication, but in a cluster with far more OSDs + than RGWs this strategy may result in better performance. + Configuration =============