-
Type: Investigation
-
Resolution: Done
-
Priority: Critical - P2
-
None
-
Affects Version/s: None
-
Component/s: mongodump, mongorestore
In MongoDB 5.0 we will release a new collection type, "timeseries", this new collection type will create a view and an underlying system collection; __ mydb.system.buckets.X
Currently, mongodump & mongorestore will ignore system.* collections which is problematic for the new timeseries collections which utilizes and stores its data in a system.* collection.
There are a few options we should consider when investigating how tools can support timeseries collections:
Option 1:
Mongodump should dump the view for the underlying timeseries collection and not dump the underlying bucket collection.
Benefits
- Returns users data in expected format, logical documents
- Allows mongodump to be agnostic to implementation details of the system collection if we ever decide to change the storage format
Considerations
- Oplog entries are over the mydb.system.buckets.X collection and not the view
- Can mongodump use the output of listCollections to recreate the time series collection
Option 2:
Mongodump should allow for system.bucket collections to be dumped and restored
Benefits
- Smaller effort required
Considerations
- Mongodump needs to be aware of the mydb.system.buckets.X collection and may create a dependency chain between tools and the server if we change the storage solution