diff options
author | Luke Chen <luke.chen@mongodb.com> | 2022-02-22 13:40:13 +1100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-02-22 03:06:00 +0000 |
commit | 0a8923221dd39a1a35c4ec2608d47849bbd87549 (patch) | |
tree | cb3a7fa6cafe74ded877639b815543e7f7580f19 | |
parent | bd27885ec38c93f19c3814e4e42b9e88ad1f5510 (diff) | |
download | mongo-0a8923221dd39a1a35c4ec2608d47849bbd87549.tar.gz |
Import wiredtiger: 6ccd5b7d25b76fcb4f04c014845e9815f4349fc0 from branch mongodb-5.3
ref: 3e81642120..6ccd5b7d25
for: 5.3.0-rc1
WT-8831 Correct tuning documentation for split_pct parameter
-rw-r--r-- | src/third_party/wiredtiger/import.data | 2 | ||||
-rw-r--r-- | src/third_party/wiredtiger/src/docs/tune-page-size-and-comp.dox | 21 |
2 files changed, 10 insertions, 13 deletions
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index d128bab6d3f..e3876c41bfb 100644 --- a/src/third_party/wiredtiger/import.data +++ b/src/third_party/wiredtiger/import.data @@ -2,5 +2,5 @@ "vendor": "wiredtiger", "github": "wiredtiger/wiredtiger.git", "branch": "mongodb-5.3", - "commit": "3e81642120afab735f116d2a5a0fce811795ac2a" + "commit": "6ccd5b7d25b76fcb4f04c014845e9815f4349fc0" } diff --git a/src/third_party/wiredtiger/src/docs/tune-page-size-and-comp.dox b/src/third_party/wiredtiger/src/docs/tune-page-size-and-comp.dox index 679647a8fbf..6246036a32e 100644 --- a/src/third_party/wiredtiger/src/docs/tune-page-size-and-comp.dox +++ b/src/third_party/wiredtiger/src/docs/tune-page-size-and-comp.dox @@ -275,25 +275,22 @@ reconciled page must be split into multiple smaller pages before being sent for compression and then be written to the disk. If the reconciled page can fit into a single on-disk page without the page growing beyond it's set max size, split_pct is ignored and the page isn't split. - - an integer between 25 and 100 - - default : 75 + - an integer between 50 and 100 + - default : 90 - Motivation to tune the value: \n Most applications should not need to tune the split percentage size. - - This value should be selected to avoid creating a large number of tiny -pages or repeatedly splitting whenever new entries are inserted. -\n For example, if the maximum page size is 1MB, a split_pct value of 10% -would potentially result in creating a large number of 100KB pages, which may -not be optimal for future I/O. Or, if the maximum page size is 1MB, a split_pct -value of 90% would potentially result in repeatedly splitting pages as the split -pages grow to 1MB over and over. The default value for split_pct is 75%, -intended to keep large pages relatively large, while still giving split pages -room to grow. + - This value should be selected based on the expected workload. Workloads +that perform many random updates benefit from values around 66%, leaving room +on the newly split pages for future updates. Append-only workloads benefit from +a value of 100%, as they will not add updates to the newly split pages. +The default value for split_pct is 90%, intended as a balance between these two +workload types. - Configuration: \n Specified as split_pct configuration option to WT_SESSION::create. An example of such a configuration string is as follows: <pre> - "key_format=S,value_format=S,split_pct=60" + "key_format=S,value_format=S,split_pct=80" </pre> @section compression_considerations Compression considerations |