# Time-Series Collections MongoDB supports a new collection type for storing time-series data with the [timeseries](../commands/create.idl) collection option. A time-series collection presents a simple interface for inserting and querying measurements while organizing the actual data in buckets. A minimally configured time-series collection is defined by providing the [timeField](timeseries.idl) at creation. Optionally, a meta-data field may also be specified to help group measurements in the buckets. MongoDB also supports an expiration mechanism on measurements through the `expireAfterSeconds` option. A time-series collection `mytscoll` in the `mydb` database is represented in the [catalog](../catalog/README.md) by a combination of a view and a system collection: * The view `mydb.mytscoll` is defined with the bucket collection as the source collection with certain properties: * Writes (inserts only) are allowed on the view. Every document inserted must contain a time field. * Querying the view implicitly unwinds the data in the underlying bucket collection to return documents in their original non-bucketed form. * The aggregation stage [$_internalUnpackBucket](../pipeline/document_source_internal_unpack_bucket.h) is used to unwind the bucket data for the view. * The system collection has the namespace `mydb.system.buckets.mytscoll` and is where the actual data is stored. * Each document in the bucket collection represents a set of time-series data within a period of time. * If a meta-data field is defined at creation time, this will be used to organize the buckets so that all measurements within a bucket have a common meta-data value. * Besides the time range, buckets are also constrained by the total number and size of measurements. ## Bucket Collection Schema ``` { _id: >, control: { // version: 1, // Version of bucket schema. Currently fixed at 1 since this is the // first iteration of time-series collections. min: {