1.什么是时序数据?
统一表示系统、过程或行为随时间变化的数据
简述
按时间顺序存储的一连串随时间推移测量相同事物的数据点
举例
股票涨跌、温度变化、系统吞吐量变化、财务报表等
模型
一连串与时间戳配对的数值,由一个名称或者一组归类维度(或者“标签”)
特点
- 抵达的数据几乎总是作为新条目记录
- 数据通常按照时间顺序抵达
- 时间是一个主坐标轴(可是是规则的时间间隔,也可以是不规则的)
与直接在数据库中添加字段有什么区别?
区别在于:数据集如何跟踪变化?
更新当前条目,还是插入新的条目?
当为某个对象收集新的读数,是选择覆盖旧的读数,还是在新的一行创建新的读数?
前者是一般数据库的处理方式,后者则是时序数据库的处理方式
简而言之:时间序列数据集跟踪整个系统的改动并不断插入新数据,而不是更新原有数据。
2.为什么要使用时序数据库?
规模
时间序列数据累计速度非常快,数据量非常大,常规数据库并不是为处理这种数据规模而设计。
关系型数据库处理大数据表现非常糟糕,NoSQL可以处理这种规模,但是时序数据库把时间作为一等公民,对大规模数据的查询和数据压缩以及容纳率有着更好的考量。
可用性
TSDB 通常还包括一些共通的对时间序列数据分析的功能和操作:
数据保留策略、连续查询、灵活的时间聚合等。
即使当下不考虑规模(例如,您刚开始收集数据),这些功能仍可提供更好的用户体验,使用后更轻松。
3. 使用场景
- 监控软件系统: 虚拟机、容器、服务、应用
- 监控物理系统: 设备、机器、接入的设备、环境、我们的房屋、我们的身体
- 资产跟踪应用: 汽车、卡车、物理容器、运货托盘(Pallets)
- 金融交易系统: 传统证券、新兴的加密数字货币
- 事件应用程序: 跟踪用户、客户的交互数据
- 商业智能工具: 跟踪关键指标和业务的总体健康情况