413 lines
17 KiB
Markdown
413 lines
17 KiB
Markdown
|
### 零、数据库测试表(test_simple)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:仅供创建数据库时,测试是否连接成功
|
|||
|
|
|||
|
负责人:宁欢
|
|||
|
|
|||
|
创建时间:2025-05-13
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 字段名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | ---------- | -------------- | ------------- |
|
|||
|
| 1 | id | id(唯一主键) | Int |
|
|||
|
| 2 | name | 名称 | VARCHAR(255) |
|
|||
|
| 3 | created_at | 创建时间 | LocalDateTime |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建极简测试表
|
|||
|
CREATE TABLE IF NOT EXISTS `test_simple` (
|
|||
|
`id` INT PRIMARY KEY AUTO_INCREMENT,
|
|||
|
`name` VARCHAR(20) NOT NULL,
|
|||
|
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|||
|
);
|
|||
|
|
|||
|
-- 插入测试数据
|
|||
|
INSERT INTO `test_simple` (`name`) VALUES ('测试数据');
|
|||
|
|
|||
|
-- 查询验证
|
|||
|
SELECT * FROM `test_simple`;
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------- |
|
|||
|
| v1.0 | 2025-05-13 | nh | 初始创建 |
|
|||
|
|
|||
|
### 一、模型信息表(model_info)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:宁欢
|
|||
|
|
|||
|
创建时间: 2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 数据表名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | ---------- | ------------------ | ------------ |
|
|||
|
| 1 | id | 模型id(唯一主键) | Long |
|
|||
|
| 2 | model_name | 模型名称 | VARCHAR(255) |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
CREATE TABLE model_info (
|
|||
|
id BIGINT PRIMARY KEY COMMENT '模型id(唯一主键)',
|
|||
|
model_name VARCHAR(255) COMMENT '模型名称'
|
|||
|
);
|
|||
|
|
|||
|
|
|||
|
-- 1. 删除现有主键约束
|
|||
|
ALTER TABLE model_info DROP CONSTRAINT IF EXISTS model_info_pkey;
|
|||
|
-- 2. 创建序列(如果不存在)
|
|||
|
CREATE SEQUENCE IF NOT EXISTS model_info_id_seq;
|
|||
|
-- 3. 将 id 字段设置为使用序列自增
|
|||
|
ALTER TABLE model_info
|
|||
|
ALTER COLUMN id SET DEFAULT nextval('model_info_id_seq');
|
|||
|
-- 4. 重新添加主键约束
|
|||
|
ALTER TABLE model_info ADD PRIMARY KEY (id);
|
|||
|
-- 5. 将序列的当前值设置为表中现有最大 id 值 +1(确保不自增冲突)
|
|||
|
SELECT setval('model_info_id_seq', COALESCE((SELECT MAX(id)+1 FROM model_info), 1), false);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | ---------------------- |
|
|||
|
| v1.0 | 2025-05-13 | 宁欢 | 初始创建 |
|
|||
|
| v1.1 | 2025-05-20 | 宁欢 | 将主键约束条件改为自增 |
|
|||
|
|
|||
|
### 二、日志表(model_log)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:宁欢
|
|||
|
|
|||
|
创建时间:2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 数据表名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | ---------------- | --------------------- | ------------- |
|
|||
|
| 1 | id | 日志id(唯一主键) | Long |
|
|||
|
| 2 | model_version_id | 关联模型版本id | Long |
|
|||
|
| 3 | log_type | 日志类型(1,2,3...) | Int |
|
|||
|
| 4 | log_path | 日志存储路径 | VARCHAR(255) |
|
|||
|
| 5 | log_time | 日志生成时间 | LocalDateTime |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建model_log表
|
|||
|
CREATE TABLE model_log (
|
|||
|
id BIGINT PRIMARY KEY COMMENT '日志id(唯一主键)',
|
|||
|
model_id BIGINT COMMENT '关联模型id',
|
|||
|
log_type INT COMMENT '日志类型(1,2,3...)',
|
|||
|
log_path VARCHAR(255) COMMENT '日志存储路径',
|
|||
|
log_time TIMESTAMP COMMENT '日志生成时间'
|
|||
|
);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | ------------------------------------------ |
|
|||
|
| v1.0 | 2025-05-14 | 宁欢 | 初始创建 |
|
|||
|
| v2.0 | 2025-06-30 | 宁欢 | 模型日志修改成绑定模型版本id,而不是模型id |
|
|||
|
|
|||
|
### 三、模型评估记录表(model_evaluation)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:宁欢
|
|||
|
|
|||
|
创建时间:2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 数据表名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | ----------------- | ---------------------- | ------------- |
|
|||
|
| 1 | id | 评估记录id(唯一主键) | Long |
|
|||
|
| 2 | model_id | 关联模型id | Long |
|
|||
|
| 3 | evaluation_time | 评估时间 | LocalDateTime |
|
|||
|
| 4 | evaluation_result | 评估结果 | VARCHAR(255) |
|
|||
|
| 5 | operator | 评估操作人员 | VARCHAR(255) |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建model_evaluation表
|
|||
|
CREATE TABLE model_evaluation (
|
|||
|
id BIGINT PRIMARY KEY COMMENT '评估记录id(唯一主键)',
|
|||
|
model_id BIGINT COMMENT '关联模型id',
|
|||
|
evaluation_time TIMESTAMP COMMENT '评估时间',
|
|||
|
evaluation_result VARCHAR(255) COMMENT '评估结果',
|
|||
|
operator VARCHAR(255) COMMENT '评估操作人员'
|
|||
|
);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------- |
|
|||
|
| v1.0 | 2025-05-14 | 宁欢 | 初始创建 |
|
|||
|
|
|||
|
### 四、模型版本信息(model_version)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:宁欢
|
|||
|
|
|||
|
创建时间:2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 数据表名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | --------------------- | ---------------------------------- | ------------- |
|
|||
|
| 1 | id | 版本信息表id(唯一主键) | Long |
|
|||
|
| 2 | model_id | 关联模型id | Long |
|
|||
|
| 3 | version | 模型版本 | VARCHAR(255) |
|
|||
|
| 4 | dataset_id | 数据集id | Int |
|
|||
|
| 5 | model_config | 模型配置信息 | VARCHAR(255) |
|
|||
|
| 6 | model_path | 模型存储路径 | VARCHAR(255) |
|
|||
|
| 7 | status | 模型状态(1代表上线,0代表不上线) | Int |
|
|||
|
| 8 | create_time | 创建时间 | LocalDateTime |
|
|||
|
| 9 | update_time | 更新时间 | LocalDateTime |
|
|||
|
| 10 | model_size | 模型大小 | Integer |
|
|||
|
| 11 | data_pre_handle_file | 数据预处理文件存储路径 | VARCHAR(255) |
|
|||
|
| 12 | model_super_args | 模型超参数 | VARCHAR(255) |
|
|||
|
| 13 | model_args_size | 模型参数量 | VARCHAR(255) |
|
|||
|
| 14 | model_source_code_url | 模型源代码路径 | VARCHAR(255) |
|
|||
|
| 15 | model_file | 模型文件存储路径 | VARCHAR(255) |
|
|||
|
| 16 | model_design_document | 模型设计文档存储路径 | VARCHAR(255) |
|
|||
|
| 17 | life_cycle | 模型生命周期 | VARCHAR(255) |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建model_version表
|
|||
|
CREATE TABLE model_version (
|
|||
|
id BIGINT PRIMARY KEY COMMENT '版本信息表id(唯一主键)',
|
|||
|
model_id BIGINT COMMENT '关联模型id',
|
|||
|
version VARCHAR(255) COMMENT '模型版本',
|
|||
|
dataset_id INT COMMENT '数据集id',
|
|||
|
model_config VARCHAR(255) COMMENT '模型配置信息',
|
|||
|
model_path VARCHAR(255) COMMENT '模型存储路径',
|
|||
|
status INT COMMENT '模型状态(1代表上线,0代表不上线)',
|
|||
|
create_time TIMESTAMP COMMENT '创建时间'
|
|||
|
);
|
|||
|
|
|||
|
-- 添加更新时间字段,类型为TIMESTAMP与Java的LocalDateTime对应
|
|||
|
ALTER TABLE model_version ADD COLUMN update_time TIMESTAMP COMMENT '更新时间';
|
|||
|
-- 添加模型大小字段,类型用INT与Java的Integer对应
|
|||
|
ALTER TABLE model_version ADD COLUMN model_size INT COMMENT '模型大小';
|
|||
|
-- 数据预处理文件存储路径,用VARCHAR存储路径信息
|
|||
|
ALTER TABLE model_version ADD COLUMN data_pre_handle_file VARCHAR(255) COMMENT '数据预处理文件存储路径';
|
|||
|
-- 模型超参数,用VARCHAR存储文本信息
|
|||
|
ALTER TABLE model_version ADD COLUMN model_super_args VARCHAR(255) COMMENT '模型超参数';
|
|||
|
-- 模型参数量,用VARCHAR存储文本格式的数量信息
|
|||
|
ALTER TABLE model_version ADD COLUMN model_args_size VARCHAR(255) COMMENT '模型参数量';
|
|||
|
-- 模型源代码路径,用VARCHAR存储路径信息
|
|||
|
ALTER TABLE model_version ADD COLUMN model_source_code_url VARCHAR(255) COMMENT '模型源代码路径';
|
|||
|
-- 模型文件存储路径,用VARCHAR存储路径信息
|
|||
|
ALTER TABLE model_version ADD COLUMN model_file VARCHAR(255) COMMENT '模型文件存储路径';
|
|||
|
-- 模型设计文档存储路径,用VARCHAR存储路径信息
|
|||
|
ALTER TABLE model_version ADD COLUMN model_design_document VARCHAR(255) COMMENT '模型设计文档存储路径';
|
|||
|
-- 模型生命周期,用VARCHAR存储文本信息
|
|||
|
ALTER TABLE model_version ADD COLUMN life_cycle VARCHAR(255) COMMENT '模型生命周期';
|
|||
|
|
|||
|
-- 1. 删除现有主键约束
|
|||
|
ALTER TABLE model_version DROP CONSTRAINT IF EXISTS model_version_pkey;
|
|||
|
-- 2. 创建序列(如果不存在)
|
|||
|
CREATE SEQUENCE IF NOT EXISTS model_version_id_seq;
|
|||
|
-- 3. 将 id 字段设置为使用序列自增
|
|||
|
ALTER TABLE model_version
|
|||
|
ALTER COLUMN id SET DEFAULT nextval('model_version_id_seq');
|
|||
|
-- 4. 重新添加主键约束
|
|||
|
ALTER TABLE model_version ADD PRIMARY KEY (id);
|
|||
|
-- 5. 将序列的当前值设置为表中现有最大 id 值 +1(确保不自增冲突)
|
|||
|
SELECT setval('model_version_id_seq', COALESCE((SELECT MAX(id)+1 FROM model_version), 1), false);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------------------------------------------------- |
|
|||
|
| v1.0 | 2025-05-14 | 宁欢 | 初始创建 |
|
|||
|
| v1.1 | 2025-05-20 | 宁欢 | 新增了一些字段(从update_time到life_cycle共9个字段) |
|
|||
|
| v1.3 | 2025-05-20 | 宁欢 | 将主键约束条件改为自增 |
|
|||
|
|
|||
|
### 五、数据集表(dataset )
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:胡楷沅
|
|||
|
|
|||
|
创建时间:2025-05-13
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 序号 | 数据表名 | 中文名称 | 数据类型 |
|
|||
|
| ---- | -------------- | ---------------------------------------------------- | ------------ |
|
|||
|
| 1 | dataset_id | 数据集id(唯一主键) | Int |
|
|||
|
| 2 | dataset_name | 数据集名称 | VARCHAR(255) |
|
|||
|
| 3 | dataset_type | 数据集类型(0 表示用户上传,1 表示来源于数据库) | Int |
|
|||
|
| 4 | dataset_status | 数据集状态(0 表示停用,1 表示启用) | Int |
|
|||
|
| 5 | ds_path | 分布式存储路径(存入分布式文件系统的路径) | VARCHAR(255) |
|
|||
|
| 6 | args | 过滤参数(存储为 JSON 格式对应 Map<String, String>) | JSON |
|
|||
|
| 7 | create_time | 创建时间 | TIMESTAMP |
|
|||
|
| 8 | update_time | 更新时间 | TIMESTAMP |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
CREATE TABLE dataset (
|
|||
|
dataset_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '数据集ID',
|
|||
|
dataset_name VARCHAR(255) COMMENT '数据集名称',
|
|||
|
dataset_type INT COMMENT '数据集类型,0表示用户上传,1表示来源于数据库',
|
|||
|
dataset_status INT COMMENT '数据集状态,0表示停用,1表示启用',
|
|||
|
ds_path VARCHAR(255) COMMENT '分布式存储路径,存入分布式文件系统的路径',
|
|||
|
args JSON COMMENT '过滤参数,存储为JSON格式对应Map<String, String>',
|
|||
|
create_time TIMESTAMP COMMENT '创建时间',
|
|||
|
update_time TIMESTAMP COMMENT '更新时间'
|
|||
|
);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------- |
|
|||
|
| v1.0 | 2025-05-13 | 胡楷沅 | 初始创建 |
|
|||
|
|
|||
|
### 六、GPU资源表(gpu_resource)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:杜冲
|
|||
|
|
|||
|
创建时间:2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 字段名 | 数据类型 | 约束 | 字段描述 |
|
|||
|
| :-----------: | :---------: | :--------: | :-------------------: |
|
|||
|
| GPUId | BIGINT | 主键,自增 | GPU的ID,全局唯一标识 |
|
|||
|
| GPUModel | VARCHAR(64) | NOT NULL | GPU的型号 |
|
|||
|
| GPUMemorySize | INT | NOT NULL | GPU内存大小 |
|
|||
|
| Ip | VARCHAR(15) | NOT NULL | GPU所在ip |
|
|||
|
| CreatedTime | DATETIME | NULL | GPU添加时间,可为空 |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建gpu_resource表
|
|||
|
CREATE TABLE gpu_resource (
|
|||
|
|
|||
|
GPUId BIGINT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
|
|||
|
|
|||
|
GPUModel VARCHAR(64) NOT NULL,
|
|||
|
|
|||
|
GPUMemorySize INT NOT NULL,
|
|||
|
|
|||
|
Ip VARCHAR(15) NOT NULL CHECK (Ip ~ '^\\d+\\.\\d+\\.\\d+\\.\\d+$'),
|
|||
|
|
|||
|
CreatedTime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|||
|
);
|
|||
|
```
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------- |
|
|||
|
| v1.0 | 2025-05-14 | 杜冲 | 初始创建 |
|
|||
|
|
|||
|
### 七、算法基础信息表(algorithm_info)
|
|||
|
|
|||
|
#### 1.基本信息
|
|||
|
|
|||
|
所属模块:智能应用服务管理
|
|||
|
|
|||
|
负责人:孙一城
|
|||
|
|
|||
|
创建时间:2025-05-14
|
|||
|
|
|||
|
#### 2.表结构
|
|||
|
|
|||
|
| 字段名 | 类型 | 是否为空 | 默认值 | 说明 |
|
|||
|
| -------------- | ------------ | -------- | --------------------------- | -------------- |
|
|||
|
| id | BIGINT | NOT NULL | AUTO_INCREMENT | 算法ID |
|
|||
|
| algorithm_name | VARCHAR(100) | NOT NULL | | 算法名称(唯一) |
|
|||
|
| algorithm_file | VARCHAR(255) | NOT NULL | | 算法文件路径 |
|
|||
|
| algorithm_type | VARCHAR(50) | NOT NULL | | 算法分类 |
|
|||
|
| description | TEXT | NULL | | 算法描述 |
|
|||
|
| created_by | VARCHAR(50) | NOT NULL | | 创建人 |
|
|||
|
| create_time | DATETIME | NOT NULL | CURRENT_TIMESTAMP | 创建时间 |
|
|||
|
| update_time | DATETIME | NOT NULL | CURRENT_TIMESTAMP ON UPDATE | 更新时间 |
|
|||
|
| file_size | BIGINT | NULL | | 文件大小(字节) |
|
|||
|
|
|||
|
#### 3.SQL脚本
|
|||
|
|
|||
|
```
|
|||
|
-- 创建算法信息表(Kingbase 兼容版)
|
|||
|
CREATE TABLE algorithm_info (
|
|||
|
id BIGSERIAL PRIMARY KEY, -- 自增主键
|
|||
|
algorithm_name VARCHAR(100) NOT NULL, -- 算法名称
|
|||
|
algorithm_file VARCHAR(255) NOT NULL, -- 算法文件路径
|
|||
|
algorithm_type VARCHAR(50) NOT NULL, -- 算法分类
|
|||
|
description TEXT, -- 算法描述
|
|||
|
created_by VARCHAR(50) NOT NULL, -- 创建人
|
|||
|
create_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间
|
|||
|
update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间(需触发器自动更新)
|
|||
|
file_size BIGINT -- 文件大小(字节)
|
|||
|
);
|
|||
|
|
|||
|
-- 添加唯一约束
|
|||
|
ALTER TABLE algorithm_info ADD CONSTRAINT uk_algorithm_name UNIQUE (algorithm_name);
|
|||
|
|
|||
|
-- 这部份没有成功运行,存在问题
|
|||
|
-- 为 update_time 添加自动更新触发器
|
|||
|
CREATE OR REPLACE FUNCTION update_modified_column()
|
|||
|
RETURNS TRIGGER AS $$
|
|||
|
BEGIN
|
|||
|
NEW.update_time = NOW(); -- 语句以分号结尾
|
|||
|
RETURN NEW;
|
|||
|
END;
|
|||
|
$$ LANGUAGE plpgsql; -- 美元引号正确闭合
|
|||
|
|
|||
|
-- 创建触发器
|
|||
|
CREATE TRIGGER update_algorithm_info_modtime
|
|||
|
BEFORE UPDATE ON algorithm_info
|
|||
|
FOR EACH ROW EXECUTE FUNCTION update_modified_column();
|
|||
|
|
|||
|
-- 创建索引(语法与 MySQL 相同,无需修改)
|
|||
|
CREATE INDEX idx_algorithm_type ON algorithm_info(algorithm_type);
|
|||
|
CREATE INDEX idx_created_by ON algorithm_info(created_by);
|
|||
|
CREATE INDEX idx_create_time ON algorithm_info(create_time);
|
|||
|
```
|
|||
|
|
|||
|
#### 4.变更记录
|
|||
|
|
|||
|
| 版本 | 变更时间 | 变更人 | 变更内容 |
|
|||
|
| ---- | ---------- | ------ | -------- |
|
|||
|
| v1.0 | 2025-05-14 | 孙一城 | 初始创建 |
|