共计 3914 个字符,预计需要花费 10 分钟才能阅读完成。
在 6 月 8 日举办的【墨天轮数据库沙龙第七期—开源生态专场】中,清华大学博士,助理研究员,Apache IoTDB PMC 乔嘉林老师分享了《Apache IoTDB,源于清华,建设开源生态之路》主题演讲,本文为整顿内容。
导读
大家好,我是来自清华大学的乔嘉林。Apache IoTDB 是一个开源我的项目,起源于清华大学实验室,后续开源并捐给了 Apache 基金会。明天我分享的内容次要分为四个方面:IoTDB 背景起源、IoTDB 介绍、开源建设以及如何退出咱们。
背景起源
1、时序数据是什么
首先,IoTDB 治理的是时序数据,即随着时间轴而一直变动的曲线数据,比方股票中的 K 线就是很典型的时序数据。时序数据在物联网畛域中占据了很大的体量,它是设施物理量的数字化记录,是物理世界的实在刻画。
图 1 时序数据示意
时序数据的用处次要分为四个场景:监控、告警、预测、追溯。
首先是 监控 场景的利用:大家都心愿可视化监控软件,从而清晰看到它的运行状态。
其次时序数据可能用于 告警 场景。工业企业对机器设备进行监控时,很难用肉眼去分辨软件运行中的异样,因而咱们须要去设置一些无效的规定,当数据超过预设的阈值时,实现报警的性能。
时序数据还能实现 预测。当设施运行状态不好时,咱们能够依据依据历史教训与数据变动的趋势,来预测这个设施是否会坏掉,从而帮忙企业防止不必要的损失。
最初时序数据还能实现 追溯。当咱们发现故障,能够通过历史数据故障产生的起因来剖析历史数据的变化规律,从而失去一些有用的常识,来防止后续的故障复现。
图 2 时序数据的用处
2、IoTDB 倒退起源
IoTDB 的倒退一共历经了六个阶段。
2011 年蕴育期:在国家 863 打算课题中,在三一重工等企业实际海量机器数据管理解决方案。
在工业物联网背景下,须要做到简单元数据管理、海量数据存储、丰盛的数据处理、边云协同,这些对数据管理都是极大的挑战。
图 3 工业物联网数据管理需要
在这样的背景下,基于传统的关系型数据库单点瓶颈,模型难以批改写入、性能难以满足的痛点,咱们从 2011 年开始尝试大数据管理计划,如 Cassandra、HBase,然而它们也存在着肯定的瓶颈。
因而咱们调研了不同数据库治理时序数据的区别,如下图所示:
图 4 现有系统管理时序数据的局限
因而从2015 年咱们进入了 IoTDB 的自研期,开始启动“清华 IoTDB”研制。2016 年 3 月提出时序数据列式紧致文件存储格局 TsFile,随后公布 0.7.0 版本。
从研发数据文件格式开始,IoTDB 的自研历程就此开启。上面的格局图形容了两个局部:右边是数据区,采纳了列式存储的形式,将每一个工夫序列的工夫和值都离开存储,这样可能更好的实现编码和压缩。左边为索引图,可能对海量的工夫序列疾速查问。
图 5 数据管理的格局图
IoTDB 首次的实战我的项目是青海新能源大数据平台,我的项目是治理各个发电团体在青海发电厂的数据,在实战的过程中,咱们也发现了工业治理中时序数据会存在的一些问题,比方乱序、数据规模不高,规模较大等,这些问题的发现也为咱们后续的系统升级与欠缺提供了贵重的教训。
图 6 IoTDB 实战于青海新能源大数据平台
IoTDB 在2018 年进入了开源孵化期。同年 11 月,IoTDB 成为 Apache 旗下孵化器我的项目,先后吸引了来自德国、美国、澳大利亚等国内同行关注。
IoTDB 为什么要开源?在这里分享咱们的想法。
IoTDB 起源于高校,咱们心愿实现真刀真枪参加理论的我的项目。因而IoTDB 的定位不仅是科研项目,更应该是工业级的产品,可能真正部署到这个用户的这个理论我的项目,可能产生价值,施展价值。
第二点IoTDB 作为根底软件,须要更宽广的贡献者和用户的独特参加。
不仅如此,对标国外伯克利高校,他们领有 Spark 这款做计算比拟标准化的一个产品,咱们心愿 中国高校也能打造一款开源软件,来晋升中国高校在国内的影响力。
那么在开源的过程中为什么会抉择 Apache 基金会呢?因为 Apache 是大数据系统的世家,平时咱们熟知的 Hadoop、Spark、HBase、Flink 都是起源于 Apache 孵化器。 时序数据作为大数据的品种,咱们心愿可能将这个我的项目开发齐全,从而抉择 Apache 基金会。
以上就是 IoTDB 开源的路线。
图 7 时序数据库从石破天惊到逐步炽热
2019 年 IoTDB 实现疾速成长。我的项目相继取得优良大数据产品、中国优良开源我的项目一等奖,并在中国工业互联网峰会作为重要成绩作主题公布。
2020 年 IoTDB 胜利毕业。Apache IoTDB 升为寰球顶级我的项目,这标记着 IoTDB 建成了寰球认可的国内开源社区,并成为我国高校在 Apache 社区主导的惟一孵化胜利的我的项目。
2021 年 IoTDB 入选十三五成绩。Apache IoTDB 加入国家“十三五”科技翻新成就展。
回顾 IoTDB 的倒退历程,堪称是“十年磨一剑”。
图 8 Apache IoTDB 倒退历程
IoTDB 介绍
1、Apache IoTDB 是什么
Apache IoTDB(物联网数据库)是一体化收集、存储、治理与剖析物联网时序数据的软件系统。它具备高性能和丰盛的性能,并与 Apache Hadoop、Spark 和 Flink 等进行了深度集成,能够满足工业物联网畛域的海量数据存储、高速数据读取和简单数据分析需要。
Apache IoTDB 还领有 简略易用 、 低成本高性能 、 便捷迁徙 、 丰盛的数据处理生态 、 提供端 - 边 - 云”一站式解决方案 的性能。
图 9 Apache IoTDB 零碎架构
2、Apache IoTDB 特点
Apache IoTDB 作为一款 轻量化、高性能、低成本时序数据库,具备凋谢的零碎架构、轻量化部署、生态丰盛、物联网专属模型、高压缩比、低提早查问、数据处理丰盛、高效存储引擎 等八大特点。
图 10 Apache IoTDB 的八个特点
下图为 IoTDB 在开源、模型、查问、文件上与其余时序数据库的比照。
图 11 Apache IoTDB 在开源、模型、查问、文件上与其余数据库的比照
3、Apache IoTDB 性能
IoTDB 具备实现多种查问视图,查问时反对各类视图的 SQL 逻辑 的性能。写入时是物联网的元数据,但在查问时能够转化为多种视图,每种视图都有 SQL 查问列,以及实现不同的过滤的条件,这样咱们就能够依据业务零碎的不同须要,针对不同的维度进行查问,从而实现写入十分动静的模型。
图 12 Apache IoTDB 反对多种查问视图
不仅反对多种查问视图,IoTDB 还具备查问功能丰富,反对降采样、数据对齐、修补 的性能。在查问中可能实现降采样成每分钟 1 个数据点、多序列按工夫进行数据对齐、修补缺失的数据。
图 13 Apache IoTDB 查问功能丰富
除了以上性能以外,IoTDB 还反对用户自定义函 数,用户通过自行开发、创立自定义函数来满足定制化的计算需要。同时,目前已内置 11 类 UDF 库,共 75 个 函数,供用户应用。
图 14 Apache IoTDB UDF 函数类型及名称
此外 IoTDB 具备 自定义触发器,实现实时计算的性能。时序数据有告警的需要,因而咱们在 IoTDB 中反对了触发器,当一条数据进入数据库时,基于校验的逻辑触发到某个阈值,便能够对其余零碎进行一个告警。
图 15 Apache IoTDB 自定义触发器的性能
下图展现的性能是物化视图。咱们心愿对设施 A 和设施 B 的速度取出平均值,那咱们就能够通过 average 这个函数来查问,接着将计算的后果写回到数据库外面,这样便于下次应用时间接取用后果,无需反复计算。以上就是物化视图 select into 的性能实现场景。
图 16 Apache IoTDB 物化视图性能
最初介绍的是 IoTDB间断查问 的性能,这个性能在时序数据的治理利用中十分宽泛。咱们通常以高频的形式进行数据采集,同时不想漏掉任何一个点,然而剖析时须要对数据进行各种各样的降采样或者分段的聚合,如果咱们可能提前对数据进行分段并将它存下来,就能大大减速后续的剖析效率。因而间断查问可能实现对后盾操作自定义,并定时将一段时间的数据做计算与解决。
图 16 Apache IoTDB 间断查问性能
开源建设
1、对于 Apache 基金会
Apache 基金会成立于 199 年,目前已有 22 年的历史,共有 351 个我的项目,总的代码数是 2.2 亿行。这些代码的总价值是 220 亿美元,共有 8200 个 committer。
图 17 Apache 基金会倒退
2、IoTDB 的开源建设
在 2021 年的 Apache 基金会寰球 351 个我的项目排名中中,IoTDB 位列第七,超过 Hadoop、Hbase,仅次于 Spark。IoTDB 的代码贡献者散布于中、美、德、英、澳等国家,是国内惟一具备国际化属性的时序 DB 开源社区。
退出社区
开发者是开源的获益者,更应该成为贡献者,这也是 IoTDB 抉择开源的起因。
以下是参加社区的通道,欢送大家参加到开源建设中来。
图 18 退出 IoTDB 组织
我明天的分享就到这里,谢谢大家!
更多精彩内容,欢送大家观看现场视频回放与会议材料
视频回放:https://www.modb.pro/video/6499
会议材料:https://www.modb.pro/doc/64961
- 查看原文:https://www.modb.pro/db/421250
- 查看【国产数据库沙龙】开源生态专场文章、视频回放资源:https://www.modb.pro/topic/412121
欲了解更多能够进入墨天轮社区,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、流动直播、在线课程、文档阅览、资源下载、常识分享及在线运维为一体的对立平台,继续促成数据畛域的常识流传和技术创新。
关注官网公众号:墨天轮、墨天轮平台、墨天轮成长营、数据库国产化、数据库资讯