Introduction
Welcome to part two of this benchmarking series!
If you have landed here and are not fully aware of what is going on, this is a two-part blog post in which I share my results after benchmarking MongoDB from version 3.6 to 8.0.
In this post, I’m not going to describe the main idea behind this series, the environment, or how the tests were conducted. For that, we have the first part, which covers all those points with all the details I could think of.
If you want to get more context and understand further details behind the tests, you can find the link below to that first part:
How to use
Here, it’s a guide about the data and how to use/interpret it.
Below, you will see five tabs that you can access to see the results for each number of threads tested and the scenarios.
- You can just click in, and it will expand with the results.
Once you expand the tab, you will see a table with the operations tested (Scenario) on the far left column, and the result across all versions on the right.
- The numbers behind each version on that row mean Operations per Second.
For example:
- For the scenario of Aggregation.FindProjectionDottedField.Indexed.
- MongoDB 3.6 was able to perform 549.82 operations per second.
- MongoDB 4.0 was able to perform 520.79 operations per second.
- and so on…
For more details on the methodology, please refer to the section that further explains it in Part 1.
To help you with the analysis, the tables hold a few features for that.
1. You can easily compare results by selecting the version of your preference and hovering the mouse over the other release.
For example - Let’s pick version 8.0 as a reference.
- For that, click on the header line:

After that, once you hover your mouse on that same line, it will show the percentage difference when compared to 8.0:

- For that same scenario, MongoDB 7.0 performed 33.19% fewer operations when compared to 8.0.
2. You can enable/disable the “Highlight Version”
![]()
The idea was pretty simple. Since it’s a benchmark test, I wanted not only to compare the results, as previously, but also to see which release won for each scenario.
When we enable that option, it highlights which version had better performance for each scenario:

3. Last but not least, if you want to study those numbers, you can easily copy and paste the tables into the software of your preference.
Alongside that, Search is also enabled, so you can filter out the operations of your preference for that table to narrow the analysis by having only the matching results.
Benchmark Results
1 Thread
| Scenario | ||||||||
|---|---|---|---|---|---|---|---|---|
| Aggregation.FindProjectionDottedField.Indexed | 549.82 | 520.79 | 83.22 | 537.70 | 520.07 | 523.60 | 351.54 | 526.16 |
| Aggregation.FindProjectionThreeFieldsCovered | 535.65 | 183.56 | 159.52 | 529.55 | 529.75 | 528.35 | 327.46 | 90.28 |
| Aggregation.IntNonIdFindOne | 116.02 | 551.54 | 501.36 | 540.36 | 528.13 | 505.94 | 387.63 | 544.00 |
| Aggregation.IntNonIdFindOneProjection | 517.51 | 526.85 | 479.84 | 534.33 | 528.77 | 494.39 | 449.53 | 213.48 |
| Aggregation.IntNonIdFindOneProjectionCovered | 555.07 | 549.38 | 523.55 | 534.96 | 530.24 | 522.73 | 342.03 | 504.77 |
| Aggregation.ProjectExclude_LargeArray | 1.66 | 1.39 | 1.67 | 66.94 | 68.00 | 69.29 | 372.20 | 381.89 |
| Aggregation.RegexPrefixFindOne | 165.54 | 558.66 | 539.90 | 553.90 | 526.83 | 530.12 | 235.84 | 522.72 |
| Aggregation.TwoInts | 514.38 | 513.78 | 500.85 | 543.10 | 521.65 | 518.79 | 251.29 | 526.85 |
| Insert.BigKeyIndex | 214.76 | 240.43 | 207.19 | 252.84 | 247.83 | 249.84 | 198.47 | 43.71 |
| Insert.Empty | 566.56 | 547.60 | 463.79 | 460.09 | 482.58 | 495.54 | 559.98 | 564.84 |
| Insert.EmptyCapped | 584.92 | 546.28 | 481.33 | 438.35 | 440.79 | 504.15 | 561.89 | 559.95 |
| Insert.EmptyCapped.SeqIntID | 555.33 | 450.80 | 530.16 | 562.73 | 541.74 | 387.68 | 555.56 | 561.15 |
| Insert.IntIDUpsert | 522.43 | 452.06 | 552.94 | 548.09 | 525.90 | 434.35 | 539.75 | 543.87 |
| Insert.IntVector | 414.49 | 424.03 | 405.78 | 437.02 | 419.40 | 415.26 | 436.54 | 479.75 |
| Insert.JustID | 576.85 | 525.46 | 493.94 | 352.15 | 477.87 | 516.43 | 547.72 | 563.17 |
| Insert.JustNum | 576.93 | 487.78 | 373.13 | 343.41 | 454.00 | 521.79 | 565.08 | 570.71 |
| Insert.JustNumIndexed | 576.42 | 535.18 | 360.27 | 334.95 | 451.65 | 470.25 | 550.88 | 558.24 |
| Insert.LargeDocVector | 14.94 | 20.21 | 74.30 | 79.14 | 78.82 | 77.55 | 98.73 | 116.84 |
| Insert.MultiIndex.Contested.Rnd | 502.40 | 511.48 | 361.62 | 539.11 | 537.31 | 519.49 | 331.44 | 214.71 |
| Insert.MultiIndex.Uncontested.Rnd | 489.47 | 532.98 | 344.57 | 532.32 | 549.89 | 521.17 | 329.89 | 447.74 |
| Insert.MultiKeyIndex.Contested.Rnd | 548.16 | 492.78 | 477.98 | 567.00 | 541.48 | 506.64 | 341.35 | 191.92 |
| Insert.MultiKeyIndex.Uncontested.Rnd | 557.14 | 530.25 | 412.90 | 562.42 | 540.95 | 543.55 | 375.91 | 100.63 |
| Insert.SeqIntID.Indexed | 585.13 | 522.91 | 476.73 | 391.06 | 422.20 | 521.61 | 549.32 | 557.84 |
| Insert.SingleIndex.Contested.Rnd | 573.26 | 547.45 | 559.17 | 550.02 | 545.32 | 534.08 | 448.52 | 539.75 |
| Insert.SingleIndex.Seq | 526.23 | 315.77 | 554.81 | 451.10 | 388.56 | 399.83 | 552.73 | 429.90 |
| Insert.SingleIndex.Uncontested.Rnd | 526.29 | 440.80 | 456.23 | 566.68 | 548.37 | 519.84 | 339.83 | 500.81 |
| Insert.UniqueIndex | 165.56 | 542.75 | 535.93 | 322.08 | 492.41 | 502.58 | 540.50 | 557.43 |
| Insert.UniqueIndexCompound | 188.58 | 210.20 | 546.26 | 552.93 | 555.67 | 509.03 | 539.88 | 554.93 |
| Insert.UniqueIndexCompoundReverse | 102.53 | 163.63 | 543.38 | 557.24 | 555.83 | 509.60 | 554.51 | 538.09 |
| InsertIndexedStringsNonSimpleCollation | 329.29 | 281.01 | 540.61 | 552.08 | 523.32 | 486.55 | 527.48 | 562.05 |
| InsertIndexedStringsSimpleCollation | 546.33 | 369.81 | 533.37 | 552.25 | 539.91 | 535.66 | 551.73 | 566.70 |
| Queries.FindProjectionDottedField.Indexed | 549.21 | 72.39 | 158.51 | 535.46 | 537.07 | 514.66 | 293.15 | 527.41 |
| Queries.FindProjectionThreeFieldsCovered | 560.71 | 369.78 | 524.34 | 543.33 | 533.79 | 533.62 | 436.69 | 101.86 |
| Queries.IdentityView.FindProjectionDottedField.Indexed | 537.89 | 81.74 | 78.71 | 524.89 | 508.26 | 507.72 | 271.09 | 509.93 |
| Queries.IdentityView.FindProjectionThreeFieldsCovered | 538.56 | 122.63 | 391.09 | 526.62 | 516.86 | 516.84 | 319.15 | 170.78 |
| Queries.IdentityView.IntNonIdFindOne | 335.00 | 421.46 | 450.12 | 435.18 | 529.54 | 449.29 | 506.23 | 413.62 |
| Queries.IdentityView.IntNonIdFindOneProjection | 517.99 | 529.67 | 523.89 | 530.39 | 519.40 | 499.02 | 280.82 | 518.35 |
| Queries.IdentityView.IntNonIdFindOneProjectionCovered | 536.97 | 503.37 | 500.88 | 525.81 | 527.24 | 507.81 | 295.71 | 522.36 |
| Queries.IdentityView.ProjectExclude_LargeArray | 1.33 | 1.38 | 1.65 | 68.87 | 68.71 | 67.80 | 349.69 | 408.48 |
| Queries.IdentityView.RegexPrefixFindOne | 97.58 | 546.43 | 520.64 | 525.20 | 528.20 | 516.53 | 325.64 | 526.84 |
| Queries.IdentityView.TwoInts | 374.13 | 436.14 | 484.26 | 528.24 | 529.67 | 453.33 | 526.11 | 363.43 |
| Queries.IntNonIdFindOne | 485.43 | 471.08 | 382.73 | 411.20 | 540.67 | 443.52 | 525.01 | 373.50 |
| Queries.IntNonIdFindOneProjection | 558.90 | 519.49 | 520.02 | 541.13 | 536.00 | 520.64 | 446.48 | 514.00 |
| Queries.IntNonIdFindOneProjectionCovered | 564.50 | 527.29 | 527.84 | 548.61 | 534.64 | 505.21 | 308.50 | 73.51 |
| Queries.PartialIndex.AllInFilter.FilteredRange | 1,016.58 | 1,027.46 | 1,008.08 | 1,083.24 | 1,030.15 | 963.53 | 595.77 | 1,047.29 |
| Queries.PartialIndex.AllInFilter.FullRange | 877.69 | 951.39 | 985.13 | 1,088.98 | 807.65 | 996.49 | 1,062.30 | 885.71 |
| Queries.PartialIndex.FilteredRange | 847.42 | 1,009.93 | 990.39 | 1,072.03 | 895.80 | 972.34 | 1,066.83 | 897.38 |
| Queries.PartialIndex.FullRange | 619.66 | 625.38 | 546.02 | 640.35 | 560.24 | 581.58 | 586.29 | 597.16 |
| Queries.PartialIndex.NonFilteredRange | 666.40 | 668.26 | 444.71 | 647.84 | 635.52 | 546.42 | 319.47 | 653.80 |
| Queries.ProjectExclude_LargeArray | 423.44 | 431.91 | 363.66 | 70.55 | 69.60 | 54.49 | 394.25 | 423.78 |
| Queries.RegexPrefixFindOne | 193.83 | 562.40 | 545.05 | 552.52 | 532.41 | 531.98 | 409.62 | 525.37 |
| Queries.TwoInts | 392.47 | 476.05 | 509.03 | 524.54 | 536.26 | 468.69 | 534.67 | 416.26 |
| Remove.IntId | 856.03 | 826.40 | 762.41 | 568.77 | 521.78 | 674.67 | 808.94 | 818.19 |
| Remove.IntNonIdIndex | 843.72 | 732.79 | 806.83 | 783.11 | 749.87 | 753.86 | 719.10 | 784.46 |
| Remove.IntNonIdNoIndex | 675.69 | 622.43 | 639.29 | 629.90 | 644.00 | 609.97 | 638.51 | 670.34 |
| Remove.IntNonIdUniqueIndex | 842.53 | 558.57 | 791.74 | 809.70 | 786.76 | 713.49 | 617.42 | 808.91 |
| Update.FieldAtOffset | 232.05 | 258.14 | 241.52 | 237.68 | 232.53 | 233.82 | 238.22 | 251.93 |
| Update.IncFewLargeDoc | 104.51 | 459.23 | 541.27 | 515.06 | 518.36 | 412.10 | 520.54 | 526.52 |
| Update.IncFewLargeDocLongFields | 557.03 | 292.26 | 508.68 | 515.78 | 531.15 | 264.50 | 529.23 | 526.41 |
| Update.IncFewSmallDoc | 159.39 | 409.16 | 516.18 | 527.58 | 535.26 | 400.68 | 522.48 | 530.12 |
| Update.IncFewSmallDocLongFields | 276.10 | 402.41 | 507.62 | 509.14 | 507.92 | 466.05 | 523.97 | 527.33 |
| Update.IncNoIndex | 499.40 | 558.83 | 457.77 | 520.38 | 522.89 | 523.50 | 508.88 | 535.76 |
| Update.IncNoIndexUpsert | 158.57 | 550.74 | 550.81 | 517.87 | 538.80 | 524.89 | 510.19 | 528.23 |
| Update.IncWithIndex | 306.39 | 555.70 | 533.02 | 509.65 | 490.94 | 499.15 | 417.74 | 531.58 |
| Update.IncWithIndexUpsert | 102.69 | 537.14 | 543.84 | 519.59 | 534.45 | 531.61 | 518.67 | 536.07 |
| Update.ManyElementsWithinArray | 245.78 | 261.74 | 252.38 | 256.30 | 268.81 | 253.42 | 247.93 | 256.78 |
| Update.MatchedElementWithinArray | 494.91 | 448.77 | 488.96 | 480.85 | 456.09 | 430.08 | 483.18 | 489.39 |
| Update.SetWithIgnoredIndex.Random | 496.61 | 554.84 | 439.08 | 529.83 | 477.93 | 481.88 | 464.14 | 187.95 |
| Update.SetWithIgnoredIndex.String | 556.54 | 540.68 | 383.08 | 531.86 | 519.18 | 463.27 | 346.73 | 513.00 |
| Update.SetWithIndex.Random | 519.43 | 549.11 | 534.27 | 537.61 | 517.77 | 528.40 | 331.01 | 495.23 |
| Update.SetWithMultiIndex.Random | 515.38 | 542.17 | 478.18 | 533.26 | 478.35 | 457.40 | 480.88 | 183.60 |
| Update.SetWithMultiIndex.String | 486.35 | 473.08 | 497.44 | 496.37 | 488.16 | 501.20 | 288.72 | 498.67 |
| Update.SingleDocFieldAtOffset | 778.08 | 815.97 | 663.70 | 803.50 | 755.28 | 790.42 | 699.73 | 798.43 |
| Update.UniqueIndex | 486.70 | 523.22 | 536.65 | 510.24 | 524.99 | 509.60 | 465.73 | 527.29 |
| Update.UniqueIndexCompoundReverse | 491.75 | 511.95 | 533.13 | 492.98 | 519.22 | 511.90 | 383.37 | 525.34 |
2 Threads
| Scenario | ||||||||
|---|---|---|---|---|---|---|---|---|
| Aggregation.FindProjectionDottedField.Indexed | 1,074.18 | 612.68 | 1,041.88 | 1,062.28 | 1,042.37 | 1,019.98 | 890.62 | 1,034.04 |
| Aggregation.FindProjectionThreeFieldsCovered | 1,079.55 | 647.14 | 1,066.45 | 1,037.92 | 1,034.55 | 1,004.32 | 907.86 | 1,049.77 |
| Aggregation.IntNonIdFindOne | 971.15 | 911.72 | 899.08 | 1,083.66 | 1,003.34 | 1,043.04 | 846.55 | 1,083.36 |
| Aggregation.IntNonIdFindOneProjection | 1,072.76 | 795.91 | 1,044.28 | 1,054.26 | 1,050.39 | 1,023.28 | 819.69 | 1,024.42 |
| Aggregation.IntNonIdFindOneProjectionCovered | 283.32 | 184.07 | 920.08 | 1,032.99 | 1,033.22 | 1,028.96 | 631.80 | 1,049.66 |
| Aggregation.ProjectExclude_LargeArray | 2.26 | 2.27 | 2.20 | 90.35 | 95.15 | 95.29 | 793.04 | 264.68 |
| Aggregation.RegexPrefixFindOne | 968.88 | 907.53 | 761.27 | 1,081.50 | 1,051.19 | 1,035.95 | 1,044.09 | 552.33 |
| Aggregation.TwoInts | 1,050.76 | 888.59 | 730.81 | 1,043.44 | 939.90 | 907.74 | 945.32 | 171.69 |
| Insert.BigKeyIndex | 353.18 | 358.73 | 272.71 | 361.16 | 360.16 | 356.57 | 240.56 | 363.60 |
| Insert.Empty | 1,107.45 | 1,039.66 | 1,091.18 | 1,112.87 | 1,071.99 | 1,055.44 | 1,061.53 | 1,106.78 |
| Insert.EmptyCapped | 1,110.82 | 1,042.36 | 1,084.44 | 1,101.31 | 1,062.96 | 1,076.40 | 1,068.71 | 1,108.80 |
| Insert.EmptyCapped.SeqIntID | 1,130.11 | 1,103.96 | 1,097.97 | 1,099.69 | 1,020.15 | 788.33 | 1,047.51 | 1,100.21 |
| Insert.IntIDUpsert | 1,125.52 | 1,064.67 | 1,049.49 | 1,065.14 | 923.99 | 870.45 | 1,067.61 | 1,058.47 |
| Insert.IntVector | 803.65 | 751.05 | 769.26 | 807.42 | 796.07 | 747.42 | 775.42 | 861.57 |
| Insert.JustID | 1,112.35 | 1,060.25 | 1,114.48 | 1,073.54 | 1,064.46 | 934.47 | 1,046.29 | 1,091.43 |
| Insert.JustNum | 1,113.80 | 1,055.19 | 1,048.37 | 1,104.74 | 1,043.13 | 1,059.35 | 1,025.21 | 1,091.63 |
| Insert.JustNumIndexed | 1,108.05 | 1,025.87 | 1,065.67 | 1,098.39 | 1,079.96 | 944.42 | 1,045.64 | 1,083.59 |
| Insert.LargeDocVector | 131.77 | 113.94 | 85.53 | 100.51 | 95.40 | 98.89 | 124.49 | 176.30 |
| Insert.MultiIndex.Contested.Rnd | 1,006.27 | 957.08 | 844.44 | 985.35 | 1,065.86 | 949.07 | 947.03 | 967.60 |
| Insert.MultiIndex.Uncontested.Rnd | 873.26 | 989.65 | 1,035.44 | 1,101.13 | 1,065.50 | 1,002.71 | 912.19 | 1,039.72 |
| Insert.MultiKeyIndex.Contested.Rnd | 956.00 | 960.36 | 1,029.59 | 992.49 | 1,085.07 | 899.73 | 898.27 | 1,056.98 |
| Insert.MultiKeyIndex.Uncontested.Rnd | 941.90 | 850.20 | 910.12 | 912.88 | 912.31 | 889.32 | 958.21 | 1,039.13 |
| Insert.SeqIntID.Indexed | 1,117.08 | 1,069.80 | 1,068.12 | 1,078.91 | 1,075.75 | 1,035.14 | 1,042.25 | 1,109.99 |
| Insert.SingleIndex.Contested.Rnd | 1,062.99 | 998.46 | 1,064.73 | 1,104.49 | 991.63 | 939.09 | 907.46 | 1,041.03 |
| Insert.SingleIndex.Seq | 1,012.22 | 1,089.71 | 813.89 | 1,116.81 | 1,074.50 | 1,042.03 | 756.80 | 1,052.63 |
| Insert.SingleIndex.Uncontested.Rnd | 1,020.16 | 955.89 | 886.22 | 1,064.64 | 1,006.45 | 895.93 | 990.91 | 1,029.24 |
| Insert.UniqueIndex | 1,089.73 | 1,049.43 | 1,075.41 | 1,074.22 | 937.61 | 1,047.29 | 1,044.29 | 1,075.61 |
| Insert.UniqueIndexCompound | 1,123.80 | 1,098.49 | 1,100.55 | 1,082.22 | 971.43 | 905.28 | 1,074.65 | 1,040.61 |
| Insert.UniqueIndexCompoundReverse | 1,135.03 | 1,104.63 | 1,085.85 | 1,068.16 | 1,071.46 | 902.79 | 1,085.87 | 1,070.36 |
| InsertIndexedStringsNonSimpleCollation | 1,119.74 | 1,098.11 | 1,066.01 | 1,094.67 | 952.66 | 749.69 | 1,069.10 | 1,048.74 |
| InsertIndexedStringsSimpleCollation | 1,110.17 | 1,094.20 | 1,076.62 | 1,086.81 | 947.39 | 784.78 | 1,077.98 | 1,044.89 |
| Queries.FindProjectionDottedField.Indexed | 799.93 | 959.63 | 889.87 | 1,077.24 | 849.10 | 982.49 | 804.09 | 1,059.37 |
| Queries.FindProjectionThreeFieldsCovered | 1,075.68 | 940.63 | 1,015.11 | 1,063.42 | 1,053.66 | 1,026.83 | 937.14 | 1,058.96 |
| Queries.IdentityView.FindProjectionDottedField.Indexed | 916.09 | 882.16 | 890.75 | 1,043.30 | 1,013.76 | 723.15 | 823.62 | 1,040.36 |
| Queries.IdentityView.FindProjectionThreeFieldsCovered | 1,018.12 | 726.28 | 892.29 | 1,044.27 | 1,030.30 | 961.32 | 865.62 | 1,040.35 |
| Queries.IdentityView.IntNonIdFindOne | 1,041.10 | 843.09 | 778.26 | 1,043.83 | 1,035.61 | 998.60 | 999.93 | 1,076.91 |
| Queries.IdentityView.IntNonIdFindOneProjection | 1,057.61 | 63.74 | 961.44 | 1,044.31 | 1,027.18 | 1,024.64 | 892.71 | 1,035.49 |
| Queries.IdentityView.IntNonIdFindOneProjectionCovered | 193.81 | 284.94 | 967.14 | 1,030.51 | 1,036.31 | 988.62 | 701.46 | 1,032.42 |
| Queries.IdentityView.ProjectExclude_LargeArray | 3.19 | 1.82 | 2.27 | 96.27 | 92.06 | 95.44 | 551.07 | 776.50 |
| Queries.IdentityView.RegexPrefixFindOne | 1,001.47 | 845.69 | 810.55 | 1,063.14 | 1,015.41 | 996.67 | 854.36 | 1,059.90 |
| Queries.IdentityView.TwoInts | 1,052.35 | 775.60 | 1,009.75 | 1,045.62 | 1,043.31 | 1,027.34 | 967.88 | 304.35 |
| Queries.IntNonIdFindOne | 1,068.37 | 844.14 | 982.88 | 1,065.29 | 1,071.68 | 994.64 | 925.68 | 1,097.63 |
| Queries.IntNonIdFindOneProjection | 188.15 | 237.52 | 802.53 | 1,073.76 | 918.04 | 937.33 | 900.46 | 982.86 |
| Queries.IntNonIdFindOneProjectionCovered | 253.70 | 823.27 | 873.53 | 1,082.97 | 1,045.54 | 758.51 | 893.06 | 1,077.93 |
| Queries.PartialIndex.AllInFilter.FilteredRange | 281.19 | 1,624.08 | 2,058.92 | 2,125.52 | 2,032.95 | 1,843.42 | 2,018.47 | 1,898.92 |
| Queries.PartialIndex.AllInFilter.FullRange | 2,058.80 | 2,129.69 | 2,173.14 | 2,098.82 | 2,058.97 | 2,016.49 | 1,517.03 | 2,124.48 |
| Queries.PartialIndex.FilteredRange | 733.50 | 1,863.10 | 2,152.56 | 2,136.43 | 2,049.72 | 1,973.12 | 1,441.56 | 346.71 |
| Queries.PartialIndex.FullRange | 182.72 | 1,207.43 | 1,283.42 | 1,287.80 | 1,245.08 | 1,124.40 | 1,041.78 | 1,355.92 |
| Queries.PartialIndex.NonFilteredRange | 431.85 | 1,021.71 | 1,186.80 | 1,255.11 | 1,179.53 | 958.56 | 1,145.35 | 1,247.08 |
| Queries.ProjectExclude_LargeArray | 820.94 | 684.04 | 765.71 | 96.39 | 92.45 | 95.41 | 572.06 | 823.98 |
| Queries.RegexPrefixFindOne | 991.54 | 789.27 | 766.86 | 1,081.52 | 1,078.01 | 837.09 | 883.12 | 1,068.80 |
| Queries.TwoInts | 1,067.33 | 552.68 | 593.64 | 1,072.09 | 949.97 | 934.89 | 923.27 | 255.57 |
| Remove.IntId | 1,643.27 | 1,280.16 | 1,540.90 | 1,602.48 | 1,562.38 | 1,435.79 | 1,202.63 | 1,615.66 |
| Remove.IntNonIdIndex | 1,621.43 | 1,292.18 | 1,570.70 | 1,608.08 | 1,572.45 | 1,548.55 | 1,163.34 | 1,592.97 |
| Remove.IntNonIdNoIndex | 1,385.75 | 1,147.50 | 1,300.19 | 1,308.72 | 1,247.21 | 1,202.27 | 1,003.98 | 1,328.84 |
| Remove.IntNonIdUniqueIndex | 1,622.25 | 1,444.82 | 1,624.38 | 1,558.93 | 1,477.01 | 1,266.53 | 1,433.48 | 1,519.07 |
| Update.FieldAtOffset | 470.07 | 491.87 | 481.13 | 465.62 | 430.29 | 477.76 | 480.81 | 477.78 |
| Update.IncFewLargeDoc | 1,047.76 | 933.94 | 1,074.63 | 1,045.81 | 953.13 | 949.61 | 1,020.33 | 1,045.76 |
| Update.IncFewLargeDocLongFields | 1,045.48 | 1,047.54 | 984.01 | 1,018.32 | 1,023.18 | 1,045.03 | 978.30 | 860.32 |
| Update.IncFewSmallDoc | 1,060.70 | 895.97 | 1,073.07 | 1,054.20 | 1,024.77 | 1,050.97 | 1,054.99 | 1,043.82 |
| Update.IncFewSmallDocLongFields | 1,044.89 | 1,069.97 | 972.86 | 1,017.07 | 1,037.76 | 1,048.58 | 972.92 | 1,037.87 |
| Update.IncNoIndex | 964.54 | 976.95 | 1,082.20 | 289.47 | 1,057.06 | 1,012.69 | 1,053.52 | 1,029.69 |
| Update.IncNoIndexUpsert | 998.96 | 1,056.66 | 1,033.29 | 699.59 | 1,040.61 | 1,048.01 | 971.44 | 1,037.18 |
| Update.IncWithIndex | 1,044.54 | 983.59 | 1,057.76 | 197.34 | 1,035.60 | 1,033.51 | 1,051.90 | 1,051.81 |
| Update.IncWithIndexUpsert | 1,006.43 | 1,042.28 | 1,040.45 | 1,016.85 | 1,049.29 | 1,051.95 | 952.07 | 1,035.84 |
| Update.ManyElementsWithinArray | 413.15 | 479.23 | 429.45 | 466.19 | 413.53 | 462.30 | 444.41 | 455.53 |
| Update.MatchedElementWithinArray | 814.85 | 977.42 | 838.37 | 954.68 | 857.27 | 957.55 | 901.13 | 960.32 |
| Update.SetWithIgnoredIndex.Random | 1,069.22 | 1,022.03 | 1,025.39 | 1,048.21 | 1,032.44 | 967.80 | 751.43 | 807.52 |
| Update.SetWithIgnoredIndex.String | 1,072.49 | 976.92 | 763.78 | 1,028.69 | 1,025.07 | 1,038.09 | 739.11 | 1,055.57 |
| Update.SetWithIndex.Random | 866.44 | 977.51 | 788.29 | 1,055.96 | 1,019.54 | 1,042.51 | 778.65 | 366.40 |
| Update.SetWithMultiIndex.Random | 1,056.61 | 1,052.06 | 983.22 | 1,007.76 | 1,029.99 | 678.91 | 703.64 | 196.71 |
| Update.SetWithMultiIndex.String | 1,012.97 | 1,008.94 | 988.20 | 1,027.00 | 999.44 | 990.87 | 818.38 | 977.40 |
| Update.SingleDocFieldAtOffset | 1,521.47 | 1,633.40 | 1,455.90 | 1,552.59 | 1,275.35 | 1,541.79 | 1,513.53 | 1,526.36 |
| Update.UniqueIndex | 897.50 | 969.29 | 1,031.53 | 1,034.25 | 974.51 | 986.25 | 980.18 | 1,033.86 |
| Update.UniqueIndexCompoundReverse | 1,064.17 | 1,050.34 | 967.86 | 1,003.89 | 659.07 | 1,006.09 | 986.01 | 1,019.17 |
4 Threads
| Scenario | ||||||||
|---|---|---|---|---|---|---|---|---|
| Aggregation.FindProjectionDottedField.Indexed | 1,465.67 | 1,470.96 | 2,038.51 | 1,920.82 | 1,942.90 | 1,928.34 | 1,971.08 | 2,045.44 |
| Aggregation.FindProjectionThreeFieldsCovered | 2,109.28 | 1,439.08 | 1,997.53 | 1,927.54 | 1,958.09 | 1,981.67 | 1,392.57 | 2,064.42 |
| Aggregation.IntNonIdFindOne | 2,132.75 | 1,457.83 | 1,522.33 | 1,982.80 | 2,075.43 | 1,989.09 | 1,566.11 | 2,147.90 |
| Aggregation.IntNonIdFindOneProjection | 2,135.76 | 239.29 | 1,954.71 | 1,917.03 | 1,971.47 | 1,936.14 | 1,482.27 | 2,068.66 |
| Aggregation.IntNonIdFindOneProjectionCovered | 2,017.89 | 746.89 | 2,044.43 | 1,903.95 | 2,024.03 | 1,933.69 | 1,684.72 | 395.83 |
| Aggregation.ProjectExclude_LargeArray | 4.40 | 3.32 | 2.65 | 110.71 | 110.24 | 112.90 | 1,206.83 | 1,645.77 |
| Aggregation.RegexPrefixFindOne | 2,131.52 | 1,334.40 | 1,984.66 | 1,949.68 | 1,996.29 | 1,973.27 | 1,828.54 | 2,082.74 |
| Aggregation.TwoInts | 1,868.52 | 1,492.28 | 2,038.79 | 1,925.56 | 1,984.00 | 1,705.15 | 1,401.59 | 1,421.43 |
| Insert.BigKeyIndex | 430.64 | 445.60 | 425.83 | 455.07 | 446.80 | 445.43 | 351.05 | 449.46 |
| Insert.Empty | 540.12 | 1,822.74 | 1,926.65 | 2,140.17 | 2,159.80 | 1,688.32 | 2,033.31 | 2,157.06 |
| Insert.EmptyCapped | 400.14 | 1,571.68 | 2,044.74 | 2,141.96 | 2,156.06 | 2,058.96 | 2,101.73 | 2,181.35 |
| Insert.EmptyCapped.SeqIntID | 621.39 | 1,662.99 | 1,938.71 | 2,158.69 | 1,815.88 | 1,573.74 | 2,094.49 | 2,166.36 |
| Insert.IntIDUpsert | 2,150.30 | 1,806.64 | 1,971.12 | 2,129.73 | 2,040.54 | 1,772.86 | 1,984.35 | 2,119.81 |
| Insert.IntVector | 568.93 | 1,394.61 | 1,468.62 | 1,552.90 | 1,534.68 | 1,487.63 | 1,478.20 | 1,752.80 |
| Insert.JustID | 422.76 | 1,870.83 | 1,997.43 | 2,078.62 | 2,039.52 | 2,046.30 | 1,998.61 | 2,144.92 |
| Insert.JustNum | 2,109.52 | 1,927.48 | 1,885.26 | 2,144.59 | 2,093.47 | 1,984.30 | 2,016.96 | 2,145.00 |
| Insert.JustNumIndexed | 2,056.79 | 1,586.64 | 1,825.54 | 2,139.94 | 2,093.59 | 1,675.63 | 1,970.61 | 2,143.81 |
| Insert.LargeDocVector | 147.18 | 117.59 | 101.17 | 97.89 | 104.50 | 105.83 | 150.22 | 204.49 |
| Insert.MultiIndex.Contested.Rnd | 1,719.37 | 1,928.93 | 1,701.69 | 1,856.34 | 2,061.78 | 1,843.44 | 1,747.01 | 2,048.19 |
| Insert.MultiIndex.Uncontested.Rnd | 1,355.09 | 1,573.68 | 1,642.79 | 2,067.79 | 1,958.49 | 1,704.02 | 1,781.93 | 2,106.42 |
| Insert.MultiKeyIndex.Contested.Rnd | 1,999.29 | 1,980.90 | 1,848.73 | 2,113.15 | 2,080.08 | 2,008.38 | 1,451.10 | 2,061.77 |
| Insert.MultiKeyIndex.Uncontested.Rnd | 2,019.17 | 2,034.53 | 1,380.31 | 1,771.41 | 2,076.91 | 2,003.32 | 1,495.01 | 2,053.13 |
| Insert.SeqIntID.Indexed | 2,049.51 | 1,207.52 | 2,020.72 | 2,126.69 | 2,039.84 | 2,036.59 | 1,934.11 | 2,129.67 |
| Insert.SingleIndex.Contested.Rnd | 184.73 | 1,698.75 | 1,860.51 | 1,993.73 | 2,112.91 | 1,842.98 | 1,765.75 | 1,062.45 |
| Insert.SingleIndex.Seq | 566.07 | 2,028.91 | 1,827.76 | 2,182.43 | 2,017.03 | 2,070.55 | 1,815.85 | 587.19 |
| Insert.SingleIndex.Uncontested.Rnd | 624.78 | 1,921.31 | 1,513.28 | 1,891.69 | 1,962.50 | 1,858.66 | 1,709.16 | 410.17 |
| Insert.UniqueIndex | 2,027.16 | 1,455.42 | 1,731.93 | 2,137.72 | 2,076.55 | 1,771.58 | 1,953.20 | 2,126.56 |
| Insert.UniqueIndexCompound | 2,023.47 | 2,045.20 | 1,700.59 | 2,143.07 | 2,027.91 | 1,842.09 | 2,009.92 | 2,152.22 |
| Insert.UniqueIndexCompoundReverse | 2,051.10 | 2,007.68 | 1,965.06 | 2,160.31 | 2,070.41 | 1,904.22 | 2,018.98 | 2,150.28 |
| InsertIndexedStringsNonSimpleCollation | 1,992.00 | 1,656.45 | 1,738.97 | 2,093.36 | 2,031.12 | 2,000.64 | 2,047.34 | 2,130.75 |
| InsertIndexedStringsSimpleCollation | 2,089.83 | 1,679.83 | 1,947.10 | 2,107.17 | 1,959.46 | 1,988.39 | 2,046.56 | 2,160.96 |
| Queries.FindProjectionDottedField.Indexed | 2,106.73 | 1,142.20 | 2,051.65 | 1,938.91 | 2,013.86 | 1,924.21 | 1,232.65 | 2,110.78 |
| Queries.FindProjectionThreeFieldsCovered | 2,070.64 | 1,801.32 | 2,007.80 | 2,046.79 | 1,940.56 | 1,943.14 | 1,653.63 | 2,036.32 |
| Queries.IdentityView.FindProjectionDottedField.Indexed | 2,143.25 | 1,225.43 | 1,479.20 | 1,988.90 | 1,937.34 | 1,968.07 | 1,413.02 | 2,047.54 |
| Queries.IdentityView.FindProjectionThreeFieldsCovered | 1,965.13 | 1,375.63 | 1,972.99 | 1,960.69 | 1,917.09 | 1,896.62 | 1,681.92 | 1,960.25 |
| Queries.IdentityView.IntNonIdFindOne | 2,105.55 | 1,171.45 | 1,962.95 | 1,934.02 | 1,831.76 | 1,892.11 | 1,686.51 | 1,896.55 |
| Queries.IdentityView.IntNonIdFindOneProjection | 2,087.41 | 382.85 | 1,926.93 | 1,875.40 | 1,945.91 | 1,898.21 | 1,458.80 | 2,042.92 |
| Queries.IdentityView.IntNonIdFindOneProjectionCovered | 2,118.66 | 1,107.16 | 1,965.59 | 1,957.85 | 1,965.18 | 1,935.24 | 1,406.13 | 701.45 |
| Queries.IdentityView.ProjectExclude_LargeArray | 3.62 | 3.38 | 2.65 | 108.43 | 110.00 | 108.68 | 902.46 | 378.87 |
| Queries.IdentityView.RegexPrefixFindOne | 2,174.41 | 1,587.02 | 2,076.12 | 1,952.04 | 1,984.40 | 1,952.23 | 1,944.78 | 2,091.63 |
| Queries.IdentityView.TwoInts | 2,008.58 | 1,684.54 | 1,973.83 | 1,966.50 | 1,937.09 | 2,005.51 | 1,827.03 | 2,040.02 |
| Queries.IntNonIdFindOne | 1,698.38 | 1,620.48 | 1,579.70 | 1,967.70 | 1,799.11 | 1,797.31 | 1,448.72 | 2,095.47 |
| Queries.IntNonIdFindOneProjection | 2,147.93 | 299.00 | 1,818.57 | 1,968.54 | 1,981.47 | 1,881.56 | 1,441.98 | 2,092.45 |
| Queries.IntNonIdFindOneProjectionCovered | 2,148.17 | 1,230.94 | 2,051.26 | 1,941.98 | 2,076.30 | 1,961.77 | 1,429.71 | 632.97 |
| Queries.PartialIndex.AllInFilter.FilteredRange | 3,675.52 | 3,583.88 | 3,459.55 | 4,005.42 | 3,891.68 | 3,368.57 | 3,482.61 | 3,928.29 |
| Queries.PartialIndex.AllInFilter.FullRange | 4,078.34 | 3,848.79 | 2,560.63 | 3,987.49 | 4,169.26 | 4,017.19 | 2,934.01 | 3,999.56 |
| Queries.PartialIndex.FilteredRange | 4,038.97 | 3,876.91 | 2,611.31 | 3,796.74 | 4,169.82 | 3,713.39 | 3,031.26 | 678.78 |
| Queries.PartialIndex.FullRange | 2,284.13 | 2,458.67 | 2,094.97 | 2,454.52 | 2,474.45 | 2,250.06 | 2,142.21 | 484.57 |
| Queries.PartialIndex.NonFilteredRange | 2,313.91 | 2,465.83 | 2,140.77 | 2,471.11 | 2,151.43 | 2,128.80 | 1,939.96 | 478.65 |
| Queries.ProjectExclude_LargeArray | 1,710.72 | 795.45 | 1,518.58 | 104.74 | 109.96 | 106.82 | 835.11 | 1,451.48 |
| Queries.RegexPrefixFindOne | 2,018.23 | 1,480.29 | 1,982.35 | 1,985.93 | 1,989.28 | 2,005.34 | 2,053.05 | 2,137.57 |
| Queries.TwoInts | 2,035.01 | 1,813.44 | 1,676.56 | 1,911.41 | 1,822.19 | 1,828.65 | 1,556.43 | 2,080.73 |
| Remove.IntId | 2,696.21 | 2,258.78 | 3,080.52 | 3,147.28 | 2,948.76 | 2,897.51 | 2,321.37 | 3,075.39 |
| Remove.IntNonIdIndex | 2,781.64 | 2,210.52 | 2,992.05 | 3,125.92 | 2,934.72 | 2,795.41 | 2,404.35 | 3,115.44 |
| Remove.IntNonIdNoIndex | 2,377.21 | 2,092.83 | 2,556.35 | 2,547.90 | 2,564.18 | 2,452.00 | 2,225.96 | 2,652.35 |
| Remove.IntNonIdUniqueIndex | 3,006.78 | 2,130.52 | 2,931.47 | 3,099.53 | 2,896.79 | 3,021.05 | 2,174.95 | 3,036.50 |
| Update.FieldAtOffset | 939.68 | 995.47 | 898.32 | 936.10 | 891.26 | 916.23 | 826.39 | 983.39 |
| Update.IncFewLargeDoc | 2,047.16 | 2,060.13 | 1,276.99 | 1,922.45 | 1,988.20 | 2,013.43 | 1,355.25 | 2,086.74 |
| Update.IncFewLargeDocLongFields | 2,054.37 | 2,064.08 | 979.46 | 1,239.83 | 2,015.07 | 2,020.10 | 1,115.60 | 2,048.54 |
| Update.IncFewSmallDoc | 2,023.67 | 2,025.32 | 1,253.65 | 1,964.75 | 2,037.89 | 2,002.53 | 1,200.84 | 2,052.51 |
| Update.IncFewSmallDocLongFields | 2,087.20 | 1,967.66 | 1,189.48 | 1,942.05 | 1,967.26 | 2,013.29 | 1,528.74 | 2,016.41 |
| Update.IncNoIndex | 2,023.19 | 2,050.81 | 1,665.34 | 1,970.66 | 2,014.59 | 2,004.61 | 1,304.71 | 2,051.76 |
| Update.IncNoIndexUpsert | 1,988.87 | 2,043.59 | 1,804.45 | 1,878.32 | 2,074.82 | 2,073.29 | 1,324.67 | 2,069.83 |
| Update.IncWithIndex | 1,981.88 | 2,020.96 | 1,849.89 | 1,855.24 | 2,001.41 | 1,946.28 | 1,702.11 | 2,056.14 |
| Update.IncWithIndexUpsert | 1,990.04 | 1,991.59 | 1,799.33 | 1,878.11 | 2,001.76 | 1,988.93 | 1,396.35 | 2,014.66 |
| Update.ManyElementsWithinArray | 694.87 | 667.85 | 591.07 | 638.81 | 675.30 | 682.60 | 638.61 | 681.41 |
| Update.MatchedElementWithinArray | 1,908.47 | 1,867.87 | 1,671.65 | 1,763.65 | 1,874.31 | 1,838.68 | 1,547.17 | 1,895.55 |
| Update.SetWithIgnoredIndex.Random | 2,078.02 | 2,028.81 | 1,357.32 | 1,981.79 | 1,993.16 | 1,904.72 | 1,319.32 | 2,115.62 |
| Update.SetWithIgnoredIndex.String | 2,081.82 | 2,036.55 | 1,591.01 | 2,006.36 | 2,022.58 | 2,025.71 | 1,260.34 | 2,076.17 |
| Update.SetWithIndex.Random | 1,836.89 | 1,985.04 | 1,540.07 | 1,954.73 | 2,013.08 | 1,966.59 | 1,218.37 | 2,093.32 |
| Update.SetWithMultiIndex.Random | 2,067.77 | 2,043.29 | 1,470.07 | 1,964.50 | 2,054.73 | 1,970.81 | 1,280.45 | 2,133.01 |
| Update.SetWithMultiIndex.String | 1,770.84 | 1,673.08 | 1,656.29 | 1,731.79 | 1,795.61 | 1,753.53 | 1,232.46 | 1,818.70 |
| Update.SingleDocFieldAtOffset | 2,558.10 | 3,043.63 | 2,242.28 | 2,896.44 | 3,134.77 | 2,981.63 | 1,959.95 | 3,099.88 |
| Update.UniqueIndex | 2,020.92 | 1,941.97 | 1,718.29 | 1,947.41 | 2,038.72 | 2,016.82 | 1,320.24 | 1,998.20 |
| Update.UniqueIndexCompoundReverse | 1,979.27 | 1,975.46 | 1,792.66 | 1,883.88 | 2,030.66 | 1,921.79 | 1,622.01 | 2,008.03 |
8 Threads
| Scenario | ||||||||
|---|---|---|---|---|---|---|---|---|
| Aggregation.FindProjectionDottedField.Indexed | 3,974.20 | 2,329.76 | 3,814.17 | 3,663.60 | 3,852.74 | 3,847.29 | 2,936.56 | 813.64 |
| Aggregation.FindProjectionThreeFieldsCovered | 3,775.84 | 3,111.84 | 3,494.03 | 3,626.39 | 3,768.70 | 3,843.68 | 2,984.58 | 3,759.98 |
| Aggregation.IntNonIdFindOne | 3,853.08 | 2,732.80 | 3,328.46 | 3,715.43 | 3,513.46 | 3,659.96 | 3,908.16 | 3,992.78 |
| Aggregation.IntNonIdFindOneProjection | 3,841.72 | 2,754.63 | 3,681.43 | 3,815.08 | 3,754.82 | 3,769.57 | 2,877.03 | 4,017.52 |
| Aggregation.IntNonIdFindOneProjectionCovered | 3,856.33 | 2,745.33 | 3,878.56 | 3,672.13 | 3,630.65 | 3,646.17 | 3,786.38 | 3,946.62 |
| Aggregation.ProjectExclude_LargeArray | 3.59 | 4.43 | 2.69 | 108.67 | 101.91 | 87.29 | 2,055.29 | 2,021.65 |
| Aggregation.RegexPrefixFindOne | 1,842.96 | 756.33 | 3,898.38 | 3,782.72 | 3,873.14 | 3,766.02 | 3,615.20 | 3,977.68 |
| Aggregation.TwoInts | 790.63 | 4,445.10 | 6,060.39 | 5,943.96 | 6,206.00 | 6,300.17 | 4,944.48 | 6,746.62 |
| Insert.BigKeyIndex | 507.10 | 527.92 | 492.92 | 530.15 | 547.38 | 480.06 | 495.26 | 526.31 |
| Insert.Empty | 6,902.72 | 3,212.14 | 3,789.47 | 4,026.99 | 6,842.70 | 6,386.68 | 6,486.69 | 3,849.80 |
| Insert.EmptyCapped | 6,367.27 | 4,327.08 | 3,895.02 | 4,138.99 | 5,777.43 | 5,976.81 | 5,756.65 | 2,057.95 |
| Insert.EmptyCapped.SeqIntID | 6,884.21 | 3,765.63 | 3,839.41 | 4,050.44 | 5,758.66 | 5,408.32 | 4,620.49 | 4,195.75 |
| Insert.IntIDUpsert | 3,829.44 | 2,647.89 | 3,495.91 | 3,143.26 | 3,929.69 | 3,666.43 | 3,698.54 | 3,955.88 |
| Insert.IntVector | 2,625.15 | 1,611.83 | 2,102.50 | 2,177.62 | 2,047.50 | 2,348.75 | 2,180.48 | 2,802.25 |
| Insert.JustID | 6,919.37 | 3,845.52 | 3,804.54 | 3,892.86 | 6,737.31 | 6,536.40 | 6,555.86 | 4,108.09 |
| Insert.JustNum | 6,630.92 | 3,996.72 | 3,401.50 | 6,896.94 | 6,825.86 | 6,521.51 | 4,609.95 | 4,104.46 |
| Insert.JustNumIndexed | 4,277.95 | 4,242.09 | 3,728.92 | 6,617.60 | 6,426.82 | 6,220.10 | 5,111.70 | 3,867.99 |
| Insert.LargeDocVector | 151.49 | 92.55 | 103.37 | 105.38 | 98.86 | 106.85 | 100.97 | 200.48 |
| Insert.MultiIndex.Contested.Rnd | 3,481.37 | 3,798.53 | 3,486.97 | 4,044.24 | 4,022.17 | 3,618.55 | 2,276.84 | 4,053.92 |
| Insert.MultiIndex.Uncontested.Rnd | 3,797.72 | 3,573.95 | 3,334.24 | 4,038.65 | 3,689.33 | 3,491.64 | 2,587.15 | 3,942.25 |
| Insert.MultiKeyIndex.Contested.Rnd | 3,767.87 | 3,869.36 | 2,773.45 | 3,981.25 | 3,370.14 | 3,938.48 | 2,521.24 | 4,043.39 |
| Insert.MultiKeyIndex.Uncontested.Rnd | 3,709.84 | 3,852.68 | 2,993.68 | 4,101.03 | 3,985.70 | 3,831.98 | 2,512.39 | 4,022.62 |
| Insert.SeqIntID.Indexed | 6,691.14 | 3,273.50 | 3,332.62 | 6,035.06 | 6,657.19 | 6,223.62 | 5,414.84 | 4,053.06 |
| Insert.SingleIndex.Contested.Rnd | 6,471.25 | 6,283.17 | 4,298.95 | 6,861.99 | 6,543.15 | 6,085.86 | 3,375.15 | 3,882.89 |
| Insert.SingleIndex.Seq | 6,199.83 | 6,720.84 | 4,776.02 | 6,977.37 | 6,490.10 | 6,759.82 | 3,513.89 | 3,967.25 |
| Insert.SingleIndex.Uncontested.Rnd | 3,195.23 | 3,806.27 | 2,945.79 | 4,092.47 | 4,024.94 | 3,700.46 | 3,216.19 | 3,965.95 |
| Insert.UniqueIndex | 2,372.41 | 3,403.40 | 3,889.42 | 6,809.33 | 6,842.90 | 6,357.36 | 4,374.27 | 3,937.22 |
| Insert.UniqueIndexCompound | 761.51 | 2,751.63 | 3,772.42 | 4,029.47 | 3,679.17 | 3,190.44 | 2,390.02 | 4,142.40 |
| Insert.UniqueIndexCompoundReverse | 1,420.57 | 2,807.08 | 3,916.69 | 4,039.06 | 3,977.37 | 2,631.87 | 2,567.22 | 4,074.20 |
| InsertIndexedStringsNonSimpleCollation | 757.02 | 2,721.24 | 2,606.52 | 3,939.57 | 3,650.93 | 3,649.89 | 3,063.12 | 4,134.00 |
| InsertIndexedStringsSimpleCollation | 1,345.07 | 3,103.80 | 3,607.52 | 3,850.89 | 3,858.93 | 3,617.03 | 1,835.40 | 4,160.80 |
| Queries.FindProjectionDottedField.Indexed | 3,624.43 | 2,511.73 | 3,339.24 | 3,762.79 | 3,871.33 | 3,751.39 | 2,744.80 | 4,036.64 |
| Queries.FindProjectionThreeFieldsCovered | 3,954.75 | 1,778.87 | 3,913.15 | 3,690.02 | 3,808.47 | 3,837.94 | 2,916.19 | 4,048.85 |
| Queries.IdentityView.FindProjectionDottedField.Indexed | 3,883.18 | 2,053.99 | 3,696.76 | 3,722.48 | 3,752.61 | 3,763.63 | 2,915.34 | 1,501.70 |
| Queries.IdentityView.FindProjectionThreeFieldsCovered | 4,053.92 | 2,713.60 | 3,653.73 | 3,692.23 | 3,854.50 | 3,701.34 | 2,438.46 | 3,927.97 |
| Queries.IdentityView.IntNonIdFindOne | 7,304.73 | 5,556.55 | 6,524.06 | 6,063.76 | 5,782.80 | 6,404.60 | 6,448.25 | 7,058.97 |
| Queries.IdentityView.IntNonIdFindOneProjection | 4,093.35 | 2,187.75 | 3,252.80 | 3,157.17 | 3,825.77 | 3,843.34 | 2,379.09 | 3,842.97 |
| Queries.IdentityView.IntNonIdFindOneProjectionCovered | 3,738.54 | 2,570.88 | 3,407.51 | 3,757.85 | 3,779.16 | 3,736.22 | 3,864.41 | 3,815.96 |
| Queries.IdentityView.ProjectExclude_LargeArray | 4.13 | 4.44 | 3.02 | 113.41 | 108.85 | 102.47 | 1,644.48 | 2,090.42 |
| Queries.IdentityView.RegexPrefixFindOne | 3,789.81 | 409.12 | 3,329.72 | 3,735.46 | 3,797.82 | 3,760.35 | 3,509.94 | 3,978.95 |
| Queries.IdentityView.TwoInts | 2,154.38 | 5,120.92 | 4,907.32 | 5,549.95 | 6,072.98 | 6,301.92 | 6,391.05 | 6,615.17 |
| Queries.IntNonIdFindOne | 6,331.84 | 3,912.83 | 2,932.64 | 6,116.18 | 6,481.64 | 5,880.31 | 6,382.83 | 6,637.69 |
| Queries.IntNonIdFindOneProjection | 3,675.00 | 2,349.92 | 3,797.64 | 3,740.08 | 3,824.52 | 3,863.38 | 2,784.93 | 4,054.36 |
| Queries.IntNonIdFindOneProjectionCovered | 3,814.22 | 3,268.18 | 3,300.14 | 3,739.37 | 3,784.24 | 3,881.77 | 3,598.01 | 3,988.98 |
| Queries.PartialIndex.AllInFilter.FilteredRange | 6,724.57 | 6,584.15 | 6,179.55 | 7,727.25 | 7,764.65 | 6,981.67 | 4,175.13 | 1,460.80 |
| Queries.PartialIndex.AllInFilter.FullRange | 12,720.81 | 12,926.38 | 5,573.81 | 12,879.27 | 12,775.73 | 12,819.41 | 8,192.07 | 1,453.81 |
| Queries.PartialIndex.FilteredRange | 13,004.89 | 12,630.37 | 6,290.12 | 13,151.52 | 13,320.24 | 12,586.46 | 6,355.81 | 7,576.60 |
| Queries.PartialIndex.FullRange | 6,443.27 | 6,979.87 | 3,716.03 | 6,448.59 | 6,150.79 | 5,401.97 | 4,156.13 | 823.27 |
| Queries.PartialIndex.NonFilteredRange | 4,691.05 | 4,530.44 | 3,068.72 | 4,649.39 | 4,755.82 | 4,148.56 | 3,067.17 | 1,778.74 |
| Queries.ProjectExclude_LargeArray | 2,130.96 | 1,466.20 | 1,601.94 | 101.99 | 105.05 | 93.76 | 1,861.07 | 2,051.74 |
| Queries.RegexPrefixFindOne | 3,902.11 | 1,174.37 | 3,561.57 | 3,739.73 | 3,764.43 | 3,788.44 | 3,671.81 | 4,086.69 |
| Queries.TwoInts | 1,729.63 | 252.22 | 6,070.65 | 6,203.02 | 5,903.36 | 5,805.31 | 4,653.69 | 6,481.44 |
| Remove.IntId | 8,679.77 | 7,664.24 | 9,586.29 | 10,228.76 | 9,676.14 | 9,484.21 | 10,170.84 | 5,720.41 |
| Remove.IntNonIdIndex | 5,889.09 | 3,501.37 | 6,723.06 | 6,893.29 | 6,493.42 | 6,389.60 | 6,060.72 | 6,088.82 |
| Remove.IntNonIdNoIndex | 4,045.50 | 3,798.01 | 5,154.45 | 5,144.34 | 5,008.42 | 4,794.21 | 5,026.99 | 5,213.79 |
| Remove.IntNonIdUniqueIndex | 5,927.39 | 4,406.42 | 6,767.10 | 6,651.16 | 6,596.98 | 6,544.65 | 6,345.44 | 5,959.39 |
| Update.FieldAtOffset | 1,814.15 | 1,922.38 | 1,741.03 | 1,755.06 | 1,738.00 | 1,802.85 | 1,535.20 | 1,913.23 |
| Update.IncFewLargeDoc | 3,802.65 | 3,809.97 | 3,400.45 | 3,892.27 | 3,828.79 | 3,799.63 | 2,738.50 | 3,987.18 |
| Update.IncFewLargeDocLongFields | 3,576.40 | 3,671.24 | 2,777.34 | 2,915.66 | 3,801.78 | 3,760.61 | 3,027.71 | 3,813.54 |
| Update.IncFewSmallDoc | 3,759.27 | 3,763.83 | 3,663.11 | 3,831.23 | 3,766.67 | 3,774.87 | 2,169.40 | 3,950.84 |
| Update.IncFewSmallDocLongFields | 3,491.92 | 3,644.57 | 2,496.52 | 3,658.37 | 3,745.08 | 3,602.90 | 2,383.13 | 3,811.93 |
| Update.IncNoIndex | 3,831.64 | 3,925.51 | 3,620.47 | 3,835.07 | 3,346.24 | 3,802.30 | 3,878.32 | 3,962.30 |
| Update.IncNoIndexUpsert | 3,787.79 | 3,926.64 | 3,860.42 | 3,782.07 | 3,667.67 | 3,841.29 | 2,834.02 | 3,974.26 |
| Update.IncWithIndex | 3,771.46 | 3,938.18 | 3,625.32 | 3,921.27 | 3,882.87 | 3,867.75 | 3,318.00 | 3,952.32 |
| Update.IncWithIndexUpsert | 3,845.41 | 3,884.89 | 3,675.58 | 3,892.95 | 3,837.67 | 3,785.42 | 3,231.57 | 4,014.99 |
| Update.ManyElementsWithinArray | 873.53 | 883.98 | 603.08 | 851.66 | 890.57 | 888.56 | 903.66 | 878.64 |
| Update.MatchedElementWithinArray | 3,643.47 | 3,724.34 | 2,620.90 | 3,298.92 | 3,638.38 | 3,745.59 | 3,354.36 | 3,658.91 |
| Update.SetWithIgnoredIndex.Random | 3,767.77 | 3,820.96 | 3,791.34 | 3,833.91 | 3,934.65 | 3,833.94 | 2,432.69 | 3,979.04 |
| Update.SetWithIgnoredIndex.String | 3,870.39 | 3,905.12 | 3,776.64 | 3,868.73 | 3,785.82 | 3,828.55 | 2,589.16 | 3,701.03 |
| Update.SetWithIndex.Random | 3,197.45 | 3,944.44 | 3,804.85 | 3,664.30 | 3,837.14 | 3,658.75 | 2,468.09 | 3,938.28 |
| Update.SetWithMultiIndex.Random | 3,858.74 | 3,651.27 | 2,836.02 | 3,873.88 | 3,841.65 | 3,603.18 | 2,604.45 | 3,733.51 |
| Update.SetWithMultiIndex.String | 2,713.69 | 2,817.88 | 2,728.62 | 2,773.41 | 2,796.12 | 2,796.70 | 1,556.64 | 2,843.87 |
| Update.SingleDocFieldAtOffset | 5,663.20 | 5,771.71 | 5,184.62 | 5,732.85 | 5,077.04 | 5,749.83 | 4,457.62 | 5,981.02 |
| Update.UniqueIndex | 3,873.28 | 3,926.91 | 3,085.05 | 3,806.32 | 3,957.62 | 3,865.52 | 3,640.52 | 3,948.82 |
| Update.UniqueIndexCompoundReverse | 3,718.96 | 3,842.88 | 3,008.98 | 3,721.20 | 3,875.18 | 3,833.29 | 3,304.33 | 3,910.17 |
16 Threads
| Scenario | ||||||||
|---|---|---|---|---|---|---|---|---|
| Aggregation.FindProjectionDottedField.Indexed | 2,268.24 | 3,809.01 | 6,233.36 | 5,742.52 | 4,018.94 | 6,120.10 | 5,798.95 | 6,551.84 |
| Aggregation.FindProjectionThreeFieldsCovered | 6,240.93 | 5,436.75 | 6,078.55 | 5,965.51 | 4,057.61 | 6,034.12 | 6,093.79 | 6,321.56 |
| Aggregation.IntNonIdFindOne | 5,770.60 | 4,783.06 | 6,255.62 | 6,097.52 | 4,087.09 | 5,940.96 | 5,659.98 | 5,851.13 |
| Aggregation.IntNonIdFindOneProjection | 6,213.00 | 3,725.61 | 6,101.77 | 5,916.26 | 4,069.36 | 5,928.22 | 6,191.77 | 6,306.03 |
| Aggregation.IntNonIdFindOneProjectionCovered | 5,710.96 | 5,389.57 | 6,078.00 | 5,835.11 | 3,868.68 | 6,050.09 | 5,911.81 | 6,327.62 |
| Aggregation.ProjectExclude_LargeArray | 3.55 | 3.75 | 2.66 | 63.65 | 51.07 | 60.71 | 2,403.11 | 2,656.95 |
| Aggregation.RegexPrefixFindOne | 6,462.77 | 3,887.88 | 6,299.52 | 5,983.17 | 4,374.15 | 6,150.46 | 6,218.88 | 1,270.57 |
| Aggregation.TwoInts | 8,152.82 | 5,922.57 | 8,649.13 | 7,205.53 | 5,765.19 | 8,175.49 | 8,398.47 | 7,009.04 |
| Insert.BigKeyIndex | 512.42 | 523.40 | 469.78 | 540.45 | 531.44 | 547.73 | 496.85 | 515.76 |
| Insert.Empty | 9,212.58 | 5,056.48 | 8,223.45 | 8,974.76 | 8,210.68 | 8,344.94 | 8,170.69 | 7,905.01 |
| Insert.EmptyCapped | 8,614.45 | 6,696.03 | 8,182.35 | 8,416.89 | 7,389.78 | 7,626.27 | 6,973.56 | 8,017.76 |
| Insert.EmptyCapped.SeqIntID | 7,547.40 | 7,553.43 | 7,863.44 | 8,663.26 | 7,149.40 | 6,841.70 | 7,004.71 | 7,237.96 |
| Insert.IntIDUpsert | 5,910.03 | 3,893.74 | 5,808.75 | 6,181.19 | 6,004.68 | 6,097.64 | 6,208.95 | 7,519.04 |
| Insert.IntVector | 4,436.07 | 3,649.46 | 3,591.44 | 3,942.68 | 3,748.68 | 3,839.73 | 3,907.23 | 4,950.53 |
| Insert.JustID | 8,669.34 | 7,403.49 | 7,904.03 | 8,188.08 | 8,208.81 | 8,323.38 | 8,580.73 | 7,595.80 |
| Insert.JustNum | 8,531.05 | 5,130.49 | 7,766.85 | 8,606.75 | 8,234.00 | 8,127.51 | 8,878.77 | 7,867.75 |
| Insert.JustNumIndexed | 6,653.86 | 8,228.92 | 7,537.28 | 8,680.33 | 8,024.32 | 8,221.07 | 8,729.19 | 7,811.05 |
| Insert.LargeDocVector | 32.06 | 103.09 | 103.45 | 107.70 | 100.52 | 103.36 | 103.51 | 190.45 |
| Insert.MultiIndex.Contested.Rnd | 5,604.35 | 5,914.57 | 5,282.43 | 6,037.71 | 6,199.50 | 5,942.71 | 3,916.42 | 6,579.37 |
| Insert.MultiIndex.Uncontested.Rnd | 5,699.50 | 6,330.95 | 6,436.65 | 6,508.42 | 6,088.84 | 5,847.65 | 4,632.70 | 6,585.47 |
| Insert.MultiKeyIndex.Contested.Rnd | 6,265.60 | 5,948.19 | 4,553.25 | 6,375.62 | 6,278.23 | 6,355.33 | 4,160.08 | 6,337.13 |
| Insert.MultiKeyIndex.Uncontested.Rnd | 5,800.14 | 6,130.63 | 4,193.99 | 5,521.26 | 5,560.91 | 6,248.66 | 4,240.02 | 6,375.82 |
| Insert.SeqIntID.Indexed | 8,961.74 | 6,396.88 | 7,083.87 | 8,286.25 | 7,872.46 | 8,401.58 | 8,756.09 | 7,259.40 |
| Insert.SingleIndex.Contested.Rnd | 7,992.88 | 7,764.45 | 6,737.31 | 8,346.75 | 8,914.56 | 8,248.83 | 5,671.22 | 6,647.94 |
| Insert.SingleIndex.Seq | 8,407.15 | 8,532.29 | 7,216.85 | 8,583.43 | 8,780.40 | 8,653.36 | 5,027.00 | 6,819.42 |
| Insert.SingleIndex.Uncontested.Rnd | 6,162.11 | 6,302.31 | 4,772.38 | 6,101.36 | 6,364.27 | 6,261.44 | 4,257.60 | 6,751.40 |
| Insert.UniqueIndex | 6,560.32 | 7,840.90 | 7,629.72 | 8,847.40 | 8,097.12 | 8,397.22 | 8,533.80 | 7,878.45 |
| Insert.UniqueIndexCompound | 5,383.08 | 4,069.56 | 6,234.21 | 6,268.86 | 6,185.33 | 5,680.87 | 4,963.13 | 7,615.32 |
| Insert.UniqueIndexCompoundReverse | 2,512.59 | 5,927.50 | 6,216.04 | 6,014.65 | 6,371.94 | 6,058.43 | 4,702.57 | 7,656.48 |
| InsertIndexedStringsNonSimpleCollation | 5,012.87 | 3,874.69 | 5,813.25 | 6,300.02 | 6,374.53 | 5,578.35 | 4,922.43 | 7,862.98 |
| InsertIndexedStringsSimpleCollation | 4,459.98 | 4,328.26 | 5,902.36 | 6,116.25 | 6,129.90 | 5,821.99 | 4,059.61 | 7,560.15 |
| Queries.FindProjectionDottedField.Indexed | 3,064.18 | 4,348.22 | 6,253.54 | 6,148.49 | 4,228.22 | 6,161.60 | 5,873.60 | 6,634.76 |
| Queries.FindProjectionThreeFieldsCovered | 6,425.19 | 4,666.39 | 6,202.28 | 6,007.46 | 4,001.41 | 5,928.46 | 6,202.90 | 5,531.55 |
| Queries.IdentityView.FindProjectionDottedField.Indexed | 1,597.82 | 4,829.71 | 6,305.97 | 5,974.98 | 3,815.96 | 6,220.15 | 6,343.42 | 6,854.90 |
| Queries.IdentityView.FindProjectionThreeFieldsCovered | 6,245.71 | 4,050.85 | 5,947.19 | 5,806.52 | 3,887.34 | 5,942.14 | 6,167.18 | 6,489.94 |
| Queries.IdentityView.IntNonIdFindOne | 9,045.08 | 5,542.77 | 8,817.97 | 7,577.58 | 6,690.65 | 8,424.02 | 8,680.40 | 6,850.27 |
| Queries.IdentityView.IntNonIdFindOneProjection | 6,499.19 | 3,911.64 | 6,097.71 | 5,935.35 | 4,432.02 | 5,954.25 | 6,386.46 | 6,928.09 |
| Queries.IdentityView.IntNonIdFindOneProjectionCovered | 6,380.31 | 4,247.06 | 6,065.30 | 6,057.21 | 4,431.99 | 6,172.36 | 6,174.28 | 6,754.21 |
| Queries.IdentityView.ProjectExclude_LargeArray | 3.49 | 3.65 | 2.82 | 52.29 | 80.16 | 51.26 | 2,450.18 | 2,599.24 |
| Queries.IdentityView.RegexPrefixFindOne | 6,401.56 | 4,479.26 | 6,215.81 | 5,734.38 | 3,906.51 | 6,206.84 | 6,241.34 | 2,327.95 |
| Queries.IdentityView.TwoInts | 8,920.11 | 5,627.40 | 8,707.28 | 7,759.11 | 6,337.36 | 8,521.26 | 8,697.84 | 6,799.04 |
| Queries.IntNonIdFindOne | 8,275.69 | 668.14 | 8,425.97 | 8,020.84 | 5,048.23 | 8,652.21 | 8,663.66 | 6,759.52 |
| Queries.IntNonIdFindOneProjection | 6,238.42 | 4,513.72 | 6,168.98 | 6,057.19 | 3,820.76 | 6,087.54 | 6,030.32 | 6,674.99 |
| Queries.IntNonIdFindOneProjectionCovered | 6,274.50 | 3,616.14 | 6,222.98 | 6,087.49 | 5,066.53 | 6,149.71 | 6,119.86 | 6,572.13 |
| Queries.PartialIndex.AllInFilter.FilteredRange | 11,679.64 | 11,354.90 | 10,959.74 | 12,308.58 | 11,918.71 | 11,862.06 | 7,873.03 | 13,251.53 |
| Queries.PartialIndex.AllInFilter.FullRange | 16,647.94 | 15,085.80 | 15,551.04 | 16,798.04 | 16,648.79 | 16,924.29 | 10,629.73 | 13,523.61 |
| Queries.PartialIndex.FilteredRange | 15,835.41 | 15,234.96 | 14,047.65 | 17,023.15 | 16,934.38 | 16,756.73 | 12,400.98 | 13,370.99 |
| Queries.PartialIndex.FullRange | 9,816.05 | 9,531.88 | 8,290.68 | 9,358.33 | 9,043.47 | 7,809.06 | 7,132.63 | 8,737.22 |
| Queries.PartialIndex.NonFilteredRange | 7,917.54 | 8,036.37 | 6,862.52 | 7,692.94 | 6,532.21 | 6,054.01 | 5,125.70 | 8,788.57 |
| Queries.ProjectExclude_LargeArray | 2,771.19 | 2,066.90 | 2,038.63 | 84.96 | 60.67 | 48.58 | 2,640.35 | 2,667.75 |
| Queries.RegexPrefixFindOne | 6,255.63 | 5,515.36 | 6,233.94 | 5,950.09 | 4,223.26 | 6,317.36 | 6,338.60 | 2,479.81 |
| Queries.TwoInts | 8,090.58 | 4,964.69 | 8,714.63 | 7,593.34 | 5,562.74 | 8,494.55 | 8,306.38 | 5,238.30 |
| Remove.IntId | 2,321.03 | 9,018.91 | 12,972.18 | 12,703.89 | 10,130.68 | 12,364.90 | 9,458.04 | 12,226.17 |
| Remove.IntNonIdIndex | 1,512.08 | 9,211.40 | 11,204.29 | 11,357.01 | 11,322.52 | 11,247.42 | 9,468.27 | 11,202.22 |
| Remove.IntNonIdNoIndex | 2,423.65 | 4,889.45 | 9,600.34 | 9,633.84 | 9,599.44 | 8,935.66 | 8,109.97 | 9,429.73 |
| Remove.IntNonIdUniqueIndex | 9,209.19 | 5,297.17 | 11,367.54 | 11,486.13 | 11,358.91 | 11,012.77 | 8,257.02 | 11,435.45 |
| Update.FieldAtOffset | 2,889.96 | 3,055.16 | 2,809.03 | 2,679.78 | 2,702.82 | 2,801.44 | 2,200.13 | 3,408.60 |
| Update.IncFewLargeDoc | 6,029.52 | 6,013.99 | 5,489.09 | 5,972.71 | 6,050.02 | 5,997.90 | 4,089.03 | 6,018.12 |
| Update.IncFewLargeDocLongFields | 5,887.58 | 5,988.83 | 3,732.78 | 5,890.07 | 5,081.43 | 5,931.31 | 4,015.19 | 6,083.37 |
| Update.IncFewSmallDoc | 6,026.41 | 6,115.95 | 5,997.53 | 5,700.56 | 5,957.73 | 5,994.89 | 3,128.15 | 5,698.04 |
| Update.IncFewSmallDocLongFields | 5,893.05 | 5,968.93 | 4,955.41 | 6,046.87 | 5,879.81 | 5,981.52 | 3,622.15 | 5,634.18 |
| Update.IncNoIndex | 6,239.42 | 6,194.84 | 4,667.11 | 5,000.86 | 5,011.31 | 6,116.75 | 4,739.13 | 5,606.43 |
| Update.IncNoIndexUpsert | 6,154.58 | 6,167.01 | 5,574.71 | 6,033.96 | 5,392.56 | 5,963.98 | 5,544.68 | 6,306.17 |
| Update.IncWithIndex | 6,047.55 | 6,273.32 | 4,702.06 | 5,352.71 | 5,474.88 | 6,224.70 | 3,561.33 | 6,317.22 |
| Update.IncWithIndexUpsert | 6,042.66 | 6,247.27 | 5,084.17 | 6,152.90 | 5,437.46 | 6,220.47 | 4,312.69 | 6,178.67 |
| Update.ManyElementsWithinArray | 1,003.69 | 1,053.20 | 1,452.59 | 720.07 | 997.94 | 803.39 | 1,038.79 | 1,064.54 |
| Update.MatchedElementWithinArray | 5,575.73 | 5,548.69 | 4,119.40 | 5,998.30 | 5,704.66 | 5,719.65 | 3,275.16 | 5,778.47 |
| Update.SetWithIgnoredIndex.Random | 5,983.11 | 5,941.61 | 5,693.82 | 5,392.91 | 6,031.84 | 6,057.73 | 4,496.05 | 6,496.16 |
| Update.SetWithIgnoredIndex.String | 6,093.58 | 6,241.64 | 6,252.20 | 5,520.57 | 5,953.45 | 6,079.83 | 4,175.50 | 6,412.12 |
| Update.SetWithIndex.Random | 6,223.90 | 6,145.28 | 4,153.65 | 6,022.91 | 6,184.04 | 6,276.41 | 4,208.45 | 6,531.03 |
| Update.SetWithMultiIndex.Random | 6,135.82 | 6,211.07 | 5,988.63 | 6,122.36 | 5,898.44 | 6,095.18 | 3,910.60 | 6,415.47 |
| Update.SetWithMultiIndex.String | 4,139.77 | 4,097.18 | 4,113.24 | 4,086.66 | 4,140.62 | 4,221.21 | 3,242.07 | 1,402.13 |
| Update.SingleDocFieldAtOffset | 9,334.96 | 9,210.83 | 8,702.74 | 9,465.89 | 9,408.56 | 9,202.37 | 8,281.44 | 9,324.42 |
| Update.UniqueIndex | 5,787.61 | 6,282.54 | 5,967.15 | 6,752.86 | 6,216.44 | 6,165.37 | 4,111.89 | 6,417.95 |
| Update.UniqueIndexCompoundReverse | 5,895.15 | 6,195.69 | 6,014.30 | 6,311.69 | 6,120.61 | 6,229.54 | 5,391.47 | 6,335.64 |
Conclusion
I’ll leave the final judgment to you.
That’s because one of the ideas behind using different numbers of threads was to allow those with limited resources to gain a further understanding of what they can expect from Mongo in that scenario.
It is nearly impossible to draw a conclusion from all those tests and express it in a single observation. So, take your time, examine the data and methodology more closely, and feel free to share your thoughts in the comments section below.
That being said, a few overall considerations can be shared.
- Is it fair to compare MongoDB 8.0 against older releases, such as 3.6, 4.0, and so on?
In my opinion, it’s not.
If we look at the core component, such as the WiredTiger engine, it has changed drastically to accommodate all the new features and hardening around the product that you like; comparing them at this point is like comparing different products.
Still, those changes shouldn’t be used to support performance regressions over new releases. Even though it isn’t fair to compare both products, you are your own benchmark; and one thing that we really know is that users don’t accept being pushed around, especially when it’s related to losing performance.
Per the releases of the blog posts from the engineering team (1, 2, 3), they were aware of that, and the approach has changed for MongoDB 8:
[..] For instance, if any commit would regress a benchmark by more than 5% for our most important workloads, we would revert the commit. However, this threshold does not detect regressions of 0.1%, and there are thousands of commits per release (e.g., more than 9000 in MongoDB 8.0).
During the release of MongoDB 7.0, we started to take this gradual accumulation of performance loss by tiny regressions of release over release regressions seriously, so we changed the rules of the game. We decided we could not ship MongoDB 7.0 unless it at least matched MongoDB 6.0’s performance on the most important benchmarks.
It’s debatable whether 7.0 has the same performance as MongoDB 6.0, either based on the above tests or on personal experience after working with all those releases.
Still, there is one thing that this study and the engineer’s notes have in common
- MongoDB 8.0 has indeed better performance than its close predecessors.
Please note that this study doesn’t cover areas such as resource consumption, which is a great candidate for a separate study and posts.
But at this point, my personal recommendation is to upgrade to the 8.0 release as soon as possible to take advantage of those improvements.
Another final observation and a fun fact from this study is that if we remove MongoDB 8.0 from the results, we can see that MongoDB 3.6 is fighting for the second most performant release in this benchmark test, having consistent and great results across the board.
Let me know your thoughts in the comments below, or feel free to reach out to me on LinkedIn.
See ya!
References: