数字化信息平台Oracle数据库空闲碎片整合

(整期优先)网络出版时间:2022-09-05
/ 2

数字化信息平台Oracle数据库空闲碎片整合

邢姝

大庆油田有限责任公司第九采油厂数字化运维中心  邮编:163000

摘要:为了充分解决传统工作中随着数据量增加吞吐量减少的问题,造成数据无法快速恢复等问题,提出一种Oracle数据库碎片整合技术。对此,本文介绍了空闲碎片形成机理,提出了Oracle数据库碎片整合策略,并开展仿真实验工作,结果显示,该方法整体整合效果良好。

关键词:Oracle数据库;在空闲碎片;整合策略

前言:当前,信息技术快速发展,推动社会朝着大数据时代方向发展。通过相关研究结果显示,Oracle数据库中空闲数据在整体储存数据的占比超出60%,并且在时间不断推移过程中,空闲数据也持续增多。基于数据量快速增加背景下,碎片数据整合计数是强化数据库的空间效率关键技术[1]

1空闲碎片形成机理

表空间产生一段之后,在表空间的有效自由空间是该段初始阶段的分配空间。初始阶段数据储量达到最大限制后,段请求在其他区域开展数据储存工作,不断拓展,或是表空间中没有自由空间。段中所有数据均处于相邻状态,确定数据就能够节省指针。但是段中部分区域较为复杂,缺乏有利技术为数据在区域中的邻接保存提供保障。基于达到空间规范标准条件,Oracle数据库无法合并相邻空间内容,通常选择最大适配方法,即采用空闲最大值部分,以充分获得较小的、离散的以及增多的空闲内容,即碎片。

对于表空间,空闲碎片主要是表空间的邻接空闲数据集合,撤销某段之后,会对其中区进行空闲部分标识处理。此部分并非始终合并相邻空闲,二者之间会始终保持良好界限。

若是不合并空闲碎片,则基于Oracle数据库的下空间将请求发出的条件,Oracle数据库不会整合邻近空闲碎片。因此,通常会采用表空间后面更大空闲区,并不会选择靠前较小空间区域。最终因为没有对空间进行充分使用,使得表空间形成“速度颠簸”问题。上述过程能够可能造成Oracle数据库的理想分配状况与空间分配状况产生较大差异。同时,碎片化还会导致数据呈现分散分布状况,在Oracle数据库开展数据存取操作过程中,磁头会快速移动,严重影响系统性能。在空闲区中虽然能够在后台开展周期性合并操作,但是无法对全部空闲区展开自动整合处理,使得一些表空间价值无法充分发挥出来[2]

基于理想表空间,各个数据库通过独立区域进行保存,另外,可用空间都保持在连续、较大区域中,在寻找某数据对象的储存空间过程中,不仅需要获得足够储存空间,同时在回收过程中最小化地循环调用量。

2 Oracle数据库碎片整合策略

结合Oracle数据库碎片产生原因以及现有整合技术,设计Oracle数据库整合方法过程中,主要是在已有在线分段收缩高水位技术整合Oracle数据库数据库,另外,整合Oracle数据库碎片的整理流程,在碎片收集、整理以及通知等方面自动化设计Oracle数据库的整合技术。功能需求如下:

(1)采集单元。要求该单元能够自动化分析Oracle数据库已有表格,开展分析工作时,借助对应用户碎片率以及大小开展控制,对象用户最终输出值低于碎片率、同时在该达标数据以内的数据开展参数记录工作。进行采集单元设计过程中,应该对相关参数可配置进行分析,借助配置完成人工操作收集规则以及输出结果,配置参数涵盖规模大小、用户表名以及段集合等,借助此类参数控制能够针对各用户表格,向下步收缩单元输出特定碎片化参数[3]

(2)收缩单元。选择在线分段收缩高水位技术收缩处理相应碎片,实现过程为:

①迁移碎片表。②备份数据以及结构。此环节通过临时表收集所需数据,选择命令操作。③在线段收缩。此环节主要涵盖以下流程:第一,将原表删除,选择命令操作。第二,还原表,选择命令操作。第三,重建索引,选择命令操作。④表分析。⑤对执行过程分析,生成执行日志。

通过上述流程能够更改HWM数值,进而在有效信息段位收缩背景,整合以及优化碎片空间,充分强化数据库空间利用率以及访问性能。

(3)通知单元。为了实现碎片的自动化整合流程,流程执行均选择工具脚本实现,因此对整合过程进行最终完成时,应该设置通知单元,借助通知单元对收缩单元执行日志进行扫描,输出短信向管理人员以及联系人发送通知,进而对碎片整合进行自动化整合。借助该方法建立脚本工具,进而对碎片采集、日志管理进行自动化处理。

3仿真实验

为了对碎片整合方案可行性以及有效性进行验证,根据相应方法建立仿真环境,通过Oracle数据库开展仿真实验,建立碎片整理、数据表以及生成碎片表等方面开展验证分析工作。

3.1数据表以及生成碎片表

第一,为了获得良好测试环境,基于Oracle数据库建立数据表,同时借助脚本对表开展数据处理,数据行数在1382万左右,数据量在1.56G左右,BLOCKS数量在2万个左右,单个BLOCKS主要是8K,根据安装参数进行确定,对这张表进行全表扫描,能够发现相应COST是55381,见下图。

图1数据生成结果

插入数据之后,通过数据库对DELETE命令有效执行,删除表的数据,形成碎片,之后全表扫描,查询数据虽然是0条,然而查询TIME、COST并未发生变化,如此,即为实验测试提供良好碎片环境。

3.2自动化整理碎片数据

收集碎片数据,该模块完成执行操作后,获得仿真条件碎片数据,同时转化为制定格式向后续单元输入。另外,借助Oracle数据库的管理工具进行查看,收集工作结束后,碎片表即进入到今日碎片整合列表中。见下图。

图2整合列表

在列表中,通过整合单元处理碎片数据,进而压缩处理碎片表收段。收集单元完成操作后,系统会结合整合列表任务信息,自动执行收缩单元以及校验单元,最终结果显示整合成功[4]

检查执行完成结果,借助命令对操作日志进行检查,数据表中信息由20多万BLOCKS减少至8个。对相应cost数据进行检查,发现整个系统cost信息由5万多减少的2个,并且time也减少至对应1。体现出手段压缩较为成功,碎片高质量、高效率完成整合。

3.3通知单元实验

通知单元仿真实验,可以按照部署生产营销环境之后的脚本执行状况进行。同时通知单元能够产生相关报表,碎片整合状况报表数据见下图。

图3通知单元报表信息

结语:综上所述,本文设计一种Oracle数据库的碎片化信息整合策略。通过仿真测试能够发现,系统cost信息由5万多减少的2个,数据通知报表信息明确,可以促使Oracle数据库快速恢复,可以有效实现误差控制,针对空闲碎片具有良好整合效果,可以开展应用推广工作。

参考文献:

[1]李靖, 王林飞, 闫浩飞. 基于Oracle数据库的航磁异常自动渲染技术[J]. 物探与化探, 2020(01):6-6.

[2]刘军. 一种ORACLE数据库系统以及DataGuard环境部署方法和数据库切换方法: 人民邮电出版社, CN112764967A[P]. 2021.

[3]熊学锋、彭小庆、曹鑫. 基于改进ORM的Oracle数据库异构资源整合方法研究[J]. 电子设计工程, 2020, 28(21):5-5.

[4]冯燕茹, 潘志安, 贾琴琴,等. 以人才培养目标为导向的Oracle数据库差异化教学实践[J]. 教育教学论坛, 2019, (10):136-137.