第十二届中国数据库技术大会(DTCC2021),在北京火热开展,一场盛会,围绕着当前热门的“时序数据库”话题,共同探讨最前沿的技术趋势与实践。
四维纵横在大会上由“首席技术官” —— 翁岩青亮相本届 DTCC,精彩干货演讲,为在场的参会人打造一场有关时序数据库的技术饕餮盛宴,点燃会议厅里的狂欢氛围。
本文内容根据会议分享及PPT撰写。
四维纵横数据有限公司 CTO 翁岩青作为压轴登场,在数据库内核技术专场,分享主题为“时序数据库,从无关到有关“,聊聊时序数据库是用“关系数据库”还是“非关系数据库”,哪个能更高效解决问题?
本次分享主要为3个方面:
1. 关于时序数据库
2. MatrixDB 技术架构
3. 超融合时序数据库
01 关于时序数据库
时序数据是时间序列数据,是“带有时间戳”的一系列结构化数据,时序数据是联网设备,周期性产生的指标数据。这样解释太简单,翁岩青老师用4种应用场景来解释“时序数据“!
4种应用场景解释“时序数据”
智能冰箱,每分钟采集由传感器感知到的环境数据,比如温度、湿度及耗电量。依据指标数据既可以做智能决策,在自动调节温度上进行节能,当设备出现异常时达到提示作用。
新能源汽车,由传感器采集多种类型数据,如:位置、车速、电池、环境等信息。自动驾驶汽车每秒钟采集数千个指标,这些指标数据用来做智能应用,可以说越是智能的场景,越需要大量的数据来做实时计算,用数据驱动智能。
除了设备产生指标数据以外,时序数据的范畴还包括一些事件,即在“特定时间点”产生的数据,如银行账户间转账记录信息、账户余额信息,从时序的角度来看余额是账户的最新状态,是经过一系列不同时间点收入和支出后所产生的最新值。
另外,像疫情这样的社会事件,每日新增、痊愈人数的统计,患者运动轨迹等数据,通过这些变化数据去判断未来发展的拐点趋势,都是时序数据。
普通数据+时间列=时序数据?
“普通数据+时间列”与“时序数据”两者之间的区别,主要取决于如何看待时间所起的作用。
在普通数据中,时间是数据的属性信息。同样以银行账户余额为例子,属性信息指的是时间与账户的余额是人民币还是美元,存在哪个银行,这些信息是一样的。如果以时序数据角度来看,时间是数据的状态信息,有状态就表示数据是“动态的”,可以跟踪状态变化。
在数据更新方面也存在着差异,普通数据的更新是 update 操作,新数据覆盖旧数据,每次更新只保留最新版本,不会保留历史记录。时序数据的更新是采用 insert 或 append 操作,每次的更新都是一个“完整记录”,同时保留所有的历史记录。
时序数据比普通数据蕴含更多背后的信息,比如账户余额是如何经过变化到达目前的最新值,余额数据是经过日积月累还是一夜暴富都可以通过挖掘历史记录来获得答案。
从这个角度来看,任何数据都是时序数据,时序数据记录一条数据的“多个”状态,数据量也将会是原来的 N 多倍。
时序数据的价值环环相扣,通过对历史数据的分析来总结规律,能更好理解数据本身,帮助我们做实时决策,对于未来可以做趋势的判断。总之,通过对大数据时序的分析,来驱动、预测和决策智能