Module: workloads/crud

Various simple tests with different Write Concern options.

Write operations on documents with Write Concern. The supported operations currently are:

  1. 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

  1. 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: