总体架构
系统架构
┌─────────────────────────────────────────────────────────────┐
│ 用户浏览器 │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
│ │ │
▼ ▼ ▼
┌───────────────────┐ ┌─────────────┐ ┌─────────────────┐
│ 前端应用 │ │ Portal MCP │ │ DataAgent │
│ Vue 3 + Vite │ │ SSE/MCP │ │ FastAPI │
│ :3000 (dev) │ │ :8801 │ │ :8900 │
└───────────────────┘ └─────────────┘ └─────────────────┘
│ │ │
└───────────────┼───────────────┘
│
▼
┌───────────────────────────────┐
│ 后端应用 │
│ Spring Boot 2.7 │
│ :8080 │
└───────────────────────────────┘
│ │
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ MySQL 8.0+ │ │ DolphinScheduler│
│ 数据存储 │ │ 工作流调度 │
└──────────────────┘ └──────────────────┘模块划分
| 模块 | 目录 | 职责 |
|---|---|---|
| 主后端 | backend/ | 元数据、工作流、血缘、平台 API |
| 前端 | frontend/ | Web 应用 UI |
| 智能查询 | dataagent/dataagent-backend/ | NL2SQL、会话管理、Agent 运行时 |
| 部署 | deploy/ | Docker Compose、环境模板 |
技术选型
后端
| 技术 | 版本 | 说明 |
|---|---|---|
| Java | 8+ | 开发语言 |
| Spring Boot | 2.7 | 应用框架 |
| MyBatis-Plus | 3.5.5 | ORM |
| MySQL | 8.0+ | 关系数据库 |
| WebFlux | 5.3 | 响应式 HTTP 客户端 |
| Flyway | - | 数据库迁移 |
前端
| 技术 | 版本 | 说明 |
|---|---|---|
| Vue | 3.4+ | 前端框架 |
| Vite | 5.0+ | 构建工具 |
| Element Plus | 2.5+ | UI 组件库 |
| ECharts | 5.4+ | 图表/血缘可视化 |
| Vue Router | 4.x | 路由 |
| Pinia | - | 状态管理 |
智能查询
| 技术 | 说明 |
|---|---|
| Python 3.10+ | 运行时 |
| FastAPI | Web 框架 |
| Claude Agent SDK | AI Agent 框架 |
| Redis | 任务协调 |
| Alembic | 数据库迁移 |
外部依赖
| 组件 | 版本 | 说明 |
|---|---|---|
| Apache DolphinScheduler | 3.2.0 | 工作流调度引擎 |
| Redis | 7.x | 任务队列与缓存 |