Files
SuperBizAgent-java/mvp
zhuyongxin c86045b33f archive: Phase 1 基础设施搭建归档
归档信息:
- 变更名称:phase-1-infrastructure
- 工作流:spec-driven
- 归档位置:openspec/changes/archive/2026-06-23-phase-1-infrastructure/

完成情况:
- ✅ 所有产物完成(proposal, design, specs, tasks)
- ✅ 任务完成:33/35 (94%)
- ⚠️ 2 个任务跳过(混合检索、集成测试,有充分理由)

验收结果:
- ✅ 静态验证:编译通过
- ✅ 脚本验证:16/16 单元测试通过
- ✅ 端到端验证:上传→索引→检索→删除完整流程

Delta Specs:
- 跳过同步(用户选择)
- functional-specs.md 保留在归档目录中

devflow 档案:
- ✅ 已完整回填(brief, evidence, decisions, acceptance)
- ✅ devflow/index.md 状态更新为 archived
2026-06-23 19:20:05 +08:00
..

数据库设计文档

📚 文档导航

核心表设计

架构设计


一、设计原则

1.1 核心原则

  • ✅ 简单优先:满足诊断流程需要,避免过度设计
  • ✅ 渐进增强:先实现核心功能,再逐步扩展
  • ✅ 数据分离:诊断结果持久化(MySQL),会话上下文临时化(Redis)
  • ✅ 适度冗余:避免过度范式化,适当冗余提升查询性能

1.2 系统定位

自动化诊断系统

  • 核心:一键诊断 → 返回完整报告
  • 辅助:支持追问,但不是主要场景
  • 特点:大部分用户单次诊断即结束,少数用户会追问细节

二、表结构总览

2.1 核心表关系

┌─────────────────────┐
│  diagnosis_record   │  诊断记录(核心)
│  - 每次诊断一条     │
└──────────┬──────────┘
           │ 1:1
           ↓
┌─────────────────────┐
│  case_library       │  案例库(知识沉淀)
│  - 诊断成功→案例    │
└─────────────────────┘

┌─────────────────────┐
│  api_document       │  文档元数据(管理层)
│  - 状态追踪/去重     │
└──────────┬──────────┘
           │ doc_id
           ↓
┌─────────────────────┐
│  Milvus             │  文档内容(检索层)
│  - 向量检索          │
└─────────────────────┘

┌─────────────────────┐
│  Redis Session      │  会话管理(临时)
│  - 30分钟过期        │
│  - 支持追问          │
└─────────────────────┘

2.2 表统计

表名 类型 预估数据量 用途
diagnosis_record 核心 3.6万/年 诊断记录
case_library 核心 500-1000 案例库
api_document 核心 100-200 文档管理

三、技术栈

3.1 数据存储

MySQL 8.0+
├─ 元数据管理
├─ 事务支持
└─ JSON 字段支持

Redis 6.0+
├─ 会话存储
├─ 缓存
└─ TTL 自动过期

Milvus 2.6+
├─ 向量存储
├─ 语义检索
└─ 混合检索

3.2 开发框架

Spring Boot 3.2
Spring AI Alibaba 1.1.0
Milvus SDK Java 2.6.10
DashScope SDK

四、快速开始

4.1 创建数据库

-- 1. 创建数据库
CREATE DATABASE diagnosis_system CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- 2. 执行建表脚本(按顺序)
SOURCE tables/diagnosis_record.sql;
SOURCE tables/case_library.sql;
SOURCE tables/api_document.sql;

4.2 初始化 Milvus

// 创建 Collection
MilvusClientFactory.createCollection();

4.3 配置 Redis

spring:
  redis:
    host: localhost
    port: 6379
    database: 0

五、版本历史

版本 日期 变更内容
v1.0 2024-06-15 初版,定义核心表结构
v2.0 2024-06-15 diagnosis_record 字段泛化,支持多种故障类型
v2.1 2024-06-22 文档拆分,增加 api_document 表

六、维护说明

  • 每个表的详细设计在 tables/ 目录下
  • 架构设计文档在 architecture/ 目录下
  • 修改表结构时,同步更新对应的 Markdown 文档
  • 重大变更需记录在版本历史中