Various simple tests with different Write Concern options.
Write operations on documents with Write Concern. The supported operations currently are:
- insert
- update
- remove
Test
The following operations are tested:
- Insert empty documents.
- Update a set of ranged _ids by increment a field by 1.
- Remove a multiple docs matching a range, then insert / upsert new documents to replace the removed documents.
Results are reported as ops / sec.
Setup
Inserts: Nothing, inserts are on an empty collection. Updates: 4800 docs are created as part of the test initialization. Removes: The collection used for updates is reused for removes.
Notes
- For all the tests, a varying number of threads is used.
- The runtime for all the tests listed above defaults to 60 seconds.
- BenchRun does not support bulkWrite() and in particular cannot do unordered bulk inserts. For a sharded cluster therefore this isn't really testing what we want. In future, we may need to compensate with a higher thread count or more benchrun clients (see SERVER-29764).
- It is likely that threads levels are not yet at peak values (but we are currently limited in the max num of configurable threads, see SERVER-29764), but even in this case the results look like they are more stable.
Owning-team
mongodb/product-perf
- Source:
Members
(inner) j_value
The j option of writeConcern to use during tests. The default is true.
- Source:
(inner) thread_levels
The number of threads to run in parallel. The default is [1, 64, 128].
The actual values in use are injected by run_workloads.py, which gets it from config file, see this hello world example.
- Source:
(inner) w_value
The w option of writeConcern to use during tests. The default is 1.
- Source: