CREATE TABLE IF NOT EXISTS ${tableName} ( id BIGINT(20) AUTO_INCREMENT COMMENT '唯一标识ID', `name` VARCHAR(255) COMMENT '接口名称', `mac` VARCHAR(50) COMMENT 'MAC地址', `status` VARCHAR(20) COMMENT '运行状态', `type` VARCHAR(30) COMMENT '接口类型', ipV4 VARCHAR(20) COMMENT 'IPv4地址', `in_dropped` DECIMAL(20,2) COMMENT '入站丢包率(%)', `out_dropped` DECIMAL(20,2) COMMENT '出站丢包率(%)', `in_speed` varchar(50) COMMENT '接收带宽(bit)', `out_speed` varchar(50) COMMENT '发送带宽(bit)', `total_in_speed` varchar(50) COMMENT '总接收带宽(bit)', `total_out_speed` varchar(50) COMMENT '总发送带宽(bit)', `machine_flow` varchar(50) COMMENT '金山带宽(bit)', `speed` varchar(100) COMMENT '协商速度', `duplex` varchar(100) COMMENT '工作模式', business_id varchar(50) COMMENT '业务代码', business_name varchar(200) COMMENT '业务名称', service_sn varchar(64) COMMENT '服务器SN', node_name varchar(200) COMMENT '服务器名称', revenue_method varchar(10) COMMENT '收益方式(1.流量,2包端)', package_bandwidth DECIMAL(10,2) COMMENT '包端带宽值', create_time DATETIME COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', create_by VARCHAR(50) COMMENT '创建人', update_by VARCHAR(50) COMMENT '修改人', client_id VARCHAR(255) COMMENT '设备唯一标识', ipv4_in_speed VARCHAR(50) COMMENT 'IPv4接收流量', ipv4_out_speed VARCHAR(50) COMMENT 'IPv4发送流量', ipv6_in_speed VARCHAR(50) COMMENT 'IPv6接收流量', ipv6_out_speed VARCHAR(50) COMMENT 'IPv6发送流量', total_ipv4_in_speed VARCHAR(50) COMMENT 'IPv4接收总流量', total_ipv4_out_speed VARCHAR(50) COMMENT 'IPv4发送总流量', total_ipv6_in_speed VARCHAR(50) COMMENT 'IPv6接收总流量', total_ipv6_out_speed VARCHAR(50) COMMENT 'IPv6发送总流量', ipV6 VARCHAR(50) COMMENT 'IPv6地址', PRIMARY KEY (id), UNIQUE KEY uk_client_mac_name_time (client_id, mac, name, create_time), INDEX idx_name_time (`name`,create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='EPS设备流量初始数据表'; CREATE TABLE IF NOT EXISTS ${tableName} ( id BIGINT(20) AUTO_INCREMENT COMMENT '唯一标识ID', `name` VARCHAR(255) COMMENT '接口名称', `mac` VARCHAR(20) COMMENT 'MAC地址', `status` VARCHAR(20) COMMENT '运行状态', `type` VARCHAR(30) COMMENT '接口类型', ipV4 VARCHAR(20) COMMENT 'IPv4地址', `in_dropped` DECIMAL(20,2) COMMENT '入站丢包率(%)', `out_dropped` DECIMAL(20,2) COMMENT '出站丢包率(%)', `in_speed` VARCHAR(50) COMMENT '接收带宽(Mbps)', `out_speed` VARCHAR(50) COMMENT '发送带宽(Mbps)', `total_in_speed` VARCHAR(50) COMMENT '总接收带宽(Mbps)', `total_out_speed` VARCHAR(50) COMMENT '总发送带宽(Mbps)', `speed` varchar(100) COMMENT '协商速度', `duplex` varchar(100) COMMENT '工作模式', create_time DATETIME COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', create_by VARCHAR(50) COMMENT '创建人', update_by VARCHAR(50) COMMENT '修改人', client_id VARCHAR(255) COMMENT '设备唯一标识', ipv4_in_speed VARCHAR(50) COMMENT 'IPv4接收流量', ipv4_out_speed VARCHAR(50) COMMENT 'IPv4发送流量', ipv6_in_speed VARCHAR(50) COMMENT 'IPv6接收流量', ipv6_out_speed VARCHAR(50) COMMENT 'IPv6发送流量', total_ipv4_in_speed VARCHAR(50) COMMENT 'IPv4接收总流量', total_ipv4_out_speed VARCHAR(50) COMMENT 'IPv4发送总流量', total_ipv6_in_speed VARCHAR(50) COMMENT 'IPv6接收总流量', total_ipv6_out_speed VARCHAR(50) COMMENT 'IPv6发送总流量', ipV6 VARCHAR(50) COMMENT 'IPv6地址', PRIMARY KEY (id), UNIQUE KEY uk_client_mac_name_time (client_id, mac, name, create_time), INDEX idx_name_time (`name`,create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='初始带宽流量表'; CREATE TABLE IF NOT EXISTS ${tableName} ( id BIGINT(20) AUTO_INCREMENT COMMENT '主键ID', mtr_client_id VARCHAR(200) COMMENT 'MTR客户端ID', client_id VARCHAR(200) COMMENT '客户端ID', public_ip VARCHAR(45) COMMENT '公网IP地址', packet_loss_rate DECIMAL(5,2) COMMENT '丢包率(%)', hop_result LONGTEXT COMMENT '每一跳解析结果(JSON形式)', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', create_by VARCHAR(64) COMMENT '创建人', update_by VARCHAR(64) COMMENT '更新人', PRIMARY KEY (id), UNIQUE KEY uk_probe_record (mtr_client_id, client_id, create_time), INDEX idx_mtr_client_id (mtr_client_id, create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='网络mtr探测结果表'; CREATE TABLE IF NOT EXISTS ${tableName} ( id BIGINT(20) AUTO_INCREMENT COMMENT '主键ID', client_id VARCHAR(255) NOT NULL COMMENT '客户端ID', name VARCHAR(100) NOT NULL COMMENT '网络接口名称', switch_ip VARCHAR(100) COMMENT '交换机IP', in_bytes DECIMAL(22,0) COMMENT '接收流量(字节)', out_bytes DECIMAL(22,0) COMMENT '发送流量(字节)', in_speed DECIMAL(20,2) DEFAULT 0.00 COMMENT '接收速率(bit/s)', out_speed DECIMAL(20,2) DEFAULT 0.00 COMMENT '发送速率(bit/s)', max_speed DECIMAL(20,0) COMMENT '流量最大值', status VARCHAR(20) COMMENT '接口状态', type VARCHAR(30) COMMENT '接口类型', if_speed VARCHAR(50) COMMENT '端口速率(Mbps)', if_index VARCHAR(50) COMMENT '端口索引', if_in_discards VARCHAR(50) COMMENT '入站丢包', if_out_discards VARCHAR(50) COMMENT '出站丢包', if_in_errors VARCHAR(50) COMMENT '入站错误', if_out_errors VARCHAR(50) COMMENT '出站错误', create_time DATETIME COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', create_by VARCHAR(50) COMMENT '创建人', update_by VARCHAR(50) COMMENT '更新人', PRIMARY KEY (id), UNIQUE KEY uk_switch_record (client_id, switch_ip, name, create_time), INDEX idx_create_time (create_time), INDEX idx_draw (client_id, name, create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='交换机监控信息表'; CREATE TABLE IF NOT EXISTS ${tableName} ( id BIGINT(20) AUTO_INCREMENT COMMENT '主键ID', client_id VARCHAR(255) NOT NULL COMMENT '客户端ID', name VARCHAR(100) NOT NULL COMMENT '网络接口名称', switch_ip VARCHAR(100) COMMENT '交换机IP', switch_name VARCHAR(100) COMMENT '交换机名称', switch_sn VARCHAR(64) COMMENT '交换机SN', in_bytes DECIMAL(22,2) COMMENT '接收流量(字节)', out_bytes DECIMAL(22,2) COMMENT '发送流量(字节)', in_speed DECIMAL(20,2) COMMENT '接收速率(bit/s)', out_speed DECIMAL(20,2) COMMENT '发送速率(bit/s)', max_speed DECIMAL(20,2) COMMENT '流量最大值', status VARCHAR(20) COMMENT '接口状态', type VARCHAR(30) COMMENT '接口类型', interface_device_type VARCHAR(50) COMMENT '连接设备类型', interface_name_remark VARCHAR(255) COMMENT '接口别名', server_name VARCHAR(100) COMMENT '服务器名称', server_client_id VARCHAR(255) COMMENT '服务器客户端ID', server_port VARCHAR(200) COMMENT '服务器网口', server_sn VARCHAR(64) COMMENT '服务器SN', business_code VARCHAR(100) COMMENT '业务代码', business_name VARCHAR(200) COMMENT '业务名称', if_speed VARCHAR(50) COMMENT '端口速率(Mbps)', if_index VARCHAR(50) COMMENT '端口索引', if_in_discards VARCHAR(50) COMMENT '入站丢包', if_out_discards VARCHAR(50) COMMENT '出站丢包', if_in_errors VARCHAR(50) COMMENT '入站错误', if_out_errors VARCHAR(50) COMMENT '出站错误', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', create_by VARCHAR(50) COMMENT '创建人', update_by VARCHAR(50) COMMENT '更新人', PRIMARY KEY (id), UNIQUE KEY uk_switch_detail (client_id, switch_ip, name, create_time), INDEX idx_filter_sort (name, interface_device_type, switch_sn, create_time), INDEX idx_create_time (create_time), INDEX idx_client_time (client_id, name, create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='交换机监控详情表'; INSERT INTO ${tableName} ( `name`, `mac`, `status`, `type`, ipV4, `in_dropped`, `out_dropped`, `in_speed`, `out_speed`, `total_in_speed`, `total_out_speed`, `speed`, `duplex`, business_id, business_name, service_sn, node_name, revenue_method, package_bandwidth, create_by, update_by, client_id, ipv4_in_speed, ipv4_out_speed, ipv6_in_speed, ipv6_out_speed, total_ipv4_in_speed, total_ipv4_out_speed, total_ipv6_in_speed, total_ipv6_out_speed, ipV6 ) VALUES ( #{name}, #{mac}, #{status}, #{type}, #{ipV4}, #{inDropped}, #{outDropped}, #{inSpeed}, #{outSpeed}, #{totalInSpeed}, #{totalOutSpeed}, #{speed}, #{duplex}, #{businessId}, #{businessName}, #{serviceSn}, #{nodeName}, #{revenueMethod}, #{packageBandwidth}, #{createBy}, #{updateBy}, #{clientId}, #{ipv4InSpeed}, #{ipv4OutSpeed}, #{ipv6InSpeed}, #{ipv6OutSpeed}, #{totalIpv4InSpeed}, #{totalIpv4OutSpeed}, #{totalIpv6InSpeed}, #{totalIpv6OutSpeed}, #{ipV6} ) INSERT IGNORE INTO ${tableName} ( id, `name`, `mac`, `status`, `type`, ipV4, `in_dropped`, `out_dropped`, `in_speed`, `out_speed`, `total_in_speed`, `total_out_speed`, `speed`, `duplex`, business_id, business_name, service_sn, node_name, revenue_method, package_bandwidth, create_time, update_time, create_by, update_by, client_id, ipv4_in_speed, ipv4_out_speed, ipv6_in_speed, ipv6_out_speed, total_ipv4_in_speed, total_ipv4_out_speed, total_ipv6_in_speed, total_ipv6_out_speed, ipV6 ) VALUES ( #{data.id,jdbcType=BIGINT}, #{data.name,jdbcType=VARCHAR}, #{data.mac,jdbcType=VARCHAR}, #{data.status,jdbcType=VARCHAR}, #{data.type,jdbcType=VARCHAR}, #{data.ipV4,jdbcType=VARCHAR}, #{data.inDropped,jdbcType=DECIMAL}, #{data.outDropped,jdbcType=DECIMAL}, #{data.inSpeed,jdbcType=VARCHAR}, #{data.outSpeed,jdbcType=VARCHAR}, #{data.totalInSpeed,jdbcType=VARCHAR}, #{data.totalOutSpeed,jdbcType=VARCHAR}, #{data.speed,jdbcType=VARCHAR}, #{data.duplex,jdbcType=VARCHAR}, #{data.businessId,jdbcType=VARCHAR}, #{data.businessName,jdbcType=VARCHAR}, #{data.serviceSn,jdbcType=VARCHAR}, #{data.nodeName,jdbcType=VARCHAR}, #{data.revenueMethod,jdbcType=VARCHAR}, #{data.packageBandwidth,jdbcType=DECIMAL}, #{data.createTime,jdbcType=TIMESTAMP}, #{data.updateTime,jdbcType=TIMESTAMP}, #{data.createBy,jdbcType=VARCHAR}, #{data.updateBy,jdbcType=VARCHAR}, #{data.clientId,jdbcType=VARCHAR}, #{data.ipv4InSpeed,jdbcType=VARCHAR}, #{data.ipv4OutSpeed,jdbcType=VARCHAR}, #{data.ipv6InSpeed,jdbcType=VARCHAR}, #{data.ipv6OutSpeed,jdbcType=VARCHAR}, #{data.totalIpv4InSpeed,jdbcType=VARCHAR}, #{data.totalIpv4OutSpeed,jdbcType=VARCHAR}, #{data.totalIpv6InSpeed,jdbcType=VARCHAR}, #{data.totalIpv6OutSpeed,jdbcType=VARCHAR}, #{data.ipV6,jdbcType=VARCHAR} ) update ${tableName} set machine_flow=#{machineFlow} where client_id=#{clientId} and create_time=#{createTime}