feat(aiot): 新增方案B数据库升级脚本
- 新增 wvp_ai_config_snapshot 配置版本快照表 - 新增 wvp_ai_algo_template 算法参数模板表 - 新增 wvp_ai_alert AI告警表 - 新增 wvp_ai_edge_device 边缘设备状态表 - wvp_ai_roi_algo_bind 新增 template_id 和 param_override 字段 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
77
数据库/aiot/升级-mysql-aiot-方案B.sql
Normal file
77
数据库/aiot/升级-mysql-aiot-方案B.sql
Normal file
@@ -0,0 +1,77 @@
|
||||
-- ============================================================
|
||||
-- AIoT 方案B升级脚本 - Redis+MQTT混合对接
|
||||
-- 新增表:config_snapshot, alert, edge_device, algo_template
|
||||
-- 修改表:roi_algo_bind 新增 template_id, param_override
|
||||
-- ============================================================
|
||||
|
||||
-- 1. 配置版本快照表
|
||||
CREATE TABLE IF NOT EXISTS wvp_ai_config_snapshot (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT,
|
||||
version INT NOT NULL COMMENT '自增版本号',
|
||||
scope_type VARCHAR(20) NOT NULL COMMENT 'CAMERA|ROI|BIND',
|
||||
scope_id VARCHAR(64) NOT NULL COMMENT 'camera_id/roi_id/bind_id',
|
||||
camera_id VARCHAR(64) NOT NULL COMMENT '所属摄像头',
|
||||
snapshot LONGTEXT NOT NULL COMMENT '完整JSON快照',
|
||||
change_type VARCHAR(20) NOT NULL COMMENT 'CREATE|UPDATE|DELETE|ROLLBACK|PUSH',
|
||||
change_desc VARCHAR(255) NULL COMMENT '变更描述',
|
||||
created_by VARCHAR(64) NULL COMMENT '操作人',
|
||||
created_at VARCHAR(50) NOT NULL COMMENT '创建时间',
|
||||
INDEX idx_scope (scope_type, scope_id),
|
||||
INDEX idx_camera (camera_id),
|
||||
INDEX idx_version (scope_type, scope_id, version DESC)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='配置版本快照';
|
||||
|
||||
-- 2. AI告警表
|
||||
CREATE TABLE IF NOT EXISTS wvp_ai_alert (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT,
|
||||
alert_id VARCHAR(128) NOT NULL COMMENT '告警唯一ID',
|
||||
camera_id VARCHAR(64) NOT NULL COMMENT '摄像头ID',
|
||||
roi_id VARCHAR(64) NOT NULL COMMENT 'ROI区域ID',
|
||||
bind_id VARCHAR(64) NULL COMMENT '绑定ID',
|
||||
alert_type VARCHAR(50) NOT NULL COMMENT 'leave_post/intrusion/crowd_detection',
|
||||
target_class VARCHAR(50) NULL COMMENT '目标类别',
|
||||
confidence DOUBLE NULL COMMENT '置信度',
|
||||
bbox VARCHAR(255) NULL COMMENT 'JSON: [x1,y1,x2,y2]',
|
||||
message TEXT NULL COMMENT '告警消息',
|
||||
image_path VARCHAR(255) NULL COMMENT '告警图片路径',
|
||||
duration_minutes DOUBLE NULL COMMENT '持续时长(分钟)',
|
||||
extra_data TEXT NULL COMMENT 'JSON扩展',
|
||||
received_at VARCHAR(50) NOT NULL COMMENT '接收时间',
|
||||
UNIQUE KEY uk_alert_id (alert_id),
|
||||
INDEX idx_camera (camera_id),
|
||||
INDEX idx_type (alert_type),
|
||||
INDEX idx_time (received_at)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='AI告警记录';
|
||||
|
||||
-- 3. 边缘设备状态表
|
||||
CREATE TABLE IF NOT EXISTS wvp_ai_edge_device (
|
||||
id INT PRIMARY KEY AUTO_INCREMENT,
|
||||
device_id VARCHAR(64) NOT NULL COMMENT '设备唯一ID',
|
||||
status VARCHAR(20) DEFAULT 'offline' COMMENT 'online/offline',
|
||||
last_heartbeat VARCHAR(50) NULL COMMENT '最后心跳时间',
|
||||
uptime_seconds BIGINT NULL COMMENT '运行时长(秒)',
|
||||
frames_processed BIGINT NULL COMMENT '已处理帧数',
|
||||
alerts_generated BIGINT NULL COMMENT '已生成告警数',
|
||||
stream_stats TEXT NULL COMMENT 'JSON流统计',
|
||||
updated_at VARCHAR(50) NULL COMMENT '更新时间',
|
||||
UNIQUE KEY uk_device_id (device_id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='边缘设备状态';
|
||||
|
||||
-- 4. 算法参数模板表
|
||||
CREATE TABLE IF NOT EXISTS wvp_ai_algo_template (
|
||||
id INT PRIMARY KEY AUTO_INCREMENT,
|
||||
template_id VARCHAR(64) NOT NULL COMMENT '模板唯一ID',
|
||||
template_name VARCHAR(100) NOT NULL COMMENT '模板名称',
|
||||
algo_code VARCHAR(50) NOT NULL COMMENT '关联算法代码',
|
||||
params TEXT NOT NULL COMMENT 'JSON参数',
|
||||
description VARCHAR(255) NULL COMMENT '描述',
|
||||
create_time VARCHAR(50) NULL COMMENT '创建时间',
|
||||
update_time VARCHAR(50) NULL COMMENT '更新时间',
|
||||
UNIQUE KEY uk_template_id (template_id),
|
||||
INDEX idx_algo (algo_code)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='算法参数模板';
|
||||
|
||||
-- 5. wvp_ai_roi_algo_bind 新增模板引用字段
|
||||
ALTER TABLE wvp_ai_roi_algo_bind
|
||||
ADD COLUMN template_id VARCHAR(64) DEFAULT NULL COMMENT '引用的模板ID',
|
||||
ADD COLUMN param_override TEXT DEFAULT NULL COMMENT '覆盖模板的局部参数JSON';
|
||||
Reference in New Issue
Block a user