Odyssey: A Journey in the Land of Distributed Data Series Similarity Search(VLDB2023)

本文提出了一种新的分布式数据序列处理框架Odyssey,通过充分利用由多核服务器组成的现代分布式系统的计算能力,有效地解决了数据序列处理的关键挑战,展示了良好的加速比和高可扩展性。Odyssey解决了设计高效和高度可扩展的分布式数据系列索引时的许多挑战,包括高效的调度和负载平衡,而无需支付移动数据的高昂成本。它还支持灵活的部分复制方案,这使Odyssey能够在数据可扩展性和查询响应期间的良好性能之间进行基本权衡。通过广泛的配置和使用几个真实和合成数据集,实验分析表明,Odyssey实现了其具有挑战性的目标。

一.要解决的问题

  1. 最近提出的最先进的(SotA)数据序列索引通过使用多线程和利用现代硬件的SIMD能力来利用并行性。然而,由于数据规模的增加,使得一些并行数据序列索引也不充分,主要是由于精确查询回答需要大量随机磁盘页读取。(数据量增加导致索引结构的精度下降,不能适应当前的环境)

  1. 为了解决这些问题,人们提出了快速内存解决方案[49,50,52]。然而,这些解决方案没有利用分布式系统的优势,因此,受到单个机器的内存量的限制。这就是我们要解决的限制,因此允许上述SotA解决方案处理远超过任何单个节点主内存容量的数据集。(没有考虑使用分布式的计算环境)

  1. 面临的挑战 1)满足可伸缩性:确保在整个执行期间,分布式系统的所有节点都能平等地完成工作。转化为产生以下两个问题的有效解决方案:(i)查询调度:给定一个查询工作负载,决定将哪些查询分配给每个系统节点;以及(ii)负载平衡:设计一种机制,使得完成工作的系统节点可以帮助其他节点完成它们的工作。总之:面临两个问题 一个查询调度问题;另一个是数据装载问题

二.采用的方法

  1. 近似的调度方案:我们进行了查询分析,显示了总执行时间与我们考虑的单节点数据序列索引参数之间的相关性。通过为每个查询生成执行时间预测,该分析驱动了高效调度方案的设计。

  1. Odyssey提供了LB机制,确保空闲节点可以从其他仍有工作要做的节点那里抢走(或窃取)工作(前提是这些节点存储类似的数据)

  1. 为了统一数据可伸缩性和查询应答的性能。Odyssey通过支持灵活的部分复制机制有效地统一了这两个相互矛盾的目标。通过这种方式,它在查询应答过程中完成了数据可伸缩性和良好性能之间的基本权衡。复制程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值