鲲鹏社区首页
中文
注册
开发者
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

原理描述

在每次查询前,Milvus都会验证所使用的索引算法,这一过程在INDEX_NODE中进行。只有当验证通过,QUERY_NODE才会调用相应索引算法中的接口,执行查询操作。这两个节点的操作均采用Go语言实现。Milvus的整体查询结构如图1所示。

图1 Milvus整体查询架构

索引算法的关键组件名为Knowhere,主要采用C++实现,并会链接核心索引算法(如Faiss或HNSW等)和CGO接口进行调用。

综上所述,引入KScaNN算法,需在两个方面进行处理。

  1. 在INDEX_NODE中添加对KScaNN算法的验证,此处用Go语言实现;
  2. 在Knowhere组件中,引入对KScaNN的对接实现,此处用C++语言实现;