面向超大型数据库的可扩展分块
数据库
2020-08-20 v1 分布式、并行与集群计算
数据结构与算法
摘要
在数据库去重领域,目标是查找数据库中近似匹配的记录。分块(Blocking)是该过程中的典型阶段,以廉价方式找出作为潜在匹配、待进一步处理的候选记录对。我们在此提出哈希动态分块(Hashed Dynamic Blocking),一种旨在处理比多数先前工作所研究更大数据集的分块新方法。哈希动态分块(HDB)扩展了动态分块,后者利用稀有匹配值与稀有值交集可预测匹配关系的洞见。我们还提出局部敏感哈希(Locality Sensitive Hashing, LSH)的新颖用法,为巨型数据库构建分块键值,并具备便捷配置以控制精确率与召回率间的权衡。HDB 通过最小化数据移动、使用紧凑分块表示,以及利用 Count-min Sketch 近似计数数据结构贪心剪枝无效候选分块,实现海量规模。我们通过对超过一百万行的真实世界数据集进行基准测试来评测该算法,表明其在此范围内呈现线性时间复杂度扩展。此外,我们在一个 5.3 亿行的工业数据集上执行 HDB,以某主流云服务 $307 的成本在不到三小时内检测出 680 亿候选对。
引用
@article{arxiv.2008.08285,
title = {Scalable Blocking for Very Large Databases},
author = {Andrew Borthwick and Stephen Ash and Bin Pang and Shehzad Qureshi and Timothy Jones},
journal= {arXiv preprint arXiv:2008.08285},
year = {2020}
}