作者:刘东华
什么是时序数据?如何存储?如何分析并挖掘其中的价值?
先看个问题:自动驾驶的特斯拉、自动华尔街交易算法、智能家居、当日送达的快递、跟踪每日新冠统计数据和社区空气质量,这些有什么共同之处?
首先,说明我们的世界正在以极快的速度发生变化,也体现了我们收集与分析越来越多数据的能力。
然而,如果你仔细观察,你会发现这些应用程序都需要一种特殊类型的数据:
· 自动驾驶汽车需要不断收集周围环境变化的数据,并根据天气状况、坑洼和无数其他变量进行调整。
· 自动交易算法需要不断收集市场变化的相关数据,以优化短期和长期投资回报。
· 智能家居需要通过监控室内情况来调节温度,识别危险等,并处理人机交互。
· 零售业精准和高效监控每一件商品的运输。
相比股市趋势、自动驾驶汽车,以及预测你下一次网上购物的准确时间,近些年有很多关于时序数据收集和分析如何影响个体日常生活的例子。
有史以来第一次,全世界对时间序列数据的兴趣以最意想不到的方式达到了顶峰。新冠肺炎全球大流行使全球数十亿人成为时间序列数据的消费者,并要求准确及时地了解新冠肺炎每日的趋势。
在我们这个渴求信息的世界里,获得详细的、特征丰富的时间序列数据已经成为最有价值的商品之一。企业、政府、学校和社区,无论大小,都在寻求从分析时间序列数据中挖掘价值的方法。
软件开发者的使用模式已经反映了同样的趋势。在过去两年中,时间序列数据库(tsdb)一直是增长最快的数据库:
在实际客户项目中,很多客户并不清楚什么是时序数据?应该如何选择数据库?甚至有很多方案采用关系型数据库或hbase来存储。
在这里,我们更深入地描述什么是时序数据、如何使用时序数据库,以及使用场景,并提供一些研究时序数据库的分析方法。
什么是时序数据
时序数据,即时间序列数据,按时间维度顺序记录且索引的数据。像智慧城市、物联网、车联网、工业互联网等领域各种类型的设备都会产生海量的时序数据。这些数据将占世界数据总量的90%以上。便于我们根据时间变化对数据进行分析。
之前,我们对时序数据的看法都是静态的,每日气温的高低、股市的开盘价和收盘价,甚至每日或累计因新冠肺炎住院人数。但是,我们往往会忽略这些静态数据潜在的变化引起细微差异。让我们看些例子。
如果我给你10元钱,银行传统的数据库会在我的账户上有一笔支出,在你的账户上有一笔收。然后,如果你给我10元钱,同样的过程反过来进行。最后,我们的银行余额看起来还是一样的,对于银行而言,这个月没什么变化。但是,有了时序数据库后,银行会感知到,这两个人一直互转10元钱,可能有更深层次的原因。如果追踪这种细微差异,月末账户余额就有了更大的意义。