mirror of
https://gitee.com/milvus-io/milvus.git
synced 2024-11-29 18:38:44 +08:00
Update doc: service api
Signed-off-by: GuoRentong <rentong.guo@zilliz.com>
This commit is contained in:
parent
03b5d32569
commit
c82565bd5c
@ -70,111 +70,6 @@ etcd:
|
||||
|
||||
|
||||
|
||||
#### A.3 Message Stream
|
||||
|
||||
``` go
|
||||
type MsgType uint32
|
||||
const {
|
||||
kInsert MsgType = 400
|
||||
kDelete MsgType = 401
|
||||
kSearch MsgType = 500
|
||||
KSearchResult MsgType = 1000
|
||||
|
||||
kSegStatistics MsgType = 1100
|
||||
|
||||
kTimeTick MsgType = 1200
|
||||
kTimeSync MsgType = 1201
|
||||
}
|
||||
|
||||
type TsMsg interface {
|
||||
SetTs(ts Timestamp)
|
||||
BeginTs() Timestamp
|
||||
EndTs() Timestamp
|
||||
Type() MsgType
|
||||
Marshal(*TsMsg) []byte
|
||||
Unmarshal([]byte) *TsMsg
|
||||
}
|
||||
|
||||
type MsgPack struct {
|
||||
BeginTs Timestamp
|
||||
EndTs Timestamp
|
||||
Msgs []TsMsg
|
||||
}
|
||||
|
||||
|
||||
type MsgStream interface {
|
||||
Produce(*MsgPack) error
|
||||
Broadcast(*MsgPack) error
|
||||
Consume() *MsgPack // message can be consumed exactly once
|
||||
}
|
||||
|
||||
type RepackFunc(msgs []* TsMsg, hashKeys [][]int32) map[int32] *MsgPack
|
||||
|
||||
type PulsarMsgStream struct {
|
||||
client *pulsar.Client
|
||||
repackFunc RepackFunc
|
||||
producers []*pulsar.Producer
|
||||
consumers []*pulsar.Consumer
|
||||
unmarshal *UnmarshalDispatcher
|
||||
}
|
||||
|
||||
func (ms *PulsarMsgStream) CreatePulsarProducers(topics []string)
|
||||
func (ms *PulsarMsgStream) CreatePulsarConsumers(subname string, topics []string, unmarshal *UnmarshalDispatcher)
|
||||
func (ms *PulsarMsgStream) SetRepackFunc(repackFunc RepackFunc)
|
||||
func (ms *PulsarMsgStream) Produce(msgs *MsgPack) error
|
||||
func (ms *PulsarMsgStream) Broadcast(msgs *MsgPack) error
|
||||
func (ms *PulsarMsgStream) Consume() (*MsgPack, error)
|
||||
func (ms *PulsarMsgStream) Start() error
|
||||
func (ms *PulsarMsgStream) Close() error
|
||||
|
||||
func NewPulsarMsgStream(ctx context.Context, pulsarAddr string) *PulsarMsgStream
|
||||
|
||||
|
||||
type PulsarTtMsgStream struct {
|
||||
client *pulsar.Client
|
||||
repackFunc RepackFunc
|
||||
producers []*pulsar.Producer
|
||||
consumers []*pulsar.Consumer
|
||||
unmarshal *UnmarshalDispatcher
|
||||
inputBuf []*TsMsg
|
||||
unsolvedBuf []*TsMsg
|
||||
msgPacks []*MsgPack
|
||||
}
|
||||
|
||||
func (ms *PulsarTtMsgStream) CreatePulsarProducers(topics []string)
|
||||
func (ms *PulsarTtMsgStream) CreatePulsarConsumers(subname string, topics []string, unmarshal *UnmarshalDispatcher)
|
||||
func (ms *PulsarTtMsgStream) SetRepackFunc(repackFunc RepackFunc)
|
||||
func (ms *PulsarTtMsgStream) Produce(msgs *MsgPack) error
|
||||
func (ms *PulsarTtMsgStream) Broadcast(msgs *MsgPack) error
|
||||
func (ms *PulsarTtMsgStream) Consume() *MsgPack //return messages in one time tick
|
||||
func (ms *PulsarTtMsgStream) Start() error
|
||||
func (ms *PulsarTtMsgStream) Close() error
|
||||
|
||||
func NewPulsarTtMsgStream(ctx context.Context, pulsarAddr string) *PulsarTtMsgStream
|
||||
```
|
||||
|
||||
|
||||
|
||||
```go
|
||||
type MarshalFunc func(*TsMsg) []byte
|
||||
type UnmarshalFunc func([]byte) *TsMsg
|
||||
|
||||
|
||||
type UnmarshalDispatcher struct {
|
||||
tempMap map[ReqType]UnmarshalFunc
|
||||
}
|
||||
|
||||
func (dispatcher *MarshalDispatcher) Unmarshal([]byte) *TsMsg
|
||||
func (dispatcher *MarshalDispatcher) AddMsgTemplate(msgType MsgType, marshal MarshalFunc)
|
||||
func (dispatcher *MarshalDispatcher) addDefaultMsgTemplates()
|
||||
|
||||
func NewUnmarshalDispatcher() *UnmarshalDispatcher
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### A.4 Time Ticked Flow Graph
|
||||
|
||||
###### A.4.1 Flow Graph States
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
#### 8.1 Overview
|
||||
|
||||
|
||||
<img src="./figs/index_service.jpeg" width=700>
|
||||
|
||||
#### 8.2 API
|
||||
|
||||
|
@ -18,8 +18,6 @@ type Client interface {
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
* *CreateChannels*
|
||||
|
||||
```go
|
||||
@ -50,3 +48,109 @@ type ChannelDescriptions struct {
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### A.3 Message Stream
|
||||
|
||||
``` go
|
||||
type MsgType uint32
|
||||
const {
|
||||
kInsert MsgType = 400
|
||||
kDelete MsgType = 401
|
||||
kSearch MsgType = 500
|
||||
KSearchResult MsgType = 1000
|
||||
|
||||
kSegStatistics MsgType = 1100
|
||||
|
||||
kTimeTick MsgType = 1200
|
||||
kTimeSync MsgType = 1201
|
||||
}
|
||||
|
||||
type TsMsg interface {
|
||||
SetTs(ts Timestamp)
|
||||
BeginTs() Timestamp
|
||||
EndTs() Timestamp
|
||||
Type() MsgType
|
||||
Marshal(*TsMsg) []byte
|
||||
Unmarshal([]byte) *TsMsg
|
||||
}
|
||||
|
||||
type MsgPack struct {
|
||||
BeginTs Timestamp
|
||||
EndTs Timestamp
|
||||
Msgs []TsMsg
|
||||
}
|
||||
|
||||
|
||||
type MsgStream interface {
|
||||
Produce(*MsgPack) error
|
||||
Broadcast(*MsgPack) error
|
||||
Consume() *MsgPack // message can be consumed exactly once
|
||||
}
|
||||
|
||||
type RepackFunc(msgs []* TsMsg, hashKeys [][]int32) map[int32] *MsgPack
|
||||
|
||||
type PulsarMsgStream struct {
|
||||
client *pulsar.Client
|
||||
repackFunc RepackFunc
|
||||
producers []*pulsar.Producer
|
||||
consumers []*pulsar.Consumer
|
||||
unmarshal *UnmarshalDispatcher
|
||||
}
|
||||
|
||||
func (ms *PulsarMsgStream) CreatePulsarProducers(topics []string)
|
||||
func (ms *PulsarMsgStream) CreatePulsarConsumers(subname string, topics []string, unmarshal *UnmarshalDispatcher)
|
||||
func (ms *PulsarMsgStream) SetRepackFunc(repackFunc RepackFunc)
|
||||
func (ms *PulsarMsgStream) Produce(msgs *MsgPack) error
|
||||
func (ms *PulsarMsgStream) Broadcast(msgs *MsgPack) error
|
||||
func (ms *PulsarMsgStream) Consume() (*MsgPack, error)
|
||||
func (ms *PulsarMsgStream) Start() error
|
||||
func (ms *PulsarMsgStream) Close() error
|
||||
|
||||
func NewPulsarMsgStream(ctx context.Context, pulsarAddr string) *PulsarMsgStream
|
||||
|
||||
|
||||
type PulsarTtMsgStream struct {
|
||||
client *pulsar.Client
|
||||
repackFunc RepackFunc
|
||||
producers []*pulsar.Producer
|
||||
consumers []*pulsar.Consumer
|
||||
unmarshal *UnmarshalDispatcher
|
||||
inputBuf []*TsMsg
|
||||
unsolvedBuf []*TsMsg
|
||||
msgPacks []*MsgPack
|
||||
}
|
||||
|
||||
func (ms *PulsarTtMsgStream) CreatePulsarProducers(topics []string)
|
||||
func (ms *PulsarTtMsgStream) CreatePulsarConsumers(subname string, topics []string, unmarshal *UnmarshalDispatcher)
|
||||
func (ms *PulsarTtMsgStream) SetRepackFunc(repackFunc RepackFunc)
|
||||
func (ms *PulsarTtMsgStream) Produce(msgs *MsgPack) error
|
||||
func (ms *PulsarTtMsgStream) Broadcast(msgs *MsgPack) error
|
||||
func (ms *PulsarTtMsgStream) Consume() *MsgPack //return messages in one time tick
|
||||
func (ms *PulsarTtMsgStream) Start() error
|
||||
func (ms *PulsarTtMsgStream) Close() error
|
||||
|
||||
func NewPulsarTtMsgStream(ctx context.Context, pulsarAddr string) *PulsarTtMsgStream
|
||||
```
|
||||
|
||||
|
||||
|
||||
```go
|
||||
type MarshalFunc func(*TsMsg) []byte
|
||||
type UnmarshalFunc func([]byte) *TsMsg
|
||||
|
||||
|
||||
type UnmarshalDispatcher struct {
|
||||
tempMap map[ReqType]UnmarshalFunc
|
||||
}
|
||||
|
||||
func (dispatcher *MarshalDispatcher) Unmarshal([]byte) *TsMsg
|
||||
func (dispatcher *MarshalDispatcher) AddMsgTemplate(msgType MsgType, marshal MarshalFunc)
|
||||
func (dispatcher *MarshalDispatcher) addDefaultMsgTemplates()
|
||||
|
||||
func NewUnmarshalDispatcher() *UnmarshalDispatcher
|
||||
```
|
||||
|
||||
|
||||
|
@ -2,6 +2,12 @@
|
||||
|
||||
## 6. Proxy
|
||||
|
||||
|
||||
|
||||
<img src="./figs/proxy.jpeg" width=700>
|
||||
|
||||
|
||||
|
||||
#### 6.0 Proxy Service API
|
||||
|
||||
```go
|
||||
@ -28,8 +34,6 @@ type Client interface {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### 6.1 Proxy Instance
|
||||
|
||||
```go
|
||||
|
@ -2,7 +2,8 @@
|
||||
|
||||
## 10. Master
|
||||
|
||||
,
|
||||
<img src="./figs/master.jpeg" width=700>
|
||||
|
||||
|
||||
#### 10.1 API
|
||||
|
||||
@ -28,8 +29,6 @@ type Client interface {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### 10.1 Interfaces (RPC)
|
||||
|
||||
| RPC | description |
|
||||
|
@ -6,6 +6,8 @@
|
||||
|
||||
#### 8.1 Overview
|
||||
|
||||
<img src="./figs/query_service.jpeg" width=700>
|
||||
|
||||
|
||||
|
||||
#### 8.2 API
|
||||
@ -120,6 +122,28 @@ type ReleasePartitionRequest struct {
|
||||
|
||||
|
||||
|
||||
#### 8.2 Query Node
|
||||
|
||||
```go
|
||||
type QueryNode interface {
|
||||
Start() error
|
||||
Close() error
|
||||
|
||||
AddQueryStream(requestStream MsgStream, resultStream MsgStream) error
|
||||
RemoveQueryStream(requestStreamID string) error
|
||||
WatchDmStreams(insertStreams MsgStream) error
|
||||
WatchDdStream(stream MsgStream) error
|
||||
SetTimeTickStream(stream MsgStream) error
|
||||
SetStatsStream(stream MsgStream) error
|
||||
|
||||
LoadSegments(DbID UniqueID, CollID UniqueID, PartitionID UniqueID, SegIDs []UniqueID, FieldIDs []int64) error
|
||||
ReleaseSegments(DbID UniqueID, CollID UniqueID, PartitionID UniqueID, SegIDs []UniqueID) error
|
||||
DescribeParition(DbID UniqueID, CollID UniqueID, PartitionID UniqueID) (PartitionDescription, error)
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### 8.2 Collection Replica
|
||||
|
@ -6,6 +6,7 @@
|
||||
|
||||
#### 8.1 Overview
|
||||
|
||||
<img src="./figs/data_service.jpeg" width=700>
|
||||
|
||||
|
||||
#### 8.2 API
|
||||
|
BIN
docs/developer_guides/figs/data_service.jpeg
Normal file
BIN
docs/developer_guides/figs/data_service.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 MiB |
BIN
docs/developer_guides/figs/index_service.jpeg
Normal file
BIN
docs/developer_guides/figs/index_service.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 MiB |
BIN
docs/developer_guides/figs/local_distributed_cloud.jpeg
Normal file
BIN
docs/developer_guides/figs/local_distributed_cloud.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 MiB |
BIN
docs/developer_guides/figs/master.jpeg
Normal file
BIN
docs/developer_guides/figs/master.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 MiB |
BIN
docs/developer_guides/figs/proxy.jpeg
Normal file
BIN
docs/developer_guides/figs/proxy.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 MiB |
BIN
docs/developer_guides/figs/query_service.jpeg
Normal file
BIN
docs/developer_guides/figs/query_service.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 MiB |
Loading…
Reference in New Issue
Block a user