Files
intelligent-application-orc…/lib/数据库存档文件.md

17 KiB
Raw Blame History

零、数据库测试表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 日志类型123...) 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 '日志类型123...',
                           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 孙一城 初始创建