milvus | 第 12 章:Streaming/WAL 系统二:StreamingCoord、Broadcaster 与 StreamingNode
本章目标读完本章,你应该能够回答下面几个问题:StreamingCoord 为什么要管理 PChannel 到 StreamingNode 的分配。PChannel 的UNINITIALIZED - ASSIGNING - ASSIGNED - UNAVAILABLE状态机如何落到源码中。为什么 PChannel 分配要分成AssignPChannels和AssignPChannelsDone两个阶段。StreamingClient 如何根据 assignment 把 append/read 路由到正确的 StreamingNode。本地 WAL 和远程 WAL 分别在什么情况下被使用。Broadcaster 如何让 DDL/DCL 跨多个 PChannel 写入,并用 ResourceKey 避免冲突。BroadcastTask 为什么需要 ACK、ACK callback、Tombstone 和 GC。StreamingNode 收到 PChannel assignment 后,如何打开 WAL、恢复状态并注册本地 WAL。WAL interceptor chain 中redo、lock、replicate、timetick、sh