### 零、数据库测试表(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) | 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', 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 | 孙一城 | 初始创建 |