HNSW图算法索引设计存储,如图所示,首先简化成4个点,每个点都有它的临界点,需要存储连接关系和原始的数据两种数据,如图,V1对应的临界点是 V2、V3、V4这三个点, 用N来表示边关系, N1就表示V1到V2的边,通过N1来指向V2,链接起来。V1又指向了它的对应的数据的地址,通过这种方式来来进行图的连接关系和原始数据的存储。 这种存储也有一些可以优化的点。例如为了减少跳转,直接将存储D的指针存在N中,就不需要经过一次跳转,定位到它的向量数据,通过这种方式来加速 它的过程,同时去掉V的存储,因为N直接可以存储连接关系了,不需要一个V存储点本身了,因此我们得到图中下侧数据图,这个是页面和页面关系的配置关系的存储关系的一张图,分为三种。 第一Meta page存储源数据,包括一些配置的入口点以及初始化的配置。 第二Data page和IVFFlat的 Data page类似,存储原始的数据。 第三Neighbor page是用来存储邻接关系。
答复内容摘自《PostgreSQL实战教程》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/topic/download?id=1168
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。