Query throughput

Alex Gorrod edited this page Jul 29, 2014 · 1 revision

What

We have done many performance optimizations between the 2.2.1 and 2.3.0 releases of WiredTiger. This page details a simple benchmark that measures the performance improvements.

Results

Graph of results

Version Load time (seconds) Query (million operations per second)
2.2.1 7.85 1.75 million
2.3.0 7.42 2.10 million

That is a 20% improvement in a highly optimized code path in a single release. These performance optimizations should improve throughput for almost all in-memory workloads.

Benchmark Details

The benchmark tool used is wtperf included with the WiredTiger package. The configuration file used is:

conn_config="cache_size=5G"
table_config="internal_page_max=1MB,leaf_page_max=1MB"
icount=5000000
report_interval=10
run_time=200
populate_threads=1
threads=((count=8,reads=1))
value_sz=10

A summary of the workload:

  • Small keys and values
  • In cache workload
  • Running 8 concurrent threads doing random point queries

Hardware

Tested on an AWS h1.4xlarge instance type, which has 60GB RAM, 2x1024GB SSD drives (configured as RAID 0 with xfs), 16 vCPUs.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.