diff --git a/source/core/storage.txt b/source/core/storage.txt index 9c7ff3bf37e..a9c543ef77f 100644 --- a/source/core/storage.txt +++ b/source/core/storage.txt @@ -29,6 +29,8 @@ collections. Each database has a distinct set of data files and can contain a large number of collections. A single MongoDB deployment may have many databases. +.. _storage-wiredtiger: + WiredTiger Storage Engine ------------------------- @@ -61,7 +63,7 @@ the data files are *always* valid. The WiredTiger journal persists all data modifications between checkpoints. If MongoDB exits between checkpoints, it uses the journal to replay all data modified since the last checkpoint. By default the -WiredTiger journal is compressed using the ``snappy`` algorithm. +WiredTiger journal is compressed using the :term:`snappy` algorithm. You can disable journaling by setting :setting:`storage.journal.enabled` to ``false``, which can reduce the overhead of maintaining the @@ -71,27 +73,31 @@ unexpectedly between checkpoints. For members of :term:`replica sets `, the replication process may provide sufficient durability guarantees. +.. _storage-wiredtiger-compression: + Compression ~~~~~~~~~~~ MongoDB supports compression for all collections and indexes using -both block and prefix compression. Compression minimize storage use at the -expense of additional computational requirements. +both block and :term:`prefix compression`. Compression minimizes storage use at the +expense of additional CPU. -By default all indexes with the WiredTiger engine use prefix compression -enabled. Also, by default all collections with WiredTiger use block -compression with the ``snappy`` algorithm. Compression with ``zlib`` -compression is also available. +By default, all indexes with the WiredTiger engine use :term:`prefix compression`. +Also, by default all collections with WiredTiger use block +compression with the :term:`snappy` algorithm. Compression with :term:`zlib` +is also available. You can modify the default compression settings for all collections and indexes. Compression is also configurable on a per-collection and per-index basis during collection and index creation. -For most workloads the default compression settings balance storage +For most workloads, the default compression settings balance storage efficiency and processing requirements. .. TODO add link to wiredTiger configuration +.. _storage-mmapv1: + MMAPv1 Storage Engine --------------------- diff --git a/source/includes/options-mongod.yaml b/source/includes/options-mongod.yaml index be6aa0f46c4..348faffa424 100644 --- a/source/includes/options-mongod.yaml +++ b/source/includes/options-mongod.yaml @@ -1614,31 +1614,31 @@ description: | - ``none`` - - ``snappy`` + - :term:`snappy` - - ``zlib`` + - :term:`zlib` --- program: mongod name: wiredTigerCollectionBlockCompressor directive: option optional: true -default: "snappy" +default: "none" args: "" description: | .. versionadded:: 2.8.0 - Specifies the default type of compression to use to compress collection - data. You can override this on a per-collection basis when creating - collections. + Specifies the default type of compression to use to compress index + data. You can override this on a per-index basis when creating + indexes. Available compressors are: - ``none`` - - ``snappy`` + - :term:`snappy` - - ``zlib`` + - :term:`zlib` --- program: mongod name: wiredTigerIndexPrefixCompression @@ -1650,6 +1650,6 @@ description: | .. versionadded:: 2.8.0 - Specify ``true`` for {{role}} to enable prefix compression for + Specify ``true`` for {{role}} to enable :term:`prefix compression` for index data. ... diff --git a/source/reference/glossary.txt b/source/reference/glossary.txt index b34b4ce0ab1..357c1dac042 100644 --- a/source/reference/glossary.txt +++ b/source/reference/glossary.txt @@ -615,6 +615,12 @@ Glossary :doc:`/reference/command/collMod` and :collflag:`usePowerOf2Sizes`. + prefix compression + Reduces memory and disk consumption by storing any identical index + key prefixes only once, per page of memory. See: + :ref:`storage-wiredtiger-compression` for more about WiredTiger's + compression behavior. + pre-splitting An operation performed before inserting data that divides the range of possible shard key values into chunks to facilitate easy @@ -817,6 +823,16 @@ Glossary information on master/slave replication, see :doc:`/core/master-slave`. + snappy + A compression/decompression library designed to balance + efficient computation requirements with reasonable compression rates. + Snappy is the default compression + library for MongoDB's use of ':ref:`WiredTiger + `. See: `Snappy + `_ and the `WiredTiger compression + documentation `_ + for more information. + split The division between :term:`chunks ` in a :term:`sharded cluster`. See :doc:`/core/sharding-chunk-splitting`. @@ -961,3 +977,12 @@ Glossary relevant chunk get applied to the proper shard. For related information, see :ref:`faq-writebacklisten` and :ref:`server-status-writebacksqueued`. + + zlib + A data compression library that provides higher compression rates + at the cost of more CPU, compared to MongoDB's use of + :term:`snappy`. You can configure :ref:`WiredTiger + ` to use zlib as its compression library. See: + http://www.zlib.net and the `WiredTiger compression documentation + `_ for more + information. diff --git a/source/release-notes/2.8.txt b/source/release-notes/2.8.txt index b0f0feabec4..07f2587c71e 100644 --- a/source/release-notes/2.8.txt +++ b/source/release-notes/2.8.txt @@ -61,9 +61,9 @@ options. You can set :ref:`WiredTiger options on the command line All existing server, database, and collection reporting exposes statistics from WiredTiger. -WiredTiger compresses collection data by default using ``snappy``. +WiredTiger compresses collection data by default using :term:`snappy`. -WiredTiger uses prefix compression on all indexes by default. +WiredTiger uses :term:`prefix compression` on all indexes by default. Increased Number of Replica Set Members ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~