mirror of https://github.com/milvus-io/milvus.git
862 B
862 B
Visitor Pattern
Visitor Pattern is used in segcore for parse and execute Execution Plan.
- Inside
${internal/core}/src/query/PlanNode.h
, contains physical plan for vector search:FloatVectorANNS
FloatVector search execution nodeBinaryVectorANNS
BinaryVector search execution node
${internal/core}/src/query/Expr.h
contains physical plan for scalar expression:TermExpr
support operation likecol in [1, 2, 3]
RangeExpr
support constant compare with data column likea >= 5
1 < b < 2
CompareExpr
support compare with different columns, likea < b
LogicalBinaryExpr
support and/orLogicalUnaryExpr
support not
Currently, under ${internal/core/src/query}
directory, there are the following visitors:
ExecPlanNodeVistor
physical plan executor only supports ANNS node for now