mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
1.9 KiB
1.9 KiB
8. Index Service
8.1 Overview
8.2 Index Service Interface
type IndexService interface {
Service
RegisterNode(RegisterNodeRequest) (RegisterNodeResponse, error)
BuildIndex(BuildIndexRequest) (BuildIndexResponse, error)
GetIndexStates(IndexStatesRequest) (IndexStatesResponse, error)
GetIndexFilePaths(IndexFilePathRequest) (IndexFilePathsResponse, error)
GetTimeTickChannel() (StringResponse, error)
GetStatisticsChannel() (StringResponse, error)
NotifyTaskState(TaskStateNotification) error
}
- RegisterNode
type RegisterNodeRequest struct {
MsgBase
Address string
Port int64
}
type RegisterNodeResponse struct {
//InitParams
}
- BuildIndex
type BuildIndexRequest struct {
DataPaths []string
TypeParams map[string]string
IndexParams map[string]string
}
type BuildIndexResponse struct {
IndexID UniqueID
}
type BuildIndexCmd struct {
IndexID UniqueID
Req BuildIndexRequest
}
type TaskStateNotification struct {
IndexID UniqueID
IndexState IndexState
IndexFilePaths []string
FailReason string
}
- GetIndexStates
type IndexStatesRequest struct {
IndexID UniqueID
}
enum IndexState {
NONE = 0;
UNISSUED = 1;
INPROGRESS = 2;
FINISHED = 3;
}
type IndexStatesResponse struct {
ID UniqueID
State IndexState
//EnqueueTime time.Time
//ScheduleTime time.Time
//BuildCompleteTime time.Time
}
- GetIndexFilePaths
type IndexFilePathRequest struct {
IndexID UniqueID
}
type IndexFilePathsResponse struct {
FilePaths []string
}
8.3 Index Node Interface
type IndexNode interface {
Service
// SetTimeTickChannel(channelName string) error
// SetStatsChannel(channelName string) error
BuildIndex(req BuildIndexCmd) error
}