Principles
Milvus verifies the index algorithm used before each query, which is done in INDEX_NODE. Only when the verification is successful, QUERY_NODE invokes the interface in the corresponding index algorithm to perform query-related operations. The operations on the preceding two nodes are implemented with Go. Figure 1 shows the query structure of Milvus.
Knowhere is the key component of the index algorithm. This component is mainly implemented using C++. It links the core index algorithm (such as Faiss or HNSW) and CGO interface for invoking.
In conclusion, integrating the KBest algorithm into Milvus takes the following two steps:
- Use Go to add the verification of the KBest algorithm to INDEX_NODE.
- Use C++ to implement the connection to KBest in the Knowwhere component.
Parent topic: Feature
