mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-28 22:45:26 +08:00
after the pr merged, we can support to insert, upsert, build index, query, search in the added field. can only do the above operates in added field after add field request complete, which is a sync operate. compact will be supported in the next pr. #39718 --------- Signed-off-by: lixinguo <xinguo.li@zilliz.com> Co-authored-by: lixinguo <xinguo.li@zilliz.com>
278 lines
9.6 KiB
Protocol Buffer
278 lines
9.6 KiB
Protocol Buffer
syntax = "proto3";
|
|
package milvus.proto.rootcoord;
|
|
|
|
option go_package="github.com/milvus-io/milvus/pkg/v2/proto/rootcoordpb";
|
|
|
|
import "common.proto";
|
|
import "milvus.proto";
|
|
import "internal.proto";
|
|
import "proxy.proto";
|
|
import "etcd_meta.proto";
|
|
|
|
service RootCoord {
|
|
rpc GetComponentStates(milvus.GetComponentStatesRequest) returns (milvus.ComponentStates) {}
|
|
rpc GetTimeTickChannel(internal.GetTimeTickChannelRequest) returns(milvus.StringResponse) {}
|
|
rpc GetStatisticsChannel(internal.GetStatisticsChannelRequest) returns(milvus.StringResponse){}
|
|
/**
|
|
* @brief This method is used to create collection
|
|
*
|
|
* @param CreateCollectionRequest, use to provide collection information to be created.
|
|
*
|
|
* @return Status
|
|
*/
|
|
rpc CreateCollection(milvus.CreateCollectionRequest) returns (common.Status){}
|
|
|
|
/**
|
|
* @brief This method is used to delete collection.
|
|
*
|
|
* @param DropCollectionRequest, collection name is going to be deleted.
|
|
*
|
|
* @return Status
|
|
*/
|
|
rpc DropCollection(milvus.DropCollectionRequest) returns (common.Status) {}
|
|
|
|
/**
|
|
* @brief This method is used to add collection field.
|
|
*
|
|
* @param AddCollectionFieldRequest, field schema is going to be added.
|
|
*
|
|
* @return Status
|
|
*/
|
|
rpc AddCollectionField(milvus.AddCollectionFieldRequest) returns (common.Status) {}
|
|
|
|
/**
|
|
* @brief This method is used to test collection existence.
|
|
*
|
|
* @param HasCollectionRequest, collection name is going to be tested.
|
|
*
|
|
* @return BoolResponse
|
|
*/
|
|
rpc HasCollection(milvus.HasCollectionRequest) returns (milvus.BoolResponse) {}
|
|
|
|
/**
|
|
* @brief This method is used to get collection schema.
|
|
*
|
|
* @param DescribeCollectionRequest, target collection name.
|
|
*
|
|
* @return CollectionSchema
|
|
*/
|
|
rpc DescribeCollection(milvus.DescribeCollectionRequest) returns (milvus.DescribeCollectionResponse) {}
|
|
rpc DescribeCollectionInternal(milvus.DescribeCollectionRequest) returns (milvus.DescribeCollectionResponse) {}
|
|
|
|
rpc CreateAlias(milvus.CreateAliasRequest) returns (common.Status) {}
|
|
rpc DropAlias(milvus.DropAliasRequest) returns (common.Status) {}
|
|
rpc AlterAlias(milvus.AlterAliasRequest) returns (common.Status) {}
|
|
rpc DescribeAlias(milvus.DescribeAliasRequest) returns (milvus.DescribeAliasResponse) {}
|
|
rpc ListAliases(milvus.ListAliasesRequest) returns (milvus.ListAliasesResponse) {}
|
|
|
|
/**
|
|
* @brief This method is used to list all collections.
|
|
*
|
|
* @return StringListResponse, collection name list
|
|
*/
|
|
rpc ShowCollections(milvus.ShowCollectionsRequest) returns (milvus.ShowCollectionsResponse) {}
|
|
|
|
rpc ShowCollectionIDs(ShowCollectionIDsRequest) returns (ShowCollectionIDsResponse) {}
|
|
|
|
rpc AlterCollection(milvus.AlterCollectionRequest) returns (common.Status) {}
|
|
|
|
rpc AlterCollectionField(milvus.AlterCollectionFieldRequest) returns (common.Status) {}
|
|
/**
|
|
* @brief This method is used to create partition
|
|
*
|
|
* @return Status
|
|
*/
|
|
rpc CreatePartition(milvus.CreatePartitionRequest) returns (common.Status) {}
|
|
|
|
/**
|
|
* @brief This method is used to drop partition
|
|
*
|
|
* @return Status
|
|
*/
|
|
rpc DropPartition(milvus.DropPartitionRequest) returns (common.Status) {}
|
|
|
|
/**
|
|
* @brief This method is used to test partition existence.
|
|
*
|
|
* @return BoolResponse
|
|
*/
|
|
rpc HasPartition(milvus.HasPartitionRequest) returns (milvus.BoolResponse) {}
|
|
|
|
/**
|
|
* @brief This method is used to show partition information
|
|
*
|
|
* @param ShowPartitionRequest, target collection name.
|
|
*
|
|
* @return StringListResponse
|
|
*/
|
|
rpc ShowPartitions(milvus.ShowPartitionsRequest) returns (milvus.ShowPartitionsResponse) {}
|
|
rpc ShowPartitionsInternal(milvus.ShowPartitionsRequest) returns (milvus.ShowPartitionsResponse) {}
|
|
rpc ShowSegments(milvus.ShowSegmentsRequest) returns (milvus.ShowSegmentsResponse) {}
|
|
rpc GetPChannelInfo(GetPChannelInfoRequest) returns (GetPChannelInfoResponse) {}
|
|
|
|
rpc AllocTimestamp(AllocTimestampRequest) returns (AllocTimestampResponse) {}
|
|
rpc AllocID(AllocIDRequest) returns (AllocIDResponse) {}
|
|
rpc UpdateChannelTimeTick(internal.ChannelTimeTickMsg) returns (common.Status) {}
|
|
rpc InvalidateCollectionMetaCache(proxy.InvalidateCollMetaCacheRequest) returns (common.Status) {}
|
|
|
|
rpc ShowConfigurations(internal.ShowConfigurationsRequest) returns (internal.ShowConfigurationsResponse){}
|
|
// https://wiki.lfaidata.foundation/display/MIL/MEP+8+--+Add+metrics+for+proxy
|
|
rpc GetMetrics(milvus.GetMetricsRequest) returns (milvus.GetMetricsResponse) {}
|
|
|
|
// https://wiki.lfaidata.foundation/display/MIL/MEP+27+--+Support+Basic+Authentication
|
|
rpc CreateCredential(internal.CredentialInfo) returns (common.Status) {}
|
|
rpc UpdateCredential(internal.CredentialInfo) returns (common.Status) {}
|
|
rpc DeleteCredential(milvus.DeleteCredentialRequest) returns (common.Status) {}
|
|
rpc ListCredUsers(milvus.ListCredUsersRequest) returns (milvus.ListCredUsersResponse) {}
|
|
// userd by proxy, not exposed to sdk
|
|
rpc GetCredential(GetCredentialRequest) returns (GetCredentialResponse) {}
|
|
|
|
// https://wiki.lfaidata.foundation/display/MIL/MEP+29+--+Support+Role-Based+Access+Control
|
|
rpc CreateRole(milvus.CreateRoleRequest) returns (common.Status) {}
|
|
rpc DropRole(milvus.DropRoleRequest) returns (common.Status) {}
|
|
rpc OperateUserRole(milvus.OperateUserRoleRequest) returns (common.Status) {}
|
|
rpc SelectRole(milvus.SelectRoleRequest) returns (milvus.SelectRoleResponse) {}
|
|
rpc SelectUser(milvus.SelectUserRequest) returns (milvus.SelectUserResponse) {}
|
|
rpc OperatePrivilege(milvus.OperatePrivilegeRequest) returns (common.Status) {}
|
|
rpc SelectGrant(milvus.SelectGrantRequest) returns (milvus.SelectGrantResponse) {}
|
|
rpc ListPolicy(internal.ListPolicyRequest) returns (internal.ListPolicyResponse) {}
|
|
rpc BackupRBAC(milvus.BackupRBACMetaRequest) returns (milvus.BackupRBACMetaResponse){}
|
|
rpc RestoreRBAC(milvus.RestoreRBACMetaRequest) returns (common.Status){}
|
|
rpc CreatePrivilegeGroup(milvus.CreatePrivilegeGroupRequest) returns (common.Status) {}
|
|
rpc DropPrivilegeGroup(milvus.DropPrivilegeGroupRequest) returns (common.Status) {}
|
|
rpc ListPrivilegeGroups(milvus.ListPrivilegeGroupsRequest) returns (milvus.ListPrivilegeGroupsResponse) {}
|
|
rpc OperatePrivilegeGroup(milvus.OperatePrivilegeGroupRequest) returns (common.Status) {}
|
|
|
|
rpc CheckHealth(milvus.CheckHealthRequest) returns (milvus.CheckHealthResponse) {}
|
|
|
|
rpc RenameCollection(milvus.RenameCollectionRequest) returns (common.Status) {}
|
|
|
|
rpc CreateDatabase(milvus.CreateDatabaseRequest) returns (common.Status) {}
|
|
rpc DropDatabase(milvus.DropDatabaseRequest) returns (common.Status) {}
|
|
rpc ListDatabases(milvus.ListDatabasesRequest) returns (milvus.ListDatabasesResponse) {}
|
|
rpc DescribeDatabase(DescribeDatabaseRequest) returns(DescribeDatabaseResponse){}
|
|
rpc AlterDatabase(AlterDatabaseRequest) returns(common.Status){}
|
|
}
|
|
|
|
message AllocTimestampRequest {
|
|
common.MsgBase base = 1;
|
|
uint32 count = 3;
|
|
uint64 blockTimestamp = 4;
|
|
}
|
|
|
|
message AllocTimestampResponse {
|
|
common.Status status = 1;
|
|
uint64 timestamp = 2;
|
|
uint32 count = 3;
|
|
}
|
|
|
|
message AllocIDRequest {
|
|
common.MsgBase base = 1;
|
|
uint32 count = 2;
|
|
}
|
|
|
|
message AllocIDResponse {
|
|
common.Status status = 1;
|
|
int64 ID = 2;
|
|
uint32 count = 3;
|
|
}
|
|
|
|
// TODO: find a proper place for these segment-related messages.
|
|
|
|
message DescribeSegmentsRequest {
|
|
common.MsgBase base = 1;
|
|
int64 collectionID = 2;
|
|
repeated int64 segmentIDs = 3;
|
|
}
|
|
|
|
message SegmentBaseInfo {
|
|
int64 collectionID = 1; // in which collection.
|
|
int64 partitionID = 2; // in which partition.
|
|
int64 segmentID = 3;
|
|
}
|
|
|
|
message SegmentInfos {
|
|
SegmentBaseInfo base_info = 1; // base information.
|
|
repeated etcd.SegmentIndexInfo index_infos = 2; // multiple index infos.
|
|
map<int64, etcd.IndexInfo> extra_index_infos = 3; // index_id -> IndexInfo{index_name, index_id, index_params}
|
|
}
|
|
|
|
message DescribeSegmentsResponse {
|
|
common.Status status = 1;
|
|
int64 collectionID = 2;
|
|
map<int64, SegmentInfos> segment_infos = 3; // segment_id -> segment infos
|
|
}
|
|
|
|
message GetCredentialRequest {
|
|
// Not useful for now
|
|
common.MsgBase base = 1;
|
|
// username
|
|
string username = 2;
|
|
}
|
|
|
|
message GetCredentialResponse {
|
|
// Contain error_code and reason
|
|
common.Status status = 1;
|
|
// username
|
|
string username = 2;
|
|
// password stored in etcd/mysql
|
|
string password = 3;
|
|
}
|
|
|
|
message DescribeDatabaseRequest {
|
|
common.MsgBase base = 1;
|
|
string db_name = 2;
|
|
}
|
|
|
|
message DescribeDatabaseResponse {
|
|
common.Status status = 1;
|
|
string db_name = 2;
|
|
int64 dbID = 3;
|
|
uint64 created_timestamp = 4;
|
|
repeated common.KeyValuePair properties = 5;
|
|
}
|
|
|
|
message AlterDatabaseRequest {
|
|
common.MsgBase base = 1;
|
|
string db_name = 2;
|
|
string db_id = 3;
|
|
repeated common.KeyValuePair properties = 4;
|
|
repeated string delete_keys = 5;
|
|
}
|
|
|
|
message GetPChannelInfoRequest {
|
|
common.MsgBase base = 1;
|
|
string pchannel = 2;
|
|
}
|
|
|
|
message GetPChannelInfoResponse {
|
|
common.Status status = 1;
|
|
repeated CollectionInfoOnPChannel collections = 2;
|
|
}
|
|
|
|
message CollectionInfoOnPChannel {
|
|
int64 collection_id = 1;
|
|
repeated PartitionInfoOnPChannel partitions = 2;
|
|
string vchannel = 3;
|
|
}
|
|
|
|
message PartitionInfoOnPChannel {
|
|
int64 partition_id = 1;
|
|
}
|
|
|
|
message ShowCollectionIDsRequest {
|
|
common.MsgBase base = 1;
|
|
repeated string db_names = 2;
|
|
bool allowUnavailable = 3;
|
|
}
|
|
|
|
message DBCollections {
|
|
string db_name = 1;
|
|
repeated int64 collectionIDs = 2;
|
|
}
|
|
|
|
message ShowCollectionIDsResponse {
|
|
common.Status status = 1;
|
|
repeated DBCollections db_collections = 2;
|
|
}
|