Oracle实例之HWM(高水位线)性能优化

作者: 云计算机网 分类: 云安全 发布时间: 2017-05-10 10:58

最近BI同事反馈说一张表的数据查询非常慢,这个表数据总共不到1W行数据,这么一说我们首先想到的是高水位带来的性能问题,即高水位线下占用过多数据块,而这些数据块其实是部分数据占用,大多数是空闲的数据块。

我们知道高水位线下的数据块在全表扫描时都要做,所以扫描的数据块可能远远多于实际的存数据的数据块。

一、表统计信息收集

要想得到准确的高水位信息,必须先收集统计信息,这样得到的才相对比较准确。

ANALYZE TABLE table_name ESTIMATE STATISTICS;

ANALYZE TABLE table_name COMPUTE STATISTICS FOR TABLE FOR ALL INDEXES FOR ALL INDEXED COLUMNS;

execute dbms_stats.gather_table_stats(ownname =gt; 'OWNER', tabname =gt; 'TABLE_NAME' , estimate_percent =gt; null ,method_opt =gt; 'for all indexed columns' ,cascade =gt; true);

二、表信息查看

查看表的块、行信息

select t.TABLE_NAME,t.NUM_ROWS,t.BLOCKS,t.empty_blocks,t.LAST_ANALYZED from dba_tables t where table_name in ('TABLE_NAME');

SELECT COUNT(DISTINCT DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)) USED_BLOCK FROM TABLE_NAME;

上述查询结果显示,当前表行数是9651行,有716119个数据块被使用(HWM下的数据块),有0个未使用的数据块(HWM上的数据块)

实际数据占用的数据块数量为:152

综合可以看出,高水位线下其实有716119-152个数据块可以释放,这样每次全表扫描只需要扫描152个数据块即可。

通过查看段大小佐证记录数和表大小关系是否一致,通过下面的查看段大小为5.5G,记录9651行几乎不可能达到这个大小,所以基本可以断定个里面有很多空闲的块。

select segment_name,bytes/1024/1024/1024 TSize_GB from dba_segments where segment_name='table_name' ---5876219904

三、问题原因

什么情况会导致上面的问题呢,即高水位下存在很多未使用的数据块?一般是大表(插入很多记录后),经过批量删除delete操作,未释放高水位导致的。

1.全表扫描要读取高水位线下的所有数据块,无论是否含有数据。
2.如果在插入数据的时候使用了append关键字,即使高水位线下有空闲的数据库,也会从高水位线上面的数据库做分配,也就是高水位线会上升。

四、降低高水位方法

1. alter table table_name move;
此方法可释放高水位,但需要重建索引
2.alter table table_name shrink space;
此方法可释放高水位,但执行前需要开启行移动,alter table table_name enable row movement;
3.emp/imp的方式重建表数据
4.drop/create方式重建表
5.truncate表
6.alter table table_name deallocate unused
DEALLOCATE UNUSED为释放HWM上面的未使用空间,但是并不会释放HWM下面的自由空间,也不会移动HWM的位置.

  • 【赛迪网-IT技术讯】最近有网友反馈称,自己的QQ邮箱收到联系人发来的“桌面雪花”附件,尽管该附件通过了邮箱自带的杀毒引擎扫描,运行后电脑却变得异常缓慢,怀疑其带有病毒。

    经过360安全中心分析,“桌面雪花”确实是一个伪装屏保程序的病毒下载器,如果有网友运行过该程序,应尽快进行查杀。

    360安全中心发现,“桌面雪花”之所以会突破一些杀毒引擎的扫描,是由于它采用了巧妙的方法把病毒分为两部分:一部分是不带有恶意代码的“桌面雪花”屏保,另一部分是ini配置文件,也不可能单独作为病毒。

    然而当这两部分组装在一起,“桌面雪花”就会摇身一变成为恶性病毒下载器,就像金庸武侠小说《倚天屠龙记》中的“醉仙灵芙”和“奇鲮香木”,两个无毒物品的香气混合在一起,就变得剧毒无比。

    据介绍,“桌面雪花”病毒会偷偷下载大批广告程序,极度消耗电脑内存,并且会占用大量带宽,使受害电脑的上网速度急剧下降。

    更可怕之处在于,一旦“桌面雪花”病毒攻陷一台电脑,就会控制受害者的QQ邮箱,自动向联系人群发带毒邮件,邮件标题为“超级漂亮的桌面雪花”,因此具备了非常强的扩散能力。

    360安全中心监测数据表明,该病毒至少已造成8万到10万台电脑中招。

    专家建议,网友们在收到朋友发来“桌面雪花”等邮件时,切勿下载点击邮件附件,同时应提醒对方尽快查杀病毒,以免殃及更多网友电脑中招。

    图1:“桌面雪花”通过邮件附件传播

    图2:“桌面雪花”病毒由time.ini配置文件控制行为

    (责任编辑:admin)

  • 相关推荐:

  • 伪装屏保程序“桌面雪花
  • 网络技巧之无线网络的稳
  • 无线网络通信学习之LT
  • 无线通信网络学习之LT
  • 一体化网络之无线网络设
  • 无线通信维护之一体化机
  • 以前诺基亚手机Wi
  • 信锐科技:5A级景区世界
  • 河西学院畅享无线校园网
  • 据报道《暗黑破坏神:恐
  • 网站内容禁止违规转载,转载授权联系中国云计算网