[SERVER-84399] Collscan benchmarks - extend existing projection tests to run with cardinalities Created: 22/Dec/23  Updated: 21/Jan/24  Resolved: 16/Jan/24

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.3.0-rc0

Type: Task Priority: Major - P3
Reporter: Anton Korshunov Assignee: Ruoxin Xu
Resolution: Fixed Votes: 0
Labels: M3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-84088 Tag new collscan workloads and add th... Closed
is depended on by SERVER-84398 Collscan benchmarks - high-cardinalit... Closed
Problem/Incident
Backwards Compatibility: Fully Compatible
Sprint: QO 2024-01-08, QO 2024-01-22
Participants:
Linked BF Score: 20

 Description   

Although there are a lot of benchmarks with varying projection types and complexity, all are over relatively small collections. In mongo-perf:

WideProjectionTopLevelField (inclusion, exclusion, 9 projections, 10K documents)

WideProjectionNestedField (nested field inclusion, exclusion, 9 projections)

 

For all of the bellow: single projection with dotted path of length 3 or 6, 10K documents:

FindExclusion.ProjectionDottedField.SinglePathThreeComponentsNestedArraysOfSizeFive

FindExclusion.ProjectionDottedField.SinglePathThreeComponents

FindExclusion.ProjectionDottedField.SinglePathThreeComponentsNestedArraysOfSizeOne

FindExclusion.ProjectionDottedField.SinglePathSixComponentsNestedArraysOfSizeOne

FindExclusion.ProjectionDottedField.SinglePathSixComponentsNestedArraysOfSizeFive

 

FindProjectionThreeFields (3 projections, 100 docs)

ProjectInclude_CollScan_LS ( 8 projections, 10-field 100K documents)

ProjectInclude_CollScan_LL (8 projections, 23-field 100K documents)

ProjectExclude_CollScan_LL (8 projections, 23-field 100K documents)

ProjectNoExpressions_CollScan_LS( 8 projections with renaming of fields, 10-field 100K)

ProjectNoExpressions_CollScan_LL( 8 projections with renaming of fields, 23-field 100K)

 

We will need to extend the existing mongo-perf tests to run for three different cardinalities: 100/1000, 10K/100K, and 1M documents. The small cardinality collections are useful to emphasize the optimization time in the metrics.

  • For queries over 10K/100K add cardinalities of 100 and 1M documents.
  • For queries over 100 documents add cardinalities of 10K and 1M documents.

 



 Comments   
Comment by Githook User [ 16/Jan/24 ]

Author:

{'name': 'Ruoxin Xu', 'email': 'ruoxin.xu@mongodb.com', 'username': 'RuoxinXu'}

Message: SERVER-84399 Extend existing projection tests to run with cardinalities (#146)
Branch: master
https://github.com/mongodb/mongo-perf/commit/1b5ce5bdf5eac3f8ab992441f7119474800a3668

Comment by Githook User [ 04/Jan/24 ]

Author:

{'name': 'Ruoxin Xu', 'email': 'ruoxin.xu@mongodb.com', 'username': 'RuoxinXu'}

Message: SERVER-84399 Extend existing projection tests to run with cardinalities
Branch: SERVER-84399
https://github.com/mongodb/mongo-perf/commit/0da2c66e4bbfca76667b143651678174bb10524f

Generated at Thu Feb 08 06:54:55 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.