【技术实现步骤摘要】
目标数据库的高维向量搜索方法及相关设备
[0001]本专利技术涉及数据搜索领域,尤其涉及一种目标数据库的高维向量搜索方法及相关设备。
技术介绍
[0002]在互联网时代,非结构化数据规模急速增长,比如视频、图像、语音、文字等,随着深度学习方法在各个领域的兴起,大部分非结构化数据能够通过深度学习转换为高维向量进行结构化表示,再通过向量搜索方法,就能够有效的使用这些向量数据。但是,在实际的应用中,这些数据都存储在数据库中,由于数据库的数据资源时间跨度大,大多数数据库都是基于低维向量进行开发的,因此都只支持较低维的向量搜索,例如PostgreSQL的imgsmlr扩展和cube扩展,将高维的结构化数据存储在PostgreSQL数据库中,是不能直接使用现有的向量搜索方法进行高维向量搜索的。
技术实现思路
[0003]本专利技术实施例提供一种目标数据库的高维向量搜索方法,能够通过共享内存,使集成和封装有高维向量搜索库的高维辅助进程与目标数据库之间实现通信,需要进行高维向量搜索时,通过高维辅助进程来进行搜索,由于高维辅助 ...
【技术保护点】
【技术特征摘要】
1.一种目标数据库的高维向量搜索方法,其特征在于,包括以下步骤:当高维辅助进程在共享内存中读取到服务进程对应的请求时,返回与所述请求对应的响应结果发送到所述共享内存中;通过所述服务进程读取所述共享内在中的所述响应结果返回到客户端;其中,所述高维辅助进程集成和封装有高维向量搜索库,所述服务进程用于处理所述目标数据库与所述客户端之间的请求,所述目标数据库仅支持低维向量的搜索。2.如权利要求1所述的方法,其特征在于,在所述当高维辅助进程在共享内存中读取到服务进程对应的请求时,返回与所述请求对应的响应结果发送到所述共享内存中的步骤之前,所述方法还包括:所述服务进程通过预设的索引扩展向所述共享内存发送所述请求,并通过所述预设的索引扩展定时或实时访问所述共享内存,读取所述共享内存的状态,并判断是否存在与所述请求对应的响应结果;所述高维辅助进程定时或实时访问所述共享内存,读取所述共享内存的状态,并判断是否存在所述服务进程对应的所述请求;其中,所述服务进程以及所述高维辅助进程对所述共享内存的访问通过锁进行同步。3.如权利要求2所述的方法,其特征在于,所述目标数据库的索引表存储在磁盘中,所述方法还包括:每次初始化所述高维辅助进程时,将所述索引表加载到的共享内存中,所述索引表用于记录所述服务进程对应的所述查询请求;当所述共享内存中的所述索引表发生变化时,将变化后的索引表发送到所述磁盘上时行更新。4.如权利要求3所述的方法,其特征在于,所述请求包括对所述高维向量搜索库的操作请求,所述响应结果包括对所述高维向量搜索库的操作结果,在所述当所述共享内存中的所述索引表发生变化时,将变化后的索引表发送到所述磁盘上时行更新的步骤之前,所述方法还包括:当高维辅助进程在共享内存中读取到服务进程对应的操作请求时,按所述操作请求对所述高维向量搜索库进行操作,并将对应的操作结果发送到所述共享内存;通过所述服务进程读取所述共享内在中的所述操作结果返回到所述客户端。5.如权利要求2所述的方法,其特征在于,所述方法还包括:通过处理所述客户端连接的异常断开以及请求中断,以防止所述共享内存中的锁发生死锁。6.如权利要求2所述的方法,其特征在于,所述预设的索引扩展包括参数、访问方法以及操作符类,其中,...
【专利技术属性】
技术研发人员:汤前进,吕旭涛,
申请(专利权)人:深圳云天励飞技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。