6d70520e79
- 新增后端模块:Alert、APIAsset、Compliance、Lineage、Masking、Risk、SchemaChange、Unstructured、Watermark - 新增前端模块页面与API接口 - 新增Alembic迁移脚本(002-014)覆盖全量业务表 - 新增测试数据生成脚本与集成测试脚本 - 修复metadata模型JSON类型导入缺失导致启动失败的问题 - 修复前端Alert/APIAsset页面request模块路径错误 - 更新docker-compose与开发计划文档
7.8 KiB
7.8 KiB
DataPointer 开发计划书
版本:v1.0 | 日期:2026-04-23
一、现状评估
| 模块 | 当前状态 | 关键债务/缺口 |
|---|---|---|
| 数据源管理 | MySQL/PG/Oracle/SQLServer + 达梦(mock) | 达梦未真实支持;密码加密密钥运行时随机生成,重启后无法解密 |
| 元数据采集 | 库/表/字段基础采集 | 全量扫描,缺少增量与 Schema 变更追踪 |
| 分类引擎 | 正则/关键词/枚举规则 | scikit-learn 已引入但未使用;Celery 任务为 placeholder |
| 项目管理 | 创建/分配/打标/发布 | 无 ML 辅助推荐 |
| 报告 | Word 导出 | 无 Excel/PDF;无风险摘要 |
| 安全能力 | 无 | 无脱敏、无水印 |
| 风险管理 | 无 | 无量化评分、无合规对标 |
| 非结构化 | 模型已建(UnstructuredFile) | 功能未实现 |
二、整体里程碑
第一阶段(核心引擎加固 + 智能化) 4 周
第二阶段(安全能力补齐 + 体验升级) 5 周
第三阶段(风险管理 + 合规 + 血缘) 6 周
------------------------------------------------------------------------
合计 15 周 约 3.5 个月
三、第一阶段:核心引擎加固与智能化(4 周)
T1.1 修复数据源密码加密(P0)
- 方案:config.py 新增 DB_ENCRYPTION_KEY,读取环境变量;datasource_service.py 改用该密钥;提供 Alembic 迁移脚本处理历史数据。
- 验收:重启后历史数据源仍可正常连接;密钥外部注入。
- 工时:2d
T1.2 Celery 异步分类落地(P0)
- 方案:将 run_auto_classification 逻辑迁入 Celery Task;Project 增加 scan_progress 字段;后端提供 progress 轮询接口;前端增加进度条与后台执行开关。
- 验收:万级字段分类 HTTP 不阻塞;前端实时显示进度。
- 工时:4d
T1.3 ML 辅助分类原型(P1)
- 方案:新增 MLModelVersion 模型;对字段 name/comment/sample_data 做 TF-IDF;用 LogisticRegression/RandomForest 训练;提供 ml-suggest 接口与前端一键采纳;训练任务封装为 Celery Task。
- 验收:测试集 Top-1 准确率 >= 70%;前端展示推荐标签与置信度。
- 工时:8d
T1.4 语义相似度规则(P1)
- 方案:新增 similarity 规则类型;用 TfidfVectorizer + cosine_similarity 计算字段名/注释与基准词相似度;阈值默认 0.75。
- 验收:mobile_no / cell_phone / contact_tel 可被同一条规则命中。
- 工时:3d
T1.5 增量元数据采集(P1)
- 方案:meta 表增加 last_scanned_at 与 checksum;采集时对比 information_schema 仅同步变更;删除对象做软删除保留历史。
- 验收:重复采集未变更表不写库;源库新增表仅增量写入。
- 工时:4d
四、第二阶段:安全能力补齐与体验升级(5 周)
T2.1 数据静态脱敏(P1)
- 方案:新增 MaskingRule 模型,支持 mask/truncate/hash/generalize/replace;脱敏预览与导出 API;前端策略配置与左右对比预览页。
- 验收:身份证号/手机号按规则掩码导出;支持批量策略应用。
- 工时:8d
T2.2 数据水印溯源(P2)
- 方案:文本水印采用零宽空格嵌入用户 ID;WatermarkLog 记录导出信息;溯源 API 提取水印追溯到用户。
- 验收:导出 CSV 可复制后成功溯源到用户;不影响可读性。
- 工时:5d
T2.3 Excel + PDF 报告(P1)
- 方案:Excel 用 openpyxl 带条件格式与图表;PDF 采用前端 html2canvas + jspdf 方案,减少后端依赖。
- 验收:支持 Word/Excel/PDF 三种导出;PDF 含统计图与 Top20 敏感清单。
- 工时:4d
T2.4 达梦真实驱动(P2)
- 方案:优先 dmPython,fallback 用 jaydebeapi + JDBC;更新元数据采集适配达梦系统表。
- 验收:可连接达梦并采集库表字段元数据。
- 工时:4d
T2.5 非结构化文件识别(P2)
- 方案:激活 UnstructuredFile;文件存 MinIO;用 python-docx/openpyxl/pdfplumber 解析文本;送入规则引擎识别敏感信息。
- 验收:Word/Excel 中的身份证号/手机号可被识别并建议 L4。
- 工时:6d
T2.6 Schema 变更追踪(P2)
- 方案:新增 SchemaChangeLog 模型;增量采集时自动比对生成变更记录;前端数据源详情页展示变更历史。
- 验收:源库新增敏感字段后平台生成变更记录并标红告警。
- 工时:4d
五、第三阶段:风险管理与合规(6 周)
T3.1 风险评分模型(P1)
- 方案:RiskScore = sum(Li * exposure * (1 - protection_rate));新增 RiskAssessment 模型四级聚合;Celery Beat 每日重算;Dashboard 增加风险趋势与排行。
- 验收:项目生成 0-100 风险分;未脱敏敏感字段增加时分数上升。
- 工时:7d
T3.2 合规检查引擎(P1)
- 方案:内置等保/PIPL/GDPR 检查规则;ComplianceChecker 可插拔基类;新增 ComplianceScan/ComplianceIssue;前端规则库与问题清单。
- 验收:自动扫描出 L5 未脱敏等不合规项;可导出合规差距分析。
- 工时:7d
T3.3 数据血缘分析(P2)
- 方案:引入 sqlparse 解析 SQL;新增 DataLineage 模型;前端 ECharts 关系图展示表级血缘,支持 3 层展开。
- 验收:典型 ETL SQL 可正确构建血缘链。
- 工时:8d
T3.4 风险告警与工单(P1)
- 方案:AlertRule 模型配置触发条件;AlertRecord 记录告警;WorkOrder 简易工单流转(open -> in_progress -> resolved);站内消息中心。
- 验收:新增 5 个 L5 字段自动生成告警并转工单指派。
- 工时:6d
T3.5 API 资产扫描(P2)
- 方案:新增 ApiAsset 模型;上传 Swagger/OpenAPI 解析参数与响应 schema;规则引擎标记敏感接口。
- 验收:上传含 phone/idCard 的 Swagger 后标记为暴露 L4 数据。
- 工时:5d
T3.6 暗黑模式与性能优化(P2)
- 方案:Element Plus 动态主题 + Pinia 持久化;大表格虚拟滚动;路由懒加载。
- 验收:一键切换暗黑/明亮无闪烁;5 万字段页面滚动 >= 30fps。
- 工时:4d
六、任务总览
| 编号 | 任务 | 阶段 | 优先级 | 工时 | 依赖 |
|---|---|---|---|---|---|
| T1.1 | 修复密码加密密钥管理 | P1 | P0 | 2d | 无 |
| T1.2 | Celery 异步分类落地 | P1 | P0 | 4d | T1.1 |
| T1.3 | ML 辅助分类原型 | P1 | P1 | 8d | T1.2 |
| T1.4 | 语义相似度规则 | P1 | P1 | 3d | 无 |
| T1.5 | 增量元数据采集 | P1 | P1 | 4d | 无 |
| T2.1 | 数据静态脱敏 | P2 | P1 | 8d | T1.5 |
| T2.2 | 数据水印溯源 | P2 | P2 | 5d | T2.1 |
| T2.3 | Excel + PDF 报告 | P2 | P1 | 4d | 无 |
| T2.4 | 达梦真实驱动 | P2 | P2 | 4d | 无 |
| T2.5 | 非结构化文件识别 | P2 | P2 | 6d | T1.2 |
| T2.6 | Schema 变更追踪 | P2 | P2 | 4d | T1.5 |
| T3.1 | 风险评分模型 | P3 | P1 | 7d | T2.1, T2.6 |
| T3.2 | 合规检查引擎 | P3 | P1 | 7d | T3.1 |
| T3.3 | 数据血缘分析 | P3 | P2 | 8d | 无 |
| T3.4 | 风险告警与工单 | P3 | P1 | 6d | T3.1, T3.2 |
| T3.5 | API 资产扫描 | P3 | P2 | 5d | T1.4 |
| T3.6 | 暗黑模式与性能优化 | P3 | P2 | 4d | 无 |
总计约 89 人天(单人约 3.5 个月;双人并行可压缩至 2 个月)
七、确认事项
- 三阶段范围:是否全部 17 项任务均需开发?有无可削减项?
- 达梦环境:是否有真实达梦环境联调?若无,是否接受 jaydebeapi 桥接方案?
- ML 训练数据:当前人工标注字段大约多少?若不足,是否构造模拟数据?
- 启动顺序:是否从 T1.1 开始依次执行,还是允许阶段间少量并行?