为什么需要时序数据库?
时间数据的特点是累计速度非常快,常规数据库在设计之初,并非是为了处理这种规模的数据,而且关系型数据库在处理大规模的数据集的效果非常差。使用特性
时序数据库能够提供一些通用的对时间序列数据分析的功能和操作,比如数据保留策略、连续查询、灵活的时间聚合,此外时序数据库以时间为维度,也提供更快的大规模查询、更好的数据压缩等。
时序场景需要关系型数据库
很多人认为时序场景只需要时序数据库,实际上很少有场景只需要时序数据库。绝大多数情况下,时序数据库需要关系数据库配合,以解决实际业务问题,因为时序数据库本质只能表达时间序列数据以及和时间序列数据紧密相关的元信息,譬如数据源id,位置,供应商等额外信息。而实际场景中,需要更多信息才能发挥时序数据的价值,譬如工业设备监控、智能制造、柔性制造、个性化定义等等。传统的时序数据库如InfluxDB、OpenTSDB无法解决这种场景,而必须配之以关系型数据库,以获得时序数据更多的上下文信息。
至关重要的低成本数据存储
在物联网时代,数据量日益增大,谁能真正将低成本数据存储做好,才有希望突出重围。
在设计思路上,DolphinDB 针对这个问题进行了特别优化。周小华表示,除了列式存储的设计思路之外,DolphinDB 还增加了对多值模型的支持。多值模型可以降低存储成本,大大缩小数据冗余。
支持多层数据介质,不对客户的数据存储介质进行要求,企业可以按照自己的需求进行选择。为了降低数据库延迟,提升吞吐量,DolphinDB 多是在数据库日志和元素程度上使用部分 SSD。但这部分非常小,一个服务器配一个 256G 的磁盘就足够。具体的数据存储都可以使用 HDD 盘,这样对整个用户的承租成本可以降到低。
时间序列数据库垂直切分的优点
解决业务系统层面的耦合,业务清晰与微服务的治理类似,也能对不同业务的数据进行分级管理、维护、监控、扩展等高并发场景下,垂直切分一定程度的提升IO、数据库连接数、单机硬件资源的瓶颈缺点:部分表无法join,只能通过接口聚合方式解决,提升了开发的复杂度分布式事务处理复杂依然存在单表数据量过大的问题(需要水平切分)
版权所有©2025 产品网