ICDE
2022年5月9日,国际数据库顶级会议 ICDE 2022(线上会议)盛大召开。康愈圆同学的《 Separation or Not: On Handing Out-of-Order Time-Series Data in Leveled LSM-Tree 》被 ICDE 2022 录用,并在会议上介绍了这篇论文。
论文介绍
01
论文主题:
乱序时间序列数据的写入管理
论文简介:
日志结构合并树 (LSM-Tree) 是一种高效存储数据的数据结构,被广泛应用在存储系统上,这也是 Apache IoTDB 采用的存储格式。
一般来说,日志结构合并树在内存中只有一种类型的内存表,用于缓冲新写入的数据点。然而,为了提高时间序列数据采集与入库顺序不一致的乱序场景下的查询性能,IoTDB 在传统的日志结构合并树上做出了创新,设计了顺序内存表和乱序内存表这两种结构来分别存储顺序数据点与乱序数据点。我们将只有单一内存表的方法称为传统策略,具有顺序与乱序两种内存表的方法称为分离策略。日志结构合并树会在写入数据后将数据不断地整理以提高查询的性能。这一过程会将数据从磁盘上读取到内存中,并再次写入磁盘,这就引起了写放大现象。
写放大现象的严重程度用写放大指数来衡量,即系统实际写入磁盘的数据量与用户需求的写入的数据量的比值。比值越大,表示系统资源浪费越多,并且磁盘的使用寿命也会受影响。
本文建立了传统策略与分离策略的写放大指数模型来估计特定场景下的写放大指数。一般来说,写放大指数需要实际写入数据后才能统计得到。但是通过本文建立的模型,在已知写入负载特性的情况下,用户无需写入数据就能够预测出写放大指数,进而选择合适的策略来降低写放大带来的影响。
ICDE介绍
02
ICDE(International Conference on Data Engineering)是数据库研究领域历史悠久的国际会议,与SIGMOD、VLDB并称为数据库三大顶级会议,入选中国计算机学会(CCF)A类会议,每年吸引到世界上数千名学者聚到一起探讨数据库的发展前沿。
作者访谈
03
论文第一作者——康愈圆, Apache IoTDB Committer ,清华大学软件学院硕士。
与 IoTDB 的缘分:
Apache IoTDB 做的是一个国产数据库软件,是一个很硬核的系统,它对底层逻辑和方法,以及设计理念都是有很高要求的,这充满着挑战性,这对我来说很有吸引力。
作为数据库软件,它会要求你从最基本的存储单元、数据结构角度去考虑整个软件的性能和用途。我们是别的应用程序的基础,就像老师之前一直给我们强调的那样,作为底层如果有一点点不好,这个缺陷会被一层一层放大,它产生的影响是很大的。同样,如果我们做出的优化在底层能有一些好的效果,对于上层应用来说,这种好的效果也会被放大。所以当我接触到,并且真正加入到其中,去做这个国产数据库软件系统,于我而言不仅在技术上能有很大程度的提升,自我价值感的满足也是油然而生,且在我看来非常有意义。
社区带来的成长:
加入到 Apache IoTDB 开源社区以后,通过和用户接触,他们为我们提供了丰富的数据和落地场景,对我们方法的测试和验证提供了强大的支持。举一个很具体的例子,我在帮一个客户处理 IoTDB 上线的问题时,遇到很多实际落地使用的问题,这个时候发现用我们以前的方式不太适配,所以我们就写了一个新的接口去实现这个功能,提升效率。并且,他们也为我们提供了乱序场景,其中的部分数据也是来源于此。
未来的研究方向:
通过研究 Apache IoTDB ,我也逐渐清晰了我自己的研究方向,我发现我是热爱这个方向的。我的博士也将选择数据库和数据管理方向就读。这个方向上可以探索的点还是很丰富的,比如,大数据、数据科学和人工智能领域出现的多种多样的负载,要求我们快速理解数据并从中挖掘出信息,由此在新的数据模型、存储与查询的优化等方面出现了前所未有的需求;此外,软硬件的发展始终是相辅相成的,高速固态硬盘和非易失性存储设备等现代硬件的发展也启迪着我们重新设计数据引擎。
关于我们
Apache IoTDB——海量时序数据管理的最佳解决方案,一款高吞吐、高压缩、高可用、物联网原生的开源时序数据库。从0到1自研时序存储方案、物联网数据模型、低流量数据传输方案,使得纳秒级采样数据写入无压力、TB级数据查询毫秒级、数据存储无损压缩数十倍。核心技术源自清华、自主可控。目前已在国家电网、国家气象局、中航成飞、中核集团、长安汽车、金风科技等企业广泛应用。