Documentation ¶
Overview ¶
package milvus
package milvus
Index ¶
- func ParseDsl(dslString *string, vectorParam *string, vectorRecord *pb.VectorRecord) (string, error)
- type CompactParam
- type ConnectParam
- type DataType
- type Entity
- type ErrorCode
- type Field
- type FieldValue
- type IndexParam
- type IndexType
- type InsertParam
- type ListIDInSegmentParam
- type Mapping
- type MetricType
- type MilvusClient
- type MilvusGrpcClient
- type Milvusclient
- func (client *Milvusclient) Compact(ctx context.Context, compact CompactParam) (Status, error)
- func (client *Milvusclient) Connect(ctx context.Context, connectParam ConnectParam) error
- func (client *Milvusclient) CountEntities(ctx context.Context, collectionName string) (int64, Status, error)
- func (client *Milvusclient) CreateCollection(ctx context.Context, mapping Mapping) (Status, error)
- func (client *Milvusclient) CreateIndex(ctx context.Context, indexParam *IndexParam) (Status, error)
- func (client *Milvusclient) CreatePartition(ctx context.Context, partitionParam PartitionParam) (Status, error)
- func (client *Milvusclient) DeleteEntityByID(ctx context.Context, collectionName string, id_array []int64) (Status, error)
- func (client *Milvusclient) Disconnect(_ context.Context) error
- func (client *Milvusclient) DropCollection(ctx context.Context, collectionName string) (Status, error)
- func (client *Milvusclient) DropIndex(ctx context.Context, collectionName string, fieldName string) (Status, error)
- func (client *Milvusclient) DropPartition(ctx context.Context, partitionParam PartitionParam) (Status, error)
- func (client *Milvusclient) Flush(ctx context.Context, collectionNameArray []string) (Status, error)
- func (client *Milvusclient) GetClientVersion(ctx context.Context) string
- func (client *Milvusclient) GetCollectionInfo(ctx context.Context, collectionName string) (Mapping, Status, error)
- func (client *Milvusclient) GetCollectionStats(ctx context.Context, collectionName string) (string, Status, error)
- func (client *Milvusclient) GetConfig(ctx context.Context, nodeName string) (string, Status, error)
- func (client *Milvusclient) GetEntityByID(ctx context.Context, collectionName string, fields []string, entity_id []int64) ([]Entity, Status, error)
- func (client *Milvusclient) HasCollection(ctx context.Context, collectionName string) (bool, Status, error)
- func (client *Milvusclient) HasPartition(ctx context.Context, param PartitionParam) (bool, Status, error)
- func (client *Milvusclient) Insert(ctx context.Context, insertParam InsertParam) ([]int64, Status, error)
- func (client *Milvusclient) IsConnected(_ context.Context) bool
- func (client *Milvusclient) ListCollections(ctx context.Context) ([]string, Status, error)
- func (client *Milvusclient) ListIDInSegment(ctx context.Context, listIDInSegmentParam ListIDInSegmentParam) ([]int64, Status, error)
- func (client *Milvusclient) ListPartitions(ctx context.Context, collectionName string) ([]PartitionParam, Status, error)
- func (client *Milvusclient) LoadCollection(ctx context.Context, collectionName string) (Status, error)
- func (client *Milvusclient) Search(ctx context.Context, searchParam SearchParam) (TopkQueryResult, Status, error)
- func (client *Milvusclient) ServerStatus(ctx context.Context) (string, Status, error)
- func (client *Milvusclient) ServerVersion(ctx context.Context) (string, Status, error)
- func (client *Milvusclient) SetConfig(ctx context.Context, nodeName string, value string) (Status, error)
- type Params
- type PartitionParam
- type PartitionStat
- type QueryResult
- type Range
- type SearchParam
- type SegmentStat
- type Status
- type TopkQueryResult
- type VectorRecord
- type VectorRowRecord
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CompactParam ¶ added in v0.5.0
type CompactParam struct { CollectionName string // contains filtered or unexported fields }
type ConnectParam ¶
type ConnectParam struct { // IPAddress Server IP address IPAddress string // Port Server port Port int64 }
ConnectParam Parameters for connect
type ErrorCode ¶
type ErrorCode int64
ErrorCode error code
const ( // OK status OK ErrorCode = 0 // UnKnownError unknow error UnKnownError ErrorCode = 1 // NotSupported not supported operation NotSupported ErrorCode = 2 // NotConnected not connected NotConnected ErrorCode = 3 // RPCFailed rpc failed RPCFailed ErrorCode = 4 // ServerFailed server failed ServerFailed ErrorCode = 5 )
type FieldValue ¶ added in v0.5.0
type FieldValue struct { Name string RawData interface{} }
FieldValue
type IndexParam ¶
type IndexParam struct { // CollectionName collection name for create index CollectionName string // FieldName field name for create index FieldName string // IndexParams string // ExtraParams extra parameters // Note: extra_params is extra parameters list, it must be json format // For different index type, parameter list is different accordingly, for example: // FLAT/IVFLAT/SQ8: "{nlist: '16384'}" // ///< nlist range:[1, 999999] // IVFPQ: "{nlist: '16384', m: "12"}" // ///< nlist range:[1, 999999] // ///< m is decided by dim and have a couple of results. // NSG: "{search_length: '45', out_degree:'50', candidate_pool_size:'300', "knng":'100'}" // ///< search_length range:[10, 300] // ///< out_degree range:[5, 300] // ///< candidate_pool_size range:[50, 1000] // ///< knng range:[5, 300] // HNSW "{M: '16', efConstruction:'500'}" // ///< M range:[5, 48] // ///< efConstruction range:[topk, 4096] IndexParams map[string]interface{} }
IndexParam index parameters
type IndexType ¶
type IndexType string
IndexType index type
const ( // FLAT flat FLAT IndexType = "FLAT" // BINFLAT bin_flat BINFLAT IndexType = "BIN_FLAT" // IVFFLAT ivfflat IVFFLAT IndexType = "IVF_FLAT" // BINIVFFLAT bin_ivf_flat BINIVFFLAT IndexType = "BIN_IVF_FLAT" // IVFSQ8 ivfsq8 IVFSQ8 IndexType = "IVF_SQ8" //RNSG rnsg RNSG IndexType = "RNSG" // IVFSQ8H ivfsq8h IVFSQ8H IndexType = "IVF_SQ8_HYBRID" // IVFPQ ivfpq IVFPQ IndexType = "IVF_PQ" // SPTAGKDT sptagkdt SPTAGKDT IndexType = "SPTAG_KDT_RNT" // SPTAGBKT sptagbkt SPTAGBKT IndexType = "SPTAG_BKT_RNT" // HNSW HNSW IndexType = "HNSW" // ANNOY annoy ANNOY IndexType = "ANNOY" // RHNSWFLAT rhsw_flat RHNSWFLAT IndexType = "RHNSW_FLAT" // RHNSWPQ RHNSW_PQ RHNSWPQ IndexType = "RHNSW_PQ" // RHNSWSQ8 RHNSW_SQ8 RHNSWSQ8 IndexType = "RHNSW_SQ8" // SORTED a scalar index SORTED IndexType = "SORTED" )
type InsertParam ¶
type InsertParam struct { // CollectionName collection name CollectionName string // RecordArray raw entities array Fields []FieldValue // IDArray id array IDArray []int64 // PartitionTag partition tag PartitionTag string }
InsertParam insert parameters
type ListIDInSegmentParam ¶ added in v0.4.0
type Mapping ¶ added in v0.5.0
type Mapping struct { // CollectionName collection name CollectionName string // Fields fields Fields []Field // ExtraParams extra params ExtraParams *Params }
CollectionParam informations of a collection
type MetricType ¶
type MetricType string
MetricType metric type
const ( // L2 euclidean distance L2 MetricType = "L2" // IP inner product IP MetricType = "IP" // HAMMING hamming distance HAMMING MetricType = "HAMMING" // JACCARD jaccard distance JACCARD MetricType = "JACCARD" // TANIMOTO tanimoto distance TANIMOTO MetricType = "TANIMOTO" // SUBSTRUCTURE substructure distance SUBSTRUCTURE MetricType = "SUBSTRUCTURE" // SUPERSTRUCTURE superstructure SUPERSTRUCTURE MetricType = "SUPERSTRUCTURE" )
type MilvusClient ¶
type MilvusClient interface { // GetClientVersion method // This method is used to give the client version. // return Client version. GetClientVersion(ctx context.Context) string // Connect method // Create a connection instance and return it's shared pointer // return indicate if connect is successful Connect(ctx context.Context, connectParam ConnectParam) error // IsConnected method // This method is used to test whether server is connected // return indicate if connection status IsConnected(ctx context.Context) bool // Disconnect method // This method is used to disconnect server // return indicate if disconnect is successful Disconnect(ctx context.Context) error // CreateCollection method // This method is used to create collection // param collectionParam is used to provide collection information to be created. // return indicate if collection is created successfully CreateCollection(ctx context.Context, mapping Mapping) (Status, error) // HasCollection method // This method is used to create collection. //return indicate if collection is exist HasCollection(ctx context.Context, collectionName string) (bool, Status, error) // DropCollection method // This method is used to drop collection(and its partitions). // return indicate if collection is drop successfully. DropCollection(ctx context.Context, collectionName string) (Status, error) // CreateIndex method // This method is used to create index for whole collection(and its partitions). // return indicate if build index successfully. CreateIndex(ctx context.Context, indexParam *IndexParam) (Status, error) // Insert method // This method is used to query entity in collection. // return indicate if insert is successful. Insert(ctx context.Context, insertParam InsertParam) ([]int64, Status, error) // GetEntityByID method // This method is used to get entity by entity id // return entity data GetEntityByID(ctx context.Context, collectionName string, fields []string, entityId []int64) ([]Entity, Status, error) // ListIDInSegment method // This method is used to get entity ids // return entity ids ListIDInSegment(ctx context.Context, listIDInSegmentParam ListIDInSegmentParam) ([]int64, Status, error) // Search method // This method is used to query entity in collection. // return indicate if query is successful. Search(ctx context.Context, searchParam SearchParam) (TopkQueryResult, Status, error) // DeleteEntityByID method // This method is used to delete entities by ids // return indicate if delete is successful DeleteEntityByID(ctx context.Context, collectionName string, id_array []int64) (Status, error) // GetCollectionInfo method // This method is used to show collection information. //return indicate if this operation is successful. GetCollectionInfo(ctx context.Context, collectionName string) (Mapping, Status, error) // CountEntities method // This method is used to get collection row count. // return indicate if this operation is successful. CountEntities(ctx context.Context, collectionName string) (int64, Status, error) // ListCollections method // This method is used to list all collections. // return indicate if this operation is successful. ListCollections(ctx context.Context) ([]string, Status, error) // GetCollectionStats method // This method is used to get collection informations // return collection informations GetCollectionStats(ctx context.Context, collectionName string) (string, Status, error) // ServerVersion method // This method is used to give the server version. // return server version. ServerVersion(ctx context.Context) (string, Status, error) // ServerStatus method // This method is used to give the server status. // return server status. ServerStatus(ctx context.Context) (string, Status, error) // LoadCollection method // This method is used to preload collection // return indicate if this operation is successful. LoadCollection(ctx context.Context, collectionName string) (Status, error) // DropIndex method // This method is used to drop index of collection(and its partitions) // return indicate if this operation is successful. DropIndex(ctx context.Context, collectionName string, fieldName string) (Status, error) // CreatePartition method // This method is used to create collection partition // return indicate if partition is created successfully CreatePartition(ctx context.Context, partitionParam PartitionParam) (Status, error) // ListPartitions method // This method is used to list partitions // return indicate if this operation is successful ListPartitions(ctx context.Context, collectionName string) ([]PartitionParam, Status, error) // HasPartitions method // This method is used to create collection // return indicate if this operation is successful HasPartition(ctx context.Context, param PartitionParam) (bool, Status, error) // DropPartition method // This method is used to delete collection partition. // return indicate if partition is delete successfully. DropPartition(ctx context.Context, partitionParam PartitionParam) (Status, error) // GetConfig // This method is used to get config // return indicate if this operation is successful. GetConfig(ctx context.Context, nodeName string) (string, Status, error) // SetConfig // This method is used to set config // return indicate if this operation is successful. SetConfig(ctx context.Context, nodeName string, value string) (Status, error) // Flush method // This method is used to flush collections // return indicate if flush is successful Flush(ctx context.Context, collectionNameArray []string) (Status, error) // Compact method // This method is used to compact collection // return indicate if compact is successful Compact(ctx context.Context, compactParam CompactParam) (Status, error) }
MilvusClient SDK main interface
func NewMilvusClient ¶
func NewMilvusClient(ctx context.Context, connectParam ConnectParam) (MilvusClient, error)
NewMilvusClient is the constructor of MilvusClient
type MilvusGrpcClient ¶
type MilvusGrpcClient interface { CreateCollection(ctx context.Context, mapping pb.Mapping) (pb.Status, error) HasCollection(ctx context.Context, collectionName pb.CollectionName) (pb.BoolReply, error) DescribeCollection(ctx context.Context, collectionName pb.CollectionName) (pb.Mapping, error) CountCollection(ctx context.Context, collectionName pb.CollectionName) (pb.CollectionRowCount, error) ShowCollections(ctx context.Context) (pb.CollectionNameList, error) ShowCollectionInfo(ctx context.Context, collectionName pb.CollectionName) (pb.CollectionInfo, error) DropCollection(ctx context.Context, collectionName pb.CollectionName) (pb.Status, error) CreateIndex(ctx context.Context, indexParam pb.IndexParam) (pb.Status, error) DropIndex(ctx context.Context, indexParam pb.IndexParam) (pb.Status, error) CreatePartition(ctx context.Context, partitionParam pb.PartitionParam) (pb.Status, error) ShowPartitions(ctx context.Context, collectionName pb.CollectionName) (pb.PartitionList, error) HasPartition(ctx context.Context, param pb.PartitionParam) (pb.BoolReply, error) DropPartition(ctx context.Context, partitionParam pb.PartitionParam) (pb.Status, error) Insert(ctx context.Context, insertParam pb.InsertParam) (pb.EntityIds, error) GetEntityByID(ctx context.Context, identity pb.EntityIdentity) (pb.Entities, error) GetEntityIDs(ctx context.Context, param pb.GetEntityIDsParam) (pb.EntityIds, error) Search(ctx context.Context, searchParam pb.SearchParam) (*pb.QueryResult, error) Cmd(ctx context.Context, command pb.Command) (pb.StringReply, error) DeleteByID(ctx context.Context, param pb.DeleteByIDParam) (pb.Status, error) PreloadCollection(ctx context.Context, collectionName pb.CollectionName) (pb.Status, error) Flush(ctx context.Context, param pb.FlushParam) (pb.Status, error) Compact(ctx context.Context, compactParam pb.CompactParam) (pb.Status, error) }
MilvusGrpcClient call grpc generated code interface
func NewMilvusGrpcClient ¶
func NewMilvusGrpcClient(client pb.MilvusServiceClient) MilvusGrpcClient
NewMilvusGrpcClient is the constructor of MilvusGrpcClient
type Milvusclient ¶
type Milvusclient struct {
Instance MilvusGrpcClient
}
func (*Milvusclient) Compact ¶
func (client *Milvusclient) Compact(ctx context.Context, compact CompactParam) (Status, error)
func (*Milvusclient) Connect ¶
func (client *Milvusclient) Connect(ctx context.Context, connectParam ConnectParam) error
func (*Milvusclient) CountEntities ¶ added in v0.4.0
func (*Milvusclient) CreateCollection ¶
func (*Milvusclient) CreateIndex ¶
func (client *Milvusclient) CreateIndex(ctx context.Context, indexParam *IndexParam) (Status, error)
func (*Milvusclient) CreatePartition ¶
func (client *Milvusclient) CreatePartition(ctx context.Context, partitionParam PartitionParam) (Status, error)
func (*Milvusclient) DeleteEntityByID ¶ added in v0.4.0
func (*Milvusclient) Disconnect ¶
func (client *Milvusclient) Disconnect(_ context.Context) error
func (*Milvusclient) DropCollection ¶
func (*Milvusclient) DropPartition ¶
func (client *Milvusclient) DropPartition(ctx context.Context, partitionParam PartitionParam) (Status, error)
func (*Milvusclient) GetClientVersion ¶
func (client *Milvusclient) GetClientVersion(ctx context.Context) string
func (*Milvusclient) GetCollectionInfo ¶ added in v0.4.0
func (*Milvusclient) GetCollectionStats ¶ added in v0.4.0
func (*Milvusclient) GetEntityByID ¶
func (*Milvusclient) HasCollection ¶
func (*Milvusclient) HasPartition ¶ added in v0.5.0
func (client *Milvusclient) HasPartition(ctx context.Context, param PartitionParam) (bool, Status, error)
func (*Milvusclient) Insert ¶
func (client *Milvusclient) Insert(ctx context.Context, insertParam InsertParam) ([]int64, Status, error)
func (*Milvusclient) IsConnected ¶
func (client *Milvusclient) IsConnected(_ context.Context) bool
func (*Milvusclient) ListCollections ¶ added in v0.4.0
func (*Milvusclient) ListIDInSegment ¶ added in v0.4.0
func (client *Milvusclient) ListIDInSegment(ctx context.Context, listIDInSegmentParam ListIDInSegmentParam) ([]int64, Status, error)
func (*Milvusclient) ListPartitions ¶ added in v0.4.0
func (client *Milvusclient) ListPartitions(ctx context.Context, collectionName string) ([]PartitionParam, Status, error)
func (*Milvusclient) LoadCollection ¶ added in v0.4.0
func (*Milvusclient) Search ¶
func (client *Milvusclient) Search(ctx context.Context, searchParam SearchParam) (TopkQueryResult, Status, error)
func (*Milvusclient) ServerStatus ¶
func (*Milvusclient) ServerVersion ¶
type PartitionParam ¶
type PartitionParam struct { // CollectionName partition collection name CollectionName string // PartitionTag partition tag PartitionTag string }
PartitionParam partition parameters
type PartitionStat ¶
type PartitionStat struct { // Tag partition tag Tag string // RowCount row count of partition RowCount int64 // SegmentsStat array of partition's SegmentStat SegmentsStat []SegmentStat }
PartitionStat
type QueryResult ¶
type QueryResult struct { // Ids id array Ids []int64 // Distances distance array Distances []float32 // Entities Entities []Entity }
QueryResult Query result
type Range ¶
type Range struct { // StartValue Range start StartValue string // EndValue Range stop EndValue string }
Range range information, for DATE range, the format is like: 'year-month-day'
type SearchParam ¶
type SearchParam struct { // CollectionName collection name for search CollectionName string // QueryEntities query entities raw array Dsl map[string]interface{} // PartitionTag partition tag array PartitionTag []string }
SearchParam search parameters
type SegmentStat ¶
type SegmentStat struct { // SegmentName segment name SegmentName string // RowCount segment row count RowCount int64 // IndexName index name IndexName string //DataSize data size DataSize int64 }
SegmentStat segment statistics
type TopkQueryResult ¶
type TopkQueryResult struct { // QueryResultList query result list QueryResultList []QueryResult }
TopkQueryResult Topk query result
type VectorRecord ¶ added in v0.5.0
type VectorRecord struct {
VectorRecord []VectorRowRecord
}
VectorRecord
type VectorRowRecord ¶ added in v0.5.0
VectorRowRecord