Docs Menu

Build Materialized Views on Top of Time Series Data

Materialized views on time series data are useful for:

  • archiving
  • analytics
  • facilitating data access for teams that cannot access the raw data

To create an On-Demand Materialized view, use the $merge aggregation pipeline stage to transform and store your data:

db.weather.aggregate([
{
$project: {
date: {
$dateToParts: { date: "$timestamp" }
},
temp: 1
}
},
{
$group: {
_id: {
date: {
year: "$date.year",
month: "$date.month",
day: "$date.day"
}
},
avgTmp: { $avg: "$temp" }
}
}, {
$merge: { into: "dailytemperatureaverages", whenMatched: "replace" }
}
])

The preceding pipeline, will create or update the dailytemperatureaverages collection with all daily temperature averages based on the weather collection.

Note

It is not possible to natively schedule the refreshing of these materialized views.

For more information on materialized views, see On-Demand Materialized Views.

←  Migrate Data into a Time Series CollectionShard a Time Series Collection →
Give Feedback
© 2022 MongoDB, Inc.

About

  • Careers
  • Investor Relations
  • Legal Notices
  • Privacy Notices
  • Security Information
  • Trust Center
© 2022 MongoDB, Inc.