Milvus 数据刷新管道文档索引
📚 文档列表
本文档系列详细介绍了 Milvus DataNode 中数据刷新(Flush)管道的核心组件和机制。
主文档
- 总览文档
- 系统架构总览
- 组件关系图
- 数据流程图
- 关键概念介绍
组件文档
-
fgManagerImpl的设计与职责- FlowGraph 生命周期管理
- 多通道并发管理
-
- DataSyncService 架构
- FlowGraph 组装流程
- 节点初始化与启动
-
ddNode的消息过滤机制- DDL 消息处理
- 消息类型(MsgType)赋值流程
-
bufferManager的设计与实现- 内存管理与驱逐策略
- 通道注册与生命周期
-
WriteBuffer接口与基础实现l0WriteBuffer特殊设计- 段缓冲(segmentBuffer)管理
-
SyncManager异步同步机制SyncTask执行流程- 数据持久化与元数据更新
-
ttNode的检查点更新机制ChannelCheckpointUpdater异步更新- 检查点失败处理
-
- Flush 操作的全链路影响
- Checkpoint 更新流程
flushTs的作用与重置条件- 数据一致性保障
🔗 文档关系图
1 | flush_pipeline_overview.md (总览) |
📖 阅读建议
新手入门路径
- 总览文档 → 了解整体架构
- FlowGraph 管理器 → 理解多通道管理
- DataSyncService → 理解单通道服务
- DD Node → 理解消息过滤
- WriteBuffer 管理器 → 理解数据缓冲
- WriteBuffer 实现 → 理解缓冲细节
- SyncManager → 理解数据同步
- TT Node → 理解检查点更新
- Flush 与 Checkpoint → 理解完整流程
专题深入路径
消息处理流程
- DD Node → WriteBuffer → SyncManager
数据刷新流程
- WriteBuffer 管理器 → WriteBuffer 实现 → SyncManager → Flush 与 Checkpoint
检查点机制
- TT Node → Flush 与 Checkpoint
🎯 关键概念速查
核心组件
- fgManagerImpl: 管理多个 DataSyncService
- DataSyncService: 控制单个通道的 FlowGraph
- ddNode: 消息过滤和 DDL 处理
- WriteBufferManager: 管理多个 WriteBuffer
- WriteBuffer: 管理单个通道的数据缓冲
- SyncManager: 异步数据同步管理器
- SyncTask: 数据同步任务单元
- ttNode: 检查点更新节点
- ChannelCheckpointUpdater: 异步检查点更新器
关键机制
- Flush: 数据刷新操作,将内存数据持久化
- Checkpoint: 数据消费位置,用于故障恢复
- flushTs: 刷新目标时间戳
- SyncPolicy: 同步策略,决定何时同步数据
- MetaCache: 本地段元数据缓存
📝 相关代码路径
- FlowGraph 管理:
internal/flushcommon/pipeline/flow_graph_manager.go - DataSyncService:
internal/flushcommon/pipeline/data_sync_service.go - DD Node:
internal/flushcommon/pipeline/flow_graph_dd_node.go - WriteBuffer 管理器:
internal/flushcommon/writebuffer/manager.go - WriteBuffer 实现:
internal/flushcommon/writebuffer/write_buffer.go - L0 WriteBuffer:
internal/flushcommon/writebuffer/l0_write_buffer.go - SyncManager:
internal/flushcommon/syncmgr/sync_manager.go - SyncTask:
internal/flushcommon/syncmgr/task.go - TT Node:
internal/flushcommon/pipeline/flow_graph_time_tick_node.go - CheckpointUpdater:
internal/flushcommon/util/checkpoint_updater.go
🔍 快速查找
按功能查找
- 消息过滤: DD Node
- 数据缓冲: WriteBuffer 管理器, WriteBuffer 实现
- 数据同步: SyncManager
- 检查点更新: TT Node
- 刷新机制: Flush 与 Checkpoint
按组件查找
- 管理器层: FlowGraph 管理器, WriteBuffer 管理器
- 服务层: DataSyncService
- 节点层: DD Node, TT Node
- 缓冲层: WriteBuffer 实现
- 同步层: SyncManager
开始阅读: 从 总览文档 开始您的学习之旅!