# DataPointer 功能架构图 ## 一、总体功能架构图 ```mermaid flowchart TB %% 样式定义 classDef userLayer fill:#e1f5fe,stroke:#01579b,stroke-width:2px,color:#000 classDef appLayer fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px,color:#000 classDef securityLayer fill:#fff3e0,stroke:#ef6c00,stroke-width:2px,color:#000 classDef engineLayer fill:#f3e5f5,stroke:#6a1b9a,stroke-width:2px,color:#000 classDef dataLayer fill:#eceff1,stroke:#455a64,stroke-width:2px,color:#000 classDef infraLayer fill:#fce4ec,stroke:#c2185b,stroke-width:2px,color:#000 %% 用户层 subgraph L5["👤 用户层"] U1[数据安全管理员] U2[合规审计员] U3[分类打标员] U4[系统管理员] U5[业务分析师] end %% 展示层 subgraph L4["🖥️ 展示层"] V1[数据资产仪表盘] V2[分类分级工作台] V3[安全风险驾驶舱] V4[合规报告中心] V5[任务与工单看板] end %% 业务应用层 subgraph L3["📦 业务应用层"] direction TB subgraph M1["资产管理"] A1[数据源管理] A2[元数据目录] A3[Schema变更追踪] end subgraph M2["分类分级"] A4[分类项目管理] A5[标注任务中心] A6[规则模板管理] end subgraph M3["安全运营"] A7[告警规则] A8[工单流转] A9[API资产管理] end subgraph M4["报表中心"] A10[统计报表] A11[报告导出] A12[操作审计] end end %% 安全能力层 subgraph L2["🔒 安全能力层"] direction TB subgraph S1["数据保护"] B1[静态脱敏引擎] B2[数字水印溯源] end subgraph S2["风险合规"] B3[风险评分模型] B4[合规检查引擎] end subgraph S3["血缘追溯"] B5[SQL血缘解析] B6[血缘关系图谱] end end %% 核心引擎层 subgraph L1["⚙️ 核心引擎层"] direction TB subgraph E1["采集与识别"] C1[元数据采集引擎] C2[增量扫描引擎] C3[Schema比对引擎] end subgraph E2["智能分类"] C4[规则匹配引擎] C5[语义相似度引擎] C6[ML分类模型] end subgraph E3["文件解析"] C7[Word/Excel解析] C8[PDF文本提取] C9[非结构化识别] end end %% 数据源层 subgraph L0["🗄️ 数据源层"] D1[(PostgreSQL)] D2[(MySQL)] D3[(Oracle)] D4[(SQLServer)] D5[(达梦DM)] D6[MinIO对象存储] D7[Swagger/OpenAPI] end %% 基础设施层 subgraph INF["☁️ 基础设施层"] I1[(PostgreSQL 16)] I2[(Redis 7)] I3[MinIO] I4[Celery Worker] I5[Celery Beat] end %% 连接关系 U1 --> V1 & V3 U2 --> V4 U3 --> V2 & V5 U4 --> V1 & V4 & V5 U5 --> V1 & V2 V1 --> A1 & A2 & A10 V2 --> A4 & A5 & A6 V3 --> A7 & A8 & A10 V4 --> A11 & A12 V5 --> A5 & A8 A1 --> C1 A2 --> C1 & C2 A3 --> C3 A4 --> C4 & C5 & C6 A5 --> C4 A6 --> C4 & C5 A7 --> B3 & B4 A8 --> B3 A9 --> C9 A10 --> B3 & B4 A11 --> B1 & B2 B1 --> C1 B2 --> C7 & C8 B3 --> C4 & C6 B4 --> C4 & C6 B5 --> C1 B6 --> B5 C1 --> D1 & D2 & D3 & D4 & D5 C7 --> D6 C8 --> D6 C9 --> D6 & D7 C1 --> I1 C2 --> I2 C4 --> I4 C6 --> I4 B3 --> I5 B4 --> I5 %% 样式应用 class U1,U2,U3,U4,U5 userLayer class V1,V2,V3,V4,V5 userLayer class A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12 appLayer class B1,B2,B3,B4,B5,B6 securityLayer class C1,C2,C3,C4,C5,C6,C7,C8,C9 engineLayer class D1,D2,D3,D4,D5,D6,D7 dataLayer class I1,I2,I3,I4,I5 infraLayer ``` --- ## 二、数据流向架构图 ```mermaid flowchart LR subgraph 输入["📥 数据输入"] IN1[关系型数据库] IN2[非结构化文件] IN3[API文档] IN4[SQL脚本] end subgraph 处理["🔧 核心处理"] P1[元数据采集] P2[规则/ML分类] P3[风险评分] P4[合规扫描] end subgraph 存储["💾 数据存储"] S1[(PostgreSQL
业务数据)] S2[(Redis
缓存/队列)] S3[MinIO
文件存储] end subgraph 输出["📤 数据输出"] OUT1[分类结果库] OUT2[风险评分报告] OUT3[合规差距分析] OUT4[血缘关系图] OUT5[脱敏/水印数据] end IN1 --> P1 --> S1 IN2 --> P2 --> S3 IN3 --> P2 --> S1 IN4 --> P4 --> S1 S1 --> P2 --> OUT1 S1 --> P3 --> OUT2 S1 --> P4 --> OUT3 S1 --> P4 --> OUT4 S3 --> P4 --> OUT5 S2 -.-> P1 & P2 & P3 & P4 ``` --- ## 三、安全能力闭环图 ```mermaid flowchart TD A[数据发现] --> B[自动分类分级] B --> C[风险量化评估] C --> D{风险等级?} D -->|高风险| E[触发告警] D -->|中风险| F[生成工单] D -->|低风险| G[持续监控] E --> H[数据脱敏] F --> H H --> I[数字水印] I --> J[合规检查] J --> K{合规通过?} K -->|否| L[整改优化] L --> B K -->|是| M[报告导出] G --> N[Schema变更追踪] N --> C ``` --- ## 四、系统部署架构图 ```mermaid flowchart TB subgraph 外部用户["外部用户"] USER[浏览器/客户端] end subgraph 接入层["接入层"] NGINX[Nginx
反向代理/负载均衡] end subgraph 应用层["应用层"] FE[Vue3 前端
静态资源] BE1[FastAPI 实例1] BE2[FastAPI 实例2] WORKER1[Celery Worker 1] WORKER2[Celery Worker 2] BEAT[Celery Beat] FLOWER[Flower 监控] end subgraph 数据层["数据层"] PG[(PostgreSQL
主从集群)] REDIS[(Redis
Sentinel)] MINIO[MinIO
分布式对象存储] end USER --> NGINX NGINX --> FE NGINX --> BE1 & BE2 BE1 & BE2 --> PG & REDIS & MINIO BEAT --> REDIS WORKER1 & WORKER2 --> REDIS & PG & MINIO FLOWER --> REDIS ``` --- ## 五、核心业务流程图 ### 5.1 数据分类分级流程 ```mermaid sequenceDiagram actor 管理员 participant 前端 participant 后端API participant Celery participant 数据库 管理员->>前端: 创建分类项目 前端->>后端API: POST /projects 后端API->>数据库: 保存项目配置 数据库-->>后端API: 返回项目ID 后端API-->>前端: 创建成功 管理员->>前端: 启动自动分类 前端->>后端API: POST /auto-classify/{id} 后端API->>Celery: 投递异步任务 Celery-->>后端API: 任务ID 后端API-->>前端: 已开始 loop 进度轮询 前端->>后端API: GET /auto-classify-status 后端API-->>前端: 当前进度 end Celery->>数据库: 写入分类结果 Celery-->>后端API: 任务完成 管理员->>前端: 查看结果并人工复核 前端->>后端API: PUT /results/{id}/label 后端API->>数据库: 更新结果状态 ``` ### 5.2 风险告警与工单流程 ```mermaid sequenceDiagram participant 定时器 participant CeleryBeat participant 告警引擎 participant 数据库 actor 安全管理员 participant 工单系统 定时器->>CeleryBeat: 触发每日扫描 CeleryBeat->>告警引擎: 执行风险重算 告警引擎->>数据库: 查询敏感数据分布 告警引擎->>告警引擎: 比对阈值规则 alt 触发告警条件 告警引擎->>数据库: 写入告警记录 告警引擎-->>安全管理员: 站内消息通知 安全管理员->>工单系统: 一键转工单 工单系统->>数据库: 创建工单记录 工单系统-->>安全管理员: 指派处理人 else 未触发 告警引擎->>数据库: 更新风险评分 end 安全管理员->>工单系统: 处理完成 工单系统->>数据库: 更新工单状态 ``` --- *DataPointer 功能架构图 v1.0 | 由 DataPointer 项目组编制*