milvus/internal/proto/index_service.proto

101 lines
2.2 KiB
Protocol Buffer

syntax = "proto3";
package milvus.proto.index;
option go_package = "github.com/zilliztech/milvus-distributed/internal/proto/indexpb";
import "common.proto";
import "internal.proto";
message RegisterNodeRequest {
common.MsgBase base = 1;
common.Address address = 2;
}
message RegisterNodeResponse {
internal.InitParams init_params = 1;
}
message IndexStatesRequest {
int64 indexID = 1;
}
message IndexStatesResponse {
common.Status status = 1;
common.IndexState state = 2;
int64 indexID = 3;
}
message BuildIndexRequest {
repeated string data_paths = 2;
repeated common.KeyValuePair type_params = 3;
repeated common.KeyValuePair index_params = 4;
}
message BuildIndexResponse {
common.Status status = 1;
int64 indexID = 2;
}
message BuildIndexCmd {
int64 indexID = 1;
BuildIndexRequest req = 2;
}
message BuildIndexNotification {
common.Status status = 1;
int64 indexID = 2;
repeated string index_file_paths = 3;
}
message IndexFilePathRequest {
int64 indexID = 1;
}
message IndexFilePathsResponse {
common.Status status = 1;
int64 indexID = 2;
repeated string index_file_paths = 3;
}
message IndexMeta {
common.IndexState state = 1;
int64 indexID = 2;
int64 enque_time = 3;
int64 schedule_time = 4;
int64 build_complete_time = 5;
BuildIndexRequest req = 6;
repeated string index_file_paths = 7;
}
/****************IndexService************************/
service IndexService {
/**
* @brief This method is used to create collection
*
* @param CollectionSchema, use to provide collection information to be created.
*
* @return Status
*/
rpc RegisterNode(RegisterNodeRequest) returns (RegisterNodeResponse) {}
rpc BuildIndex(BuildIndexRequest) returns (BuildIndexResponse){}
rpc GetIndexStates(IndexStatesRequest) returns (IndexStatesResponse) {}
rpc GetIndexFilePaths(IndexFilePathRequest) returns (IndexFilePathsResponse){}
rpc NotifyBuildIndex(BuildIndexNotification) returns (common.Status) {}
}
service IndexNode {
/**
* @brief This method is used to create collection
*
* @param CollectionSchema, use to provide collection information to be created.
*
* @return Status
*/
rpc BuildIndex(BuildIndexCmd) returns (common.Status){}
}