数据热图与内存计算自动化协同优化
timization(ADO)选件,该选件基本上可以做到磁盘间移动、压缩等数据生命周期管理动作。除内存计算的数据生命周期管理外,其他磁盘与压缩类操作可以通过策略引擎直接配合ADO完成。如果不采用ADO基于策略引擎的规则,开发自定义JOB完成在线数据移动也非常方便,所以,问题的重点是内存计算的数据生命周期管理。
内存计算的数据生命周期管理组件模型如
任务管理模块负责接收决策引擎的请求,并负责整个执行过程的监控管理。数据操作模块是对数据库进行数据移动操作的模块,该模块可以对接OracleADO选件,完成数据在磁盘存储上的压缩、存储分级等操作[12]。本文中主要研究的是通过策略引擎驱动,将数据加载到内存中完成内存计算。
4 自动化协同算法实现
自动化协同具体的实现基于Oracle Database12.1.0.2,该版本引入了Oracle Database In-Memory,支持混合分析和事务性工作负载。代码的开发基于Oracle Database Stored Procedure,系统层面数据收集采用Bash结合Oracle Database External Tables的方式。
4.1 策略引擎算法实现建模
策略引擎是关键的部分,解析策略并将策略与数据模型或数据工作负载关联起来,以及通过元数据传递策略和模型,策略引擎不仅是挑战的难点,也是实现最大价值的关键所在。
策略引擎实现建模如
策略引擎工作的前提是在关系型数据库Oracle Database12.2.0.1中打开Heat Map。
altersystemsetheat_map=on;
对照热图数据,检索策略库,触发条件后将request提交至数据生命周期管理引擎;考虑到策略引擎与数据生命周期管理引擎之间接口的强壮性,request进入队列后采用3次重试的方式,3次都失败后计入建议表,等待人工介入进行故障处理。
策略引擎中的各项阈值根据需要可以进行调整,包括冷热数据的标准。策略引擎的调度依据也与数据集的大小有密切关系,不同的数据量决定了数据的存储位置。
4.2 数据生命周期管理引擎算法实现
数据库生命周期管理是管理数据库和数据资产的基于策略的方法,不是一种产品,而是一种用于管理数据库应用程序的数据库模式及数据和元数据的方法。数据生命周期管理引擎采用主动的方法使组织管理数据,在满足性能要求的情况下,保证可用性和节省成本[13-14]。
数据生命周期管理引擎负责策略的执行,在不同存储层级之间迁移数据,数据生命周期管理引擎实现建模如
数据生命周期管理引擎收到策略引擎的request后,首先判断是否满足自动执行的条件,是否能自动执行取决于用户的预定义参数。然后检查系统状态是否满足执行条件,如系统负载、文件系统空间。
操作系统的状态监控本文采用外部表的方式。首先把需要执行的命令编写为脚本文件,然后将结果输出成文本文件,以外部表形式挂接到数据库。以文件系统空间监控为例,创建df脚本,创建外
部表:
create table df
2 (
3 fsname varchar2(100),
4 blocks number,
5 used number,
6 avail number,
7 capacity varchar2(10),
8 mount varchar2(100)
9 )
10 organization external
11 (
12 type oracle_loader
13 default directory exec_dir
14 access parameters
15 (
16 records delimited
17 by newline
18 preprocessor
19 exec_dir:’run_df.bsh’
20 skip 1
21 fields terminated by
22 whitespace ldrtrim
23 )
24 location
25 (
26 exec_dir:’run_df.bsh’
27 )
28 )
29 /
Table created.
在数据库内部通过查询语句即可获得空间监控数据:
SQL> select * from df;
FSNAME BLOCKS USED AVAIL CAPACITY MOUNT
------------------------------ -----------
orapool1/ora01 629145600 382371882 246773718 61% /ora01
orapool2/ora02 629145600 429901326 199244274 69% /ora02
orapool1/ora03 629145600 415189808 213955792 66% /ora03
orapool2/ora04 629145600 343152974 285992626 55% /ora04
按照上面的例子,可以同理开发出其他系统CPU、内存等各种监控,其他如内存列式缓存区域大小都可以通过Oracle SQL获得。
5 验证测试
为验证本文方案可行性,在电能计量系统(用电信息采集系统)的3个关键场景进行了测试。通
过自动优化引擎优化后的3个查询业务均得到大幅度的提升。优化之后系统压力显著下降,CPU空闲率从40%提升到90%(见
对比3个关键业务的查询时间,查询效率明显提升,业务响应时间对比如
6 结语
本方案整合数据热图、数据生命周期管理和数据存储技术,与内存计算相结合,主要用于关系型数据库,优化分析类操作业务。在关系型数据库内部建模,通过数据热图跟踪数据使用情况,进而建立数据访问模型,由决策引擎根据策略库计算得到内存技术优化方案;由数据生命周期管理引擎完成数据移动的具体操作。
通过对数据使用的特点进行分析,从而选择出最适合加载到内存中进行内存计算的数据。通过最优化的内存使用方案,使得内存的使用效率达到最佳,在节约硬件成本的同时,提高系统处理效率。由于可以实时优化,避免了以往优化工作滞后的问题,同时可以减少优化的工作量,节省人力物力,降低了成本。
(编辑:张京娜)
参考文献
[1]
责任编辑:售电衡衡
-
权威发布 | 新能源汽车产业顶层设计落地:鼓励“光储充放”,有序推进氢燃料供给体系建设
2020-11-03新能源,汽车,产业,设计 -
中国自主研制的“人造太阳”重力支撑设备正式启运
2020-09-14核聚变,ITER,核电 -
探索 | 既耗能又可供能的数据中心 打造融合型综合能源系统
2020-06-16综合能源服务,新能源消纳,能源互联网
-
新基建助推 数据中心建设将迎爆发期
2020-06-16数据中心,能源互联网,电力新基建 -
泛在电力物联网建设下看电网企业数据变现之路
2019-11-12泛在电力物联网 -
泛在电力物联网建设典型实践案例
2019-10-15泛在电力物联网案例
-
权威发布 | 新能源汽车产业顶层设计落地:鼓励“光储充放”,有序推进氢燃料供给体系建设
2020-11-03新能源,汽车,产业,设计 -
中国自主研制的“人造太阳”重力支撑设备正式启运
2020-09-14核聚变,ITER,核电 -
能源革命和电改政策红利将长期助力储能行业发展
-
探索 | 既耗能又可供能的数据中心 打造融合型综合能源系统
2020-06-16综合能源服务,新能源消纳,能源互联网 -
5G新基建助力智能电网发展
2020-06-125G,智能电网,配电网 -
从智能电网到智能城市