这篇名为“A holistic scalability strategy for time series databases following cascading polyglot persistence”的研究文章由Carlos Garcia Calatrava、Yolanda Becerra Fontal以及Fernando M. Cucchietti合作完成,文章发表在《Big Data and Cognitive Computing》期刊,2022年第6卷第86条。作者分别来自巴塞罗那超级计算中心(Barcelona Supercomputing Center)以及加泰罗尼亚理工大学(Universitat Politècnica de Catalunya, Barcelonatech)计算机架构系,研究聚焦于时间序列数据库的可扩展性问题。
随着技术的快速发展以及海量数据涌现,时间序列数据管理的重要性愈发突出。时间序列数据库(time series database,简称TSDB)是一类专为处理由传感器等连续数据源产生的信息而设计的数据库。自2019年以来,这一领域的数据库类别发展最快。常见的TSDB包括MongoDB、InfluxDB等。其中,此类数据库的发展主要受两种需求驱动:一是高效的实时/准实时数据处理,二是减少资源消耗以实现更好的性能与成本平衡。
为了满足以上需求,研究团队提出了一种新的数据库模型——NagareDB。该模型通过“Cascading Polyglot Persistence”(级联多语言持久性)方法,同时优化了软件和硬件资源利用率,并在性能上较MongoDB、InfluxDB等流行数据库表现更优。Cascading Polyglot Persistence通过使不同数据模型协同工作,根据时间序列数据的生命周期适配理想存储和查询方式。然而,该方法之前的应用仅限于单体架构的数据库,对于分布式的扩展能力仍不足。因此,这项研究旨在针对这种方法设计并实现一种适配的、灵活的分布式扩展策略。
研究按照以下步骤设计与推进:
Cascading Polyglot Persistence的多个数据模型(Key-Value、Short Column和Long Column)被映射到相应分区中,DM1对应摄入分区,DM2和DM3对应汇总分区。
扩展策略设计
提出的扩展策略核心是“功能特化”:不同分区根据各自职责量身定制硬件配置和操作逻辑。具体来说:
实验设计
分析:实时数据每次传输单个三元组(时间戳、传感器ID、值),导致系统的网络和路由器开销显著;“多目标操作(multi-target operations)”和“并行屏障(parallel barriers)”等问题限制了扩展效率。
优化建议:使用更大的批次有助于提高效率和可扩展性,同时需根据实际场景的实时性要求调节微批次大小。
研究意义与价值
本研究提出了一种创新的TSDB扩展策略,并通过实验验证其优势。这种策略通过功能特化和自定义分片机制,有效解决了传统扩展方法中的资源浪费和性能瓶颈问题。研究表明,微批次摄入是提升扩展性能的关键,对于成本敏感的应用场景尤其具有实践意义。
科学与应用价值
研究亮点
尽管提出的扩展方法在实验中表现卓越,但以下方面仍需进一步优化和探索: 1. 如何在动态负载情况下更智能地平衡分片和副本间的数据分配。 2. 扩展方法面向更复杂多节点环境或更高实时性需求场景的适应性研究。 3. 探讨结合更多现代硬件(如更高性能SSD、持久内存)在分布式架构中的潜在优化方向。
该研究在资源约束环境中处理大规模时间序列数据的效率最大化问题上提供了有力启示,对工业监控、物联网数据处理等领域的发展具有重要的推动作用。