|
@@ -1054,83 +1054,111 @@ truncate table bi_sijifayuan_alm_group_by_time;
|
|
|
|
|
|
DROP TABLE IF EXISTS `bi_host_stat`;
|
|
DROP TABLE IF EXISTS `bi_host_stat`;
|
|
CREATE TABLE `bi_host_stat` (
|
|
CREATE TABLE `bi_host_stat` (
|
|
- `dtype` varchar(10) NOT NULL DEFAULT '',
|
|
|
|
- `thedvalue` varchar(10) DEFAULT NULL,
|
|
|
|
- `COMPANY` varchar(30) DEFAULT NULL COMMENT '数据来源',
|
|
|
|
- `target` varchar(20) NOT NULL DEFAULT '',
|
|
|
|
- `dim` varchar(20) NOT NULL DEFAULT '',
|
|
|
|
- `dim_value` decimal(20,8) DEFAULT NULL,
|
|
|
|
- `group_agg` varchar(3) NOT NULL DEFAULT ''
|
|
|
|
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
|
|
+ `dtype` VARCHAR ( 10 ) NOT NULL DEFAULT '',
|
|
|
|
+ `thedvalue` VARCHAR ( 10 ) DEFAULT NULL,
|
|
|
|
+ `COMPANY` VARCHAR ( 30 ) DEFAULT NULL COMMENT '数据来源',
|
|
|
|
+ `target` VARCHAR ( 20 ) NOT NULL DEFAULT '',
|
|
|
|
+ `dim` VARCHAR ( 20 ) NOT NULL DEFAULT '',
|
|
|
|
+ `dim_value` DECIMAL ( 50, 20 ) DEFAULT NULL,
|
|
|
|
+ `group_agg` VARCHAR ( 10 ) NOT NULL DEFAULT '',
|
|
|
|
+ `unit` VARCHAR ( 10 ) NOT NULL DEFAULT '单位' ,
|
|
|
|
+ `cloud` varchar(255) DEFAULT NULL COMMENT '云平台'
|
|
|
|
+) ENGINE = InnoDB DEFAULT CHARSET = utf8;
|
|
|
|
|
|
-
|
|
|
|
- TRUNCATE table bi_host_stat;
|
|
|
|
- INSERT INTO bi_host_stat
|
|
|
|
- select
|
|
|
|
|
|
+TRUNCATE table bi_host_stat;
|
|
|
|
+INSERT INTO bi_host_stat
|
|
|
|
+select
|
|
'HOUR' as dtype,
|
|
'HOUR' as dtype,
|
|
- a.thedvalue,a.COMPANY,
|
|
|
|
- case b.mm when 1 then 'CPU' when 2 then '内存' when 3 then '硬盘'when 4 then 'CPU' when 5 then '内存' when 6 then '硬盘'when 7 then 'CPU' when 8 then '内存' when 9 then '硬盘' when 10 then 'CPU' when 11 then '内存' when 12 then '硬盘' else '' end as target,
|
|
|
|
- case b.mm when 1 then '额定量' when 2 then '额定量' when 3 then '额定量' when 4 then '分配量'
|
|
|
|
- when 5 then '分配量' when 6 then '分配量'when 7 then '剩余可用' when 8 then '剩余可用' when 9 then '剩余可用' when 10 then '分配占比' when 11 then '分配占比' when 12 then '分配占比' else '' end as dim,
|
|
|
|
- case b.mm when 1 then dim1 when 2 then dim2 when 3 then dim3 when 4 then dim4 when 5 then dim5 when 6 then dim6 when 7 then dim7 when 8 then dim8 when 9 then dim9
|
|
|
|
- when 10 then IF(dim1<>0,dim4/dim1,0) when 11 then IF(dim2<>0,dim5/dim2,0) when 12 then IF(dim3<>0,dim6/dim3,0) else null end as dim_value,
|
|
|
|
- case b.mm when 1 then 'avg' when 2 then 'max' when 3 then 'max'when 4 then 'avg' when 5 then 'max' when 6 then 'max'when 7 then 'avg' when 8 then 'max' when 9 then 'max' else 'avg' end as group_agg
|
|
|
|
- from (
|
|
|
|
- select
|
|
|
|
- date_format(CREATE_TIME,'%Y%m%d%H') as thedvalue,
|
|
|
|
- case COMPANY when 'huawei' then '太极云资源池' when 'huawei-xc' then '信创云资源池' when 'shouxin' then '首信云资源池' when 'unicom' then '联通云资源池' else '其它' end as COMPANY,
|
|
|
|
- avg(IND_VALUE_HOST_CPU_UTILIZATION) as dim1,MAX(IND_VALUE_HOST_MEMORY_TOTAL) as dim2,MAX(IND_VALUE_HOST_DISK_TOTAL) as dim3,
|
|
|
|
- avg(IND_VALUE_HOST_CPU_TOP) as dim4,MAX(IND_VALUE_HOST_MEMORY_USED) as dim5,MAX(IND_VALUE_HOST_DISK_USED) as dim6,
|
|
|
|
- avg(IND_VALUE_HOST_CPU_UTILIZATION_LOW) as dim7,MAX(IND_VALUE_HOST_MEMORY_UNUSED) as dim8,MAX(IND_VALUE_HOST_DISK_UNUSED) as dim9
|
|
|
|
- from app_host_stat where COMPANY is not null
|
|
|
|
- group by COMPANY,date_format(CREATE_TIME,'%Y%m%d%H') ) a
|
|
|
|
- cross join
|
|
|
|
- (select 1 mm
|
|
|
|
- union all select 2
|
|
|
|
- union all select 3
|
|
|
|
- union all select 4
|
|
|
|
- union all select 5
|
|
|
|
- union all select 6
|
|
|
|
- union all select 7
|
|
|
|
- union all select 8
|
|
|
|
- union all select 9
|
|
|
|
- union all select 10
|
|
|
|
- union all select 11
|
|
|
|
- union all select 12) b;
|
|
|
|
-
|
|
|
|
- INSERT INTO bi_host_stat
|
|
|
|
- select 'DAY' as dtype,substring(thedvalue,1,8) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg
|
|
|
|
|
|
+ a.thedvalue,
|
|
|
|
+ a.COMPANY,
|
|
|
|
+case b.mm when 1 then 'CPU' when 2 then '内存' when 3 then '硬盘'when 4 then 'CPU' when 5 then '内存' when 6 then '硬盘'when 7 then 'CPU' when 8 then '内存' when 9 then '硬盘' when 10 then 'CPU' when 11 then '内存' when 12 then '硬盘' else '' end as target,
|
|
|
|
+case b.mm when 1 then '额定量' when 2 then '额定量' when 3 then '额定量' when 4 then '分配量'
|
|
|
|
+ when 5 then '分配量' when 6 then '分配量'when 7 then '剩余可用' when 8 then '剩余可用' when 9 then '剩余可用' when 10 then '分配占比' when 11 then '分配占比' when 12 then '分配占比' else '' end as dim,
|
|
|
|
+round(case b.mm when 1 then dim1 when 2 then dim2 when 3 then dim3 when 4 then dim4 when 5 then dim5 when 6 then dim6 when 7 then dim7 when 8 then dim8 when 9 then dim9 when 10 then IF(dim1<>0,dim4/dim1,0) when 11
|
|
|
|
+ then IF(dim2<>0,dim5/dim2,0) when 12 then IF(dim3<>0,dim6/dim3,0) else null end ,2) as dim_value,
|
|
|
|
+case b.mm when 1 then 'avg' when 2 then 'max' when 3 then 'max'when 4 then 'avg' when 5 then 'max' when 6 then 'max'when 7 then 'avg' when 8 then 'max' when 9 then 'max' else 'avg' end as group_agg,
|
|
|
|
+case b.mm when 1 then 'GB' when 2 then 'GB' when 3 then 'GB' when 4 then 'GB'
|
|
|
|
+ when 5 then 'GB' when 6 then 'GB'when 7 then 'GB' when 8 then 'GB' when 9 then 'GB' when 10 then '%' when 11 then '%' when 12 then '%' else '' end as unit,
|
|
|
|
+ cloud from (
|
|
|
|
+ SELECT
|
|
|
|
+ date_format( temp1.CREATE_TIME, '%Y%m%d%H' ) AS thedvalue,
|
|
|
|
+ CASE
|
|
|
|
+ temp1.COMPANY
|
|
|
|
+ WHEN 'huawei' THEN
|
|
|
|
+ '太极云资源池'
|
|
|
|
+ WHEN 'huawei-xc' THEN
|
|
|
|
+ '信创云资源池'
|
|
|
|
+ WHEN 'shouxin' THEN
|
|
|
|
+ '首信云资源池'
|
|
|
|
+ WHEN 'unicom' THEN
|
|
|
|
+ '联通云资源池' ELSE '其它'
|
|
|
|
+ END AS COMPANY,
|
|
|
|
+ avg( IND_VALUE_HOST_CPU_UTILIZATION ) AS dim1,
|
|
|
|
+ MAX( IND_VALUE_HOST_MEMORY_TOTAL ) AS dim2,
|
|
|
|
+ MAX( IND_VALUE_HOST_DISK_TOTAL ) AS dim3,
|
|
|
|
+ avg( IND_VALUE_HOST_CPU_TOP ) AS dim4,
|
|
|
|
+ MAX( IND_VALUE_HOST_MEMORY_USED ) AS dim5,
|
|
|
|
+ MAX( IND_VALUE_HOST_DISK_USED ) AS dim6,
|
|
|
|
+ avg( IND_VALUE_HOST_CPU_UTILIZATION_LOW ) AS dim7,
|
|
|
|
+ MAX( IND_VALUE_HOST_MEMORY_UNUSED ) AS dim8,
|
|
|
|
+ MAX( IND_VALUE_HOST_DISK_UNUSED ) AS dim9,
|
|
|
|
+ temp2.cloud
|
|
|
|
+ FROM
|
|
|
|
+ app_host_stat temp1
|
|
|
|
+ LEFT JOIN itm_hardware_resources AS temp2 ON temp1.int_id = temp2.ITM_HARDWARE_RESOURCES_ID
|
|
|
|
+ WHERE
|
|
|
|
+ temp1.COMPANY IS NOT NULL
|
|
|
|
+ GROUP BY
|
|
|
|
+ temp1.COMPANY,
|
|
|
|
+ date_format( temp1.CREATE_TIME, '%Y%m%d%H' ),
|
|
|
|
+ temp2.cloud
|
|
|
|
+ ) a
|
|
|
|
+ cross join
|
|
|
|
+ (select 1 mm
|
|
|
|
+ union all select 2
|
|
|
|
+ union all select 3
|
|
|
|
+ union all select 4
|
|
|
|
+ union all select 5
|
|
|
|
+ union all select 6
|
|
|
|
+ union all select 7
|
|
|
|
+ union all select 8
|
|
|
|
+ union all select 9
|
|
|
|
+ union all select 10
|
|
|
|
+ union all select 11
|
|
|
|
+ union all select 12) b;
|
|
|
|
+
|
|
|
|
+INSERT INTO bi_host_stat
|
|
|
|
+ select 'DAY' as dtype,substring(thedvalue,1,8) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'avg' AND dtype = 'HOUR'
|
|
where group_agg = 'avg' AND dtype = 'HOUR'
|
|
- GROUP BY substring(thedvalue,1,8),COMPANY,target,dim,group_agg
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,8),COMPANY,target,dim,group_agg,unit,cloud
|
|
UNION ALL
|
|
UNION ALL
|
|
- select 'DAY' as dtype,substring(thedvalue,1,8) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg
|
|
|
|
|
|
+ select 'DAY' as dtype,substring(thedvalue,1,8) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'MAX' AND dtype = 'HOUR'
|
|
where group_agg = 'MAX' AND dtype = 'HOUR'
|
|
- GROUP BY substring(thedvalue,1,8),COMPANY,target,dim,group_agg;
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,8),COMPANY,target,dim,group_agg,unit,cloud ;
|
|
|
|
|
|
INSERT INTO bi_host_stat
|
|
INSERT INTO bi_host_stat
|
|
- select 'MONTH' as dtype,substring(thedvalue,1,6) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg
|
|
|
|
|
|
+ select 'MONTH' as dtype,substring(thedvalue,1,6) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'avg' AND dtype = 'DAY'
|
|
where group_agg = 'avg' AND dtype = 'DAY'
|
|
- GROUP BY substring(thedvalue,1,6),COMPANY,target,dim,group_agg
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,6),COMPANY,target,dim,group_agg,unit,cloud
|
|
UNION ALL
|
|
UNION ALL
|
|
- select 'MONTH' as dtype,substring(thedvalue,1,6) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg
|
|
|
|
|
|
+ select 'MONTH' as dtype,substring(thedvalue,1,6) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'MAX' AND dtype = 'DAY'
|
|
where group_agg = 'MAX' AND dtype = 'DAY'
|
|
- GROUP BY substring(thedvalue,1,6),COMPANY,target,dim,group_agg;
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,6),COMPANY,target,dim,group_agg,unit,cloud;
|
|
|
|
|
|
INSERT INTO bi_host_stat
|
|
INSERT INTO bi_host_stat
|
|
- select 'YEAR' as dtype,substring(thedvalue,1,4) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg
|
|
|
|
|
|
+ select 'YEAR' as dtype,substring(thedvalue,1,4) AS thedvalue,COMPANY,target,dim,AVG(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'avg' AND dtype = 'MONTH'
|
|
where group_agg = 'avg' AND dtype = 'MONTH'
|
|
- GROUP BY substring(thedvalue,1,4),COMPANY,target,dim,group_agg
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,4),COMPANY,target,dim,group_agg,unit,cloud
|
|
UNION ALL
|
|
UNION ALL
|
|
- select 'YEAR' as dtype,substring(thedvalue,1,4) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg
|
|
|
|
|
|
+ select 'YEAR' as dtype,substring(thedvalue,1,4) AS thedvalue,COMPANY,target,dim,MAX(dim_value),group_agg,unit,cloud
|
|
from bi_host_stat
|
|
from bi_host_stat
|
|
where group_agg = 'MAX' AND dtype = 'MONTH'
|
|
where group_agg = 'MAX' AND dtype = 'MONTH'
|
|
- GROUP BY substring(thedvalue,1,4),COMPANY,target,dim,group_agg;
|
|
|
|
-
|
|
|
|
|
|
+ GROUP BY substring(thedvalue,1,4),COMPANY,target,dim,group_agg,unit,cloud;
|
|
|
|
|
|
|
|
|
|
|
|
|