分布式数据检索效率与可靠性提升技术

更高效可靠的分布式数据检索方法

大型在线数据存储库分布在庞大的服务器集群中,从这些存储库中检索数据必须高效,以提供良好的用户体验。通常会有服务级别协议(SLA)规定,必须在一定时间上限内(例如150毫秒)响应一定比例的查询(例如95%)。

数据聚类与负载均衡挑战

提高效率的一种方法是将相关内容聚集在少数服务器上,限制信息检索算法必须考虑的数据量。但如果大量用户尝试访问相同数据,可能导致系统利用率负载不平衡,从而违反SLA。

在某期刊上发表的一篇论文中,我们提出了一种新的查询处理方法,通过更均匀地分布数据来避免这种不平衡,同时仍然限制需要考虑的数据量。

随时查询方法

我们的方法是一种"随时查询"方法,这意味着它能动态适应用户需求的变化,在带宽和处理周期稀缺时至少提供部分结果,同时根据可用资源提高结果质量。这确保了在满足SLA的同时最小化资源使用。

在使用标准ClueWeb09B文档集合和TREC百万查询跟踪查询的实验中,我们的方法在查询结果质量方面优于一系列基线方法,证明它能够满足大型文档集合上的严格延迟SLA。

基于选择性搜索的随时排序

为了节省资源,选择性搜索方法将查询定向到包含主题相关文档的索引部分。大多数选择性搜索方法将所有主题相关文档分布到单个服务器节点;相比之下,我们的方法将每个主题的一部分分布到每个节点。这种文档的均匀分布具有负载平衡的好处,同时简化了整个分布式系统。

细粒度聚类方法

在每个节点内,我们对每个主题分片中的文档执行更细粒度的聚类。聚类类别是自动确定的,例如在"耳机"主题中,我们的算法可能会聚类与降噪耳机、无线耳机等相关的文档。

在每个主题内,我们根据这种更细粒度的聚类重新排序文档,实现更有针对性且更高效的检索。

随时排序查询处理

节点内的细粒度聚类使我们能够为不同的主题集群建立不同的相关性阈值,实现随时查询处理。根据查询,我们的算法确定每个主题内集群的访问顺序。如果集群中没有数据超过给定查询的阈值,则完全绕过该集群。

在实验中,我们将我们的聚类方法与现有的随时查询方法(JASS)进行了比较。我们还将其与预言模型进行了比较,该模型以完全正确的顺序探索完全正确的主题集群,建立了性能上限。

性能评估

为了评估这些方法,我们使用了排名偏置重叠(RBO),它表示算法以正确顺序返回的前k个结果(下图中的k=10和1,000)的百分比;1.0的分数表示最优排序。如下图所示,我们的聚类方法使算法比现有方法更有效地收敛到最优排序。

总体而言,我们的实验表明,我们提出的索引和查询处理方案允许遵守大规模信息检索系统中标准的严格延迟SLA,同时在延迟和查询结果质量之间提供细粒度的权衡。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

posted @ 2025-11-25 09:35  CodeShare  阅读(12)  评论(0)    收藏  举报