|
Running TSBS with the default granularity of "seconds" yielded a slight decrease in throughput but a very large improvement in I/O reduction from WiredTiger if we use damages.
To achieve this it requires certain conditions:
- Modify the time-series inserts code paths to use damages instead of performing full-document updates. This will require work on index management (done in
SERVER-69365) and discovering if indices need to be updated (done in SERVER-69368).
- Avoid materializing the full-document changes to the bucket as they will not be needed.
- Reuse cursors used by the operations to avoid repositioning in WiredTiger (it will cause full-document materialization). This API is exposed in SERVER-69355.
- Avoid cursor repositioning for unordered inserts as per SERVER-69362.
- Wait until WT-9668 is merged to fix overlap detection in WT_MODIFY.
|