MongoDB 功能详解之时间序列集合(Time Series Collections)

简介: 时间序列集合(Time Series Collections):MongoDB 5.0 版本中的新功能。

时间序列数据是一系列数据点,通过分析这些随时间变化的数据点而获得对数据的深刻理解。

时间序列数据通常由以下组成部分组成:

  • 时间:数据点何时被记录
  • 元数据(有时称为源):一个标签或标记,唯一标识一个序列,并且很少更改
  • 测量值(有时称为指标或值):按时间增量跟踪的数据点,通常是随时间变化的键-值对。


下表列出了一些时间序列数据的例子:

示例

测量值

元数据

股票数据

股票价格

证券报价机,交易所

天气数据

温度

传感器标识,位置

网站访问者

访问次数

URL

为了高效的存储时间序列数据,MongoDB 提供了时间序列集合。


时间序列集合


时间序列集合高效地存储时间序列数据。在时间序列集合中,会对写操作进行组织,以便将来自同一个源的相近时间点的数据存储在一起。


好处

相比普通集合,将时间序列数据存储在时间序列集合中可以提高查询效率,并且减少时间序列数据和二级索引(secondary indexes)的磁盘使用量。

时间序列集合底层使用列式存储格式,并使用自动创建的聚集索引(clustered index)按时间顺序存储数据。列式存储格式提供以下好处:

降低了处理时间序列数据的复杂性

提高查询效率

降低磁盘使用量

减少了读操作的 I/O

提升了 WiredTiger 缓存的使用


行为

时间序列集合的行为类似普通集合。你可以像普通集合一样插入和查询数据。


MongoDB 将时间序列集合视为由内部集合支持的可写非物化视图。插入数据时,内部集合自动将时间序列数据组织成优化的存储格式。


在查询时间序列集合时,每个测量值查询一个文档。对时间序列集合的查询利用了优化的内部存储格式,能更快地返回结果。


⚠️ 重要:

不向后兼容的特性

在降级之前,必须删除时间序列集合:

  • MongoDB 6.0 或更高版本降到 MongoDB 5.0.7 或更早。
  • MongoDB 5.3 降到MongoDB 5.0.5或更早。


内部索引

当你创建一个时间序列集合时,MongoDB 会自动在时间字段上创建一个内部聚集索引(clustered index)。内部索引提供了一些性能优势,包括提高查询效率和减少磁盘使用。要了解关于聚集索引性能优势的更多信息,请参阅聚集集合(Clustered Collections)

listIndexes 不会显示时间序列集合的内部索引。


📒 TIP:为了提高查询性能,你可以手动在测量字段或时间序列集合中的任何字段上添加二级索引


文章来源于Mongoing中文社区。

要开始使用时间序列集合,请参阅文档:创建并查询时间序列集合

原文:Time Series

关于译者;张清荣,MongoDB 中文社区成员,现就职于中国联通软件研究院。


扫码加入钉群,与MongoDB专家一对一沟通,了解更多阿里云MongoDB产品与方案,市场活动及线上培训等内容。

image.png


相关文章
|
NoSQL MongoDB 数据库
MongoDB 删除集合
10月更文挑战第14天
524 1
|
NoSQL 关系型数据库 MongoDB
微服务——MongoDB常用命令——集合操作
本节主要介绍MongoDB中的集合操作,包括显式与隐式创建集合的方法。显式创建使用`db.createCollection(name)`,需遵循命名规范(如不能以"system."开头或包含`\0`字符)。隐式创建则通过直接向不存在的集合插入文档实现,更为常用。此外,还介绍了集合删除方法`db.collection.drop()`及其返回值规则,帮助用户管理数据库中的集合资源。
554 0
|
缓存 NoSQL MongoDB
|
存储 NoSQL MongoDB
MongoDB 创建集合
10月更文挑战第13天
334 1
|
存储 NoSQL 数据管理
揭秘MongoDB时间序列集合:这个超级功能将如何彻底改变你的数据管理?
【8月更文挑战第8天】时间序列数据记录随时间变化的信息,在数据库管理中至关重要。MongoDB自4.0版起引入时间序列集合,专为这类数据优化存储与查询。通过问答形式介绍其特点:自动数据过期、高效存储机制及快速查询操作。创建时需指定时间字段及可选元数据字段。支持设置数据过期时间,采用粗粒度索引减少I/O操作。查询时可通过时间范围筛选数据,并利用聚合框架进行数据分析。随着实时分析需求的增长,时间序列集合的应用将更加广泛。
969 1
|
NoSQL 安全 MongoDB
精准数据清理:掌握 MongoDB 删除集合的方法与最佳实践
精准数据清理:掌握 MongoDB 删除集合的方法与最佳实践
875 0
|
10月前
|
NoSQL MongoDB 数据库
数据库数据恢复—MongoDB数据库数据恢复案例
MongoDB数据库数据恢复环境: 一台操作系统为Windows Server的虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 工作人员在MongoDB服务仍然开启的情况下将MongoDB数据库文件拷贝到其他分区,数据复制完成后将MongoDB数据库原先所在的分区进行了格式化操作。 结果发现拷贝过去的数据无法使用。管理员又将数据拷贝回原始分区,MongoDB服务仍然无法使用,报错“Windows无法启动MongoDB服务(位于 本地计算机 上)错误1067:进程意外终止。”
|
10月前
|
缓存 NoSQL Linux
在CentOS 7系统中彻底移除MongoDB数据库的步骤
以上步骤完成后,MongoDB应该会从您的CentOS 7系统中被彻底移除。在执行上述操作前,请确保已经备份好所有重要数据以防丢失。这些步骤操作需要一些基本的Linux系统管理知识,若您对某一步骤不是非常清楚,请先进行必要的学习或咨询专业人士。在执行系统级操作时,推荐在实施前创建系统快照或备份,以便在出现问题时能够恢复到原先的状态。
1082 79
|
10月前
|
存储 NoSQL MongoDB
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
399 8
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
|
9月前
|
运维 NoSQL 容灾
告别运维噩梦:手把手教你将自建 MongoDB 平滑迁移至云数据库
程序员为何逃离自建MongoDB?扩容困难、运维复杂、高可用性差成痛点。阿里云MongoDB提供分钟级扩容、自动诊断与高可用保障,助力企业高效运维、降本增效,实现数据库“无感运维”。

相关产品

  • 云数据库 MongoDB 版
  • 推荐镜像

    更多