[SERVER-58067] Support 2dsphere indexes on time-series measurements Created: 24/Jun/21  Updated: 01/Nov/23  Resolved: 30/Jul/21

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

Type: New Feature Priority: Major - P3
Reporter: Gregory Wlodarek Assignee: Dan Larkin-York
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-58371 Allow $_internalBucketGeoWithin to sc... Closed
Related
related to SERVER-60607 improve handling of large/NaN values ... Closed
related to SERVER-59310 clean up library dependencies in db/i... Closed
is related to SERVER-82475 Consolidate S2BucketAccessMethod and ... In Code Review
Sprint: Execution Team 2021-07-26, Execution Team 2021-08-09
Participants:

 Description   

For geo types, the summary stored in the control fields is not detailed enough to index it directly. Instead, we must transform the definition to use a new internal index type that is aware of the bucket structure. In particular, a measurement field will be present in the bucket document as data.a, but will hold the column-pivoted data for all measurements. Thus a definition:

{
	createIndexes: "abc",
	indexes: [ { key: { "a" : "2dsphere" } } ]
}

will become:

{
	createIndexes: "system.buckets.abc",
	indexes: [ { key: { "data.a" : "2dsphere_bucket" } } ]
}

The new index type will treat the field a as a column of points, and generate a region containing the points. From here out, the solution is the same as for existing geo-type indexes: create a covering for the region (using the appropriate space-filling curve library) and generate index keys from the covering.

The new index type should be considered internal. Attempting to create the new index type directly on a non-bucket collection should result in an error. When examining the indexes on a time-series collection, it should report the original index type rather than the new transformed type. Examining the bucket collection directly should return the new type.



 Comments   
Comment by Githook User [ 02/Aug/21 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-58067 fix XCode12 compile warning
Branch: master
https://github.com/mongodb/mongo/commit/52e0b6886e5ce44feb563a71cceaf4d5fffc8c3a

Comment by Githook User [ 30/Jul/21 ]

Author:

{'name': 'Dan Larkin-York', 'email': 'dan.larkin-york@mongodb.com', 'username': 'dhly-etc'}

Message: SERVER-58067 Support 2dsphere indexes on time-series measurements
Branch: master
https://github.com/mongodb/mongo/commit/7b09eb54f8880bde7de48e6f04fe9eebe53a29d4

Generated at Thu Feb 08 05:43:30 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.