Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-32730

WiredTiger read-write performance for the insert benchmark

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Storage
    • None
    • Product Performance

      This covers read-write performance for the insert benchmark. Other issues are open for load performance (SERVER-32707) and full scan performance (SERVER-32711).

      I will start with results from inMemory-16 (database in memory, 16 clients, 16 collections) and the test where each writer is limited to 100 inserts/second, there are 16 collections, 16 query clients and 16 writer clients with a query/writer pair per collection.

      The first table has throughput and HW efficiency metrics:

      • ips.av - average insert rate, the target is 1600 given the rate limits, but because of artifacts in my Python code the max is ~1584.
      • qps.av - the average query rate
      • wkb/i - KB written to storage per insert
      • Mcpu/q - CPU overhead per query, alas this includes CPU used for queries and inserts
      • size - database size in GB at test end
      • rss - mysqld/mongod process size at test end in GB
      • wmb/s - storage write MB/s
      • cpu - average CPU utilization from vmstat us and sy columns

      From these results:

      • both engines sustain the target write rate
      • InnoDB gets ~2.2X more QPS
      • WiredTiger uses ~2.3X more CPU per query
      ips.av  qps.av  wkb/i   Mcpu/q  size    rss     wmb/s   cpu     engine
      1584    31386   36.09   1184    116     103.5   57.2    37.2    WiredTiger-3.6.0
      1584    67772   42.50    518    113     121.9   67.3    35.1    InnoDB-5.7.17
      

      The worst case response times are:

      • WiredTiger : ~0.5 seconds for insert, ~0.38 seconds for query
      • InnoDB: ~0.01 seconds for insert, ~0.009 seconds for query

            Assignee:
            backlog-server-perf [DO NOT USE] Backlog - Performance Team
            Reporter:
            mdcallag Mark Callaghan
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: