SQL可以为时间序列应用程序做什么?
来源:CPDA数据分析师网 / 作者:数据君 / 时间:2020-09-01
开源技术是流处理堆栈的核心
SQL的分布式体系结构旨在程度地获取数据,快速查询和高并发性,以帮助客户处理,分析数据并根据其采取行动,以适应当今以洞察力为导向的经济。
金融交易系统中一种常见的时间序列分析类型是操纵股票报价
这是一个使用标准SQL进行这种计算的简单示例,我们使用一个带有时间序列的滴答声的表格来计算多只股票,并为每只股票产生高,低,开盘和收盘价,使用可扩展性来增强SQL在时间序列上的功能,SQL支持用户定义的标量函数,聚合函数和存储过程SQL语言的可扩展性,存储过程编译为机器代码,以实现高性能,这提供了与其他按时间序列特定的产品中的类似功能相同的功能,您可以轻松地创建按时间间隔(例如秒,分钟,小时或天)存储的函数或表达式,时间序列数据的常见需求是执行插值。
假设您有一个时间序列,其中的点具有随机间隔,平均间隔为30秒
可能有几分钟没有数据点,因此如果将原始(不规则)时间序列数据转换为每分钟1分钟的常规时间序列,则可能存在间隙。如果要提供没有间隙的绘图输出,则需要从间隙之前和之后的值内插间隙的值,在SQL中通过获取查询结果并输出一个行集,并将其间隔插入到临时表中,可以很容易地实现存储过程。
时间序列压缩和生命周期管理
SQL擅长处理时序事件的突发插入流量和节省空间很重要的历史时序信息。对于突发插入流量,可以使用SQL行存储表来保存时间序列事件,对于较大且寿命更长的时间序列事件集或较旧的时间序列数据集已老化,因此不再进行更新,SQL列存储是一种很好的格式,因为它可以非常有效地压缩时间序列数据,而且它驻留在磁盘上,因此主内存大小不受存储多少数据的限制。
通用的SQL适用于时间序列时
我们已经看到,时间序列数据管理市场分成了时间序列专用产品,其自己的专用语言以及可与使用SQL的标准报告和商业智能工具进行互操作的扩展SQL系统,SQL属于第二类,SQL适用于需要快速摄取,低延迟查询和高并发性,无规模限制且可从SQL语言功能和SQL工具连接中受益的时间序列应用程序。
许多特定于时间序列的产品在数据管理方面都有缺点
有些缺乏横向扩展能力,无法解决问题的规模,或者迫使应用程序开发人员在代码中构建曲折的分片逻辑,以将数据拆分到多个实例中,从而浪费了宝贵的劳动成本,而这些钱本可以更好地投入到应用程序业务逻辑中,其他系统已经解释了查询处理器,无法跟上我们这样的查询执行实现,有些缺乏SQL数据库共有的事务处理完整性功能。MemSQL允许时间序列应用程序开发人员放心前进,因为他们知道自己不会遇到麻烦,他们可以使用所有熟悉的工具-可以连接到SQL数据库的任何工具。
SQL是用于管理时间序列数据的强大平台
它支持无限方便地快速方便地加载事件流的功能。它支持完整的SQL,该SQL可以使用SQL 的所有标准功能以及近添加的窗口功能扩展来进行复杂的查询,它支持事务,高并发更新和查询率以及许多开发人员对各种应用程序(包括时间序列)所需的高可用性技术,您喜欢的与SQL兼容的工具可以连接到SQL,如此以及更多的功能使SQL成为时间序列的强大平台。
客服热线:400-050-6600
商业联合会数据分析专业委员会