dijiekstra commented on issue #18626:
URL:
https://github.com/apache/dolphinscheduler/issues/18626#issuecomment-5615156029
## 📅 建议的实现时间表
### Phase 1 - MVP (2~3周)
**目标**: 完成Paimon单资产快照驱动的最小闭环
**第1周**
- Day 1-2: 数据库表设计和migration脚本
- Day 3-5: DependencyResolverService核心实现(仅snapshot判定)
- Day 5-10: ASSET_SENSOR任务插件 + AssetSensorTracker
**第2周**
- Day 1-3: Paimon AssetEventScanner实现
- Day 4-5: Master集成(TaskProcessor检查 + 配置)
- Day 5-10: 单元测试和集成测试
**第3周**
- Day 1-3: 端到端测试(GMV场景)
- Day 4-5: 性能优化和bug修复
- Day 6-10: 文档和示例准备
### Phase 2 - 扩展 (3~4周)
**目标**: 支持多资产AND/OR、Watermark/Quality/Schema条件、补偿机制
**第1周**
- 多资产AND/OR依赖(DependencyResolver改进)
- Watermark/Quality/Schema条件判定
- 工作流级ASSET_EVENT_TRIGGER设计
**第2周**
- CompensationScanner补偿逻辑
- Push事件接收端点
- 相关DAO和Service实现
**第3周**
- 测试(特别是乱序、高并发场景)
- 文档更新
**第4周**
- 性能测试和调优
- 社区反馈处理
### Phase 3 - 生态 (按需)
**目标**: 完整的lakehouse支持和用户体验
- Iceberg/Hudi事件源
- UI资产大盘和依赖可视化
- 告警规则和可观测性
- 性能优化(缓存、批量等)
---
## 👥 建议的团队分工
### 数据库与DAO层 (1人, 0.5周)
- 6张表DDL设计
- Migration脚本
- DAO接口和实现
### 核心Service层 (2人, 2周)
- DependencyResolverService
- AssetStateService / AssetEventService
- DependencyResolver业务逻辑
### 任务插件 (1人, 1周)
- ASSET_SENSOR任务类型
- AssetSensorTracker实现
- 与Master集成
### 事件源 (1人, 1周)
- AssetEventScanner (Paimon轮询)
- 事件处理Pipeline
- 断点续扫
### Master集成 (1人, 0.5周)
- TaskProcessor改动
- CommandType扩展(可选)
- 配置体系
### 测试与文档 (1人, 1.5周)
- 单元测试覆盖
- 集成测试脚本
- 用户文档和示例
---
## 💼 工作量估算
| 模块 | 工作量 | 复杂度 | 依赖 |
|-----|--------|--------|------|
| 数据库 | 0.5周 | 低 | 无 |
| DependencyResolverService | 1.5周 | 中 | 数据库 |
| ASSET_SENSOR插件 | 1周 | 中 | DependencyResolver |
| AssetEventScanner | 1周 | 中 | 数据库 |
| Master集成 | 0.5周 | 低 | ASSET_SENSOR |
| 测试 & 文档 | 1.5周 | 低 | 所有模块 |
| **总计** | **5.5周** | - | - |
**3人团队预估**: 4~5周完成MVP
**2人团队预估**: 6~7周完成MVP
---
## 🎯 MVP成功标准
- ✅ 6张表正确设计、migration脚本可执行
- ✅ DependencyResolver能正确判定单资产snapshot依赖
- ✅ ASSET_SENSOR任务能被创建、执行、释放
- ✅ Paimon快照推进能被感知、事件能被采集
- ✅ 端到端流程:快照推进 → 任务释放 → DAG执行 完整工作
- ✅ 多Master并发场景下的幂等性得到验证
- ✅ 完整的单元测试覆盖(幂等、去重、乱序、AND/OR)
- ✅ 文档清晰,示例可运行
---
## 🔗 相关PR预期列表
MVP阶段预期的PR清单:
1. **Infrastructure** (数据库)
- PR: Add t_ds_asset* tables and migration scripts
2. **Core Service** (核心逻辑)
- PR: Implement DependencyResolverService
- PR: Implement AssetStateService and related DAOs
3. **Task Plugin** (任务类型)
- PR: Add ASSET_SENSOR task plugin
4. **Event Source** (事件采集)
- PR: Implement AssetEventScanner for Paimon
5. **Master Integration** (调度引擎改造)
- PR: Integrate asset-event triggering into Master
6. **Testing & Docs** (测试文档)
- PR: Add unit/integration tests for asset-event scheduling
- PR: Add user guide and examples
---
## ⚡ 快速启动建议
**如果立即启动,建议的第一步:**
1. 社区确认paradigm shift(纯snapshot模型)的适用范围
2. 确认MVP的工作量预估是否可接受
3. 开始并行工作:
- 数据库设计最终确认
- DependencyResolver接口契约讨论
- ASSET_SENSOR任务类型的API设计
4. 第一周内完成:
- 数据库DDL和migration脚本
- DependencyResolver接口和单元测试框架
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]