预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共21页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN111309984A(43)申请公布日2020.06.19(21)申请号202010163626.X(22)申请日2020.03.10(71)申请人支付宝(杭州)信息技术有限公司地址310000浙江省杭州市西湖区西溪路556号8层B段801-11(72)发明人杨文李涛方概魏宏(74)专利代理机构北京亿腾知识产权代理事务所(普通合伙)11309代理人陈霁周良玉(51)Int.Cl.G06F16/901(2019.01)G06F16/903(2019.01)G06F16/906(2019.01)权利要求书4页说明书13页附图3页(54)发明名称利用索引从数据库中进行节点向量检索的方法及装置(57)摘要本说明书实施例提供一种利用索引从数据库中进行节点向量检索的方法及装置。PostgreSQL数据库包括多个节点的向量,索引将多个节点划分到多个簇中,每个簇对应一个中心点。在检索时,基于该索引,将多个簇对应的中心点分别与待检索的第一节点进行向量匹配,从多个中心点中确定与第一节点在向量上最匹配的目标中心点,将目标中心点所在的第一簇中的多个节点分别与第一节点进行向量匹配,根据匹配结果将各个节点加入匹配队列中基于匹配队列中的节点排序,确定针对第一节点检索到的节点。CN111309984ACN111309984A权利要求书1/4页1.一种利用索引从PostgreSQL数据库中进行节点向量检索的方法,通过计算机执行;所述数据库包括多个节点的向量,所述索引将多个节点划分到多个簇中,每个簇对应一个中心点;所述方法包括:获取待检索的第一节点;基于所述索引,将所述多个簇对应的中心点分别与所述第一节点进行向量匹配,从多个中心点中确定与所述第一节点在向量上最匹配的目标中心点;将所述目标中心点所在的第一簇中的多个节点分别与所述第一节点进行向量匹配,根据匹配结果将各个节点加入匹配队列中;基于匹配队列中的节点排序,确定针对所述第一节点检索到的节点。2.根据权利要求1所述的方法,所述索引包括多个中心点数据页和属于不同簇的多个节点数据页,所述中心点数据页用于存储各个中心点的向量以及每个中心点所在的簇的起始节点数据页标识,所述节点数据页用于存储各个节点的向量,一个节点数据页中的节点对应于一个簇。3.根据权利要求2所述的方法,所述基于所述索引,将所述多个簇对应的中心点分别与所述第一节点进行向量匹配的步骤,包括:从所述索引中获取多个中心点数据页,从所述多个中心点数据页中获取所述多个簇对应的中心点的向量,并将所述多个簇对应的中心点的向量分别与所述第一节点的向量进行匹配;所述将所述目标中心点所在的第一簇中的多个节点分别与所述第一节点进行向量匹配的步骤,包括:从所述目标中心点对应的中心点数据页中,获取所述第一簇的起始节点数据页标识,基于该起始节点数据页标识,从所述索引的多个节点数据页中获取所述第一簇对应的多个节点的向量,并将该多个节点的向量分别与所述第一节点的向量进行匹配。4.根据权利要求2所述的方法,属于同一簇的多个节点数据页连续。5.根据权利要求2所述的方法,属于同一簇的多个节点数据页不连续;并且,所述节点数据页还用于存储同一簇中该节点数据页之前的节点数据页标识和该节点数据页之后的节点数据页标识。6.根据权利要求1所述的方法,所述目标中心点为一个或多个;所述将所述目标中心点所在的第一簇中的多个节点分别与所述第一节点进行向量匹配,根据匹配结果将各个节点加入匹配队列中的步骤,包括:针对每个目标中心点所在的第一簇,将所述第一簇中的多个节点分别与所述第一节点进行向量匹配,根据匹配结果将每个目标中心点所在的第一簇中的节点加入同一匹配队列中。7.根据权利要求1所述的方法,所述数据库还包括各个节点的向量字段之外的第一字段;在获取待检索的第一节点时,还包括:获取针对所述第一字段的限制字段值条件;所述基于匹配队列中的节点排序,确定针对所述第一节点检索到的节点的步骤,包括:针对匹配队列中匹配度最高的第一数量个节点,从所述数据库中获取所述第一数量个节点的第一字段值;2CN111309984A权利要求书2/4页基于获取的各个第一字段值,从所述第一数量个节点中筛选出满足所述限制字段值条件的节点,得到针对所述第一节点检索得到的节点。8.一种用于从PostgreSQL数据库中进行节点向量检索的索引创建方法,通过计算机执行,所述数据库包括多个节点的向量,所述方法包括:从所述数据库中获取多个节点;基于所述多个节点中至少部分节点的向量进行节点聚类,得到多个簇以及所述多个簇各自的中心点;确定所述多个节点各自归属的簇;利用所述索引记录所述多个簇的中心点以及所述多个簇对所述多个节点的划分,以用于进行节点向量检索。9.根据权利要求8所述的方法,