[发明专利]一种基于Spark的大规模高维数据近似近邻查询系统和方法在审
申请号: | 202111672312.3 | 申请日: | 2021-12-31 |
公开(公告)号: | CN114329094A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 徐姚亨;姚斌;张鹏程;唐飞龙;沈耀;郑文立 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/9032 |
代理公司: | 上海市汇业律师事务所 31325 | 代理人: | 王函 |
地址: | 200030 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 spark 大规模 数据 近似 近邻 查询 系统 方法 | ||
本发明提供的一种基于Spark的大规模高维数据近似近邻查询系统和方法,主要在内存中执行近似近邻查询。首先根据向量的相似性进行聚类分区,每一个聚类分区对应Spark弹性分布式数据集的一个分区。对每一个分区的数据进行比例采样,并且打上分区的标签。使用该采样数据在主节点建立全局索引,在相应的分区上建立分区索引。查询时,通过该全局索引找到相应的需要查询的若干个该分区,再对各个分区的结果汇总排序,得到最终结果。本发明的技术方案基于Spark系统提供了一种高度可扩展的分布式近似近邻查询方案,同时实现了低延迟和高吞吐量的特性。
技术领域
本发明涉及计算机数据管理技术领域,更具体地,涉及大规模高维数据快速检索方法及系统。
背景技术
近邻搜索是众多应用中的重要操作,例如图像检索、推荐系统和数据挖掘都需要进行近邻搜索。随着人工智能相关领域迅速的发展,机器学习算法在计算机视觉、语音识别、自然语言处理等应用领域取得了重大突破,大量的非结构化数据(图片,语音,文本)可以转化为向量这一更高效的数据表示,导致了海量向量数据的产生。向量近邻搜索算法需要满足可扩展性、高吞吐量、低延迟等需求才能高效的处理海量向量数据。例如,在淘宝推荐中,数据库的图片数量超过十亿级别。一方面,在海量数据面前,单机算法已经不适用了,必须考虑分布式环境下的检索方法,满足系统的可扩展性;另一方面,检索服务需要在几毫秒的时间内响应,以满足用户的实时性需求,准确近邻搜索不能满足对效率和成本的实际要求,但近似近邻搜索在稍微放宽精度限制的情况下能提高吞吐量,满足上述需求。
Apache Spark是一种基于mapReduce范式用于大数据处理的分布式开源处理系统。与面向磁盘和批量处理的Hadoop相比,Spark可以使用分布式内存存储和计算,有低查询延迟和高吞吐量的特点。Spark架构的结构如图1所示,其中驱动程序节点是主节点,工作节点是从节点。
在介绍相关技术之前,先给出一些必要的定义:
X为一个包含n个向量的数据集,X={x1,x2,x3,x4,x5,x6.....xn},每个向量的维度为d,dist(a,b)=||a,b||2表示任意两个向量a和b的欧式距离,给定查询向量q。
定义1KNN(k近邻查询,k-nearest Neighbors):kNN(q)为查询结果,包含k个属于X的向量集V,即kNN(q)=V,其中任意X中其他向量与q的距离都大于V中的向量。
定义2AKNN(近似k近邻查询,Appropriate k-nearest Neighbors):
AKNN返回的结果为近似结果,记作AKNN(q),准确结果记为KNN(q),使用召回率作为衡量精度,即recall=AKKN(q)∩KNN(q)。
GeoSpark是一个用于处理大规模空间数据的内存集群计算框架,支持不同的几何点、多边形和矩形等空间对象。它实现了包括kNN在内的各种查询处理算法。GeoSpark使用一个网结果作为分区全局索引。但这对于非空间向量数据不适用:kNN查询的时候会对所有分区进行搜索,之后进行堆排序,计算开销巨大。
Location Spark使用网格和qd树作为全局索引,支持范围查询、kNN等空间查询分析,并且设计了内存管理算法,能动态地把经常访问的数据存入内存,不经常被访问的存入磁盘。STARK Hagedorn使用R-tree进行空间索引,但提供了不同的选项供用户选择是否要建立索引。STARK中也开发了kNN和聚类的查询运算。
上述基于Spark的工作在一定领域内取得了具有积极意义的成果,但是,仍然在近邻查询的应用中存在以下三点不足:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111672312.3/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置