51 OCP Oracle数据库认证精品辅导班8期

Oracle 调整ORacle竞争


Oracle的优势之一是它可以管理每个表空间中的空闲空间。Oracle负责表和索引的空间管理,所以我们不需要了解Oracle表和索引的内部操作。然而,对于经验丰富的Oracle调优专家来说,他需要了解Oracle如何管理表的区段和空闲数据块。这是非常重要的调整系统高插入或更新。
要掌握对象调优,您需要理解自由列表和自由列表组的行为,它们与pctfree和pctused参数的值相关。这一知识对于企业资源规划(ERP)的应用尤其重要,因为在这些应用程序中,不正确的表设置通常是导致DML语句执行缓慢的原因。

https://pan.baidu.com/s/18lHMEwvKcQ2AqUXobaEBdQ?pwd=6kiw
对于初学者来说,最常见的错误是假设默认的Oracle参数对于所有对象都是最优的。除非磁盘消耗不是问题,否则在设置表的pctfree和pctused参数时必须考虑平均长度和数据库块大小,以便将空块有效地放入自由列表中。当这些设置不正确时,获得的自由列表也是“死”块,因为它们没有足够的空间存储一行,这将导致显著的处理延迟。


在Oracle表空间中,自由列表对于有效地重用空间非常重要。它与pctfree和pctused存储参数的设置直接相关。通过将pctused设置为一个较高的值,数据库将尽可能快地重用块。然而,高性能与有效重用表块是对立的。在调整Oracle表和索引时,需要仔细考虑是否需要高性能或有效的空间重用,并相应地设置表的参数。让我们看看这些自由列表是如何影响Oracle的性能的。


当一个请求需要向表中插入一行时,Oracle会到自由列表中寻找一个有足够空间容纳一行的块。您可能知道,自由列表字符串被放置在表或索引的第一个块中,这也被称为段头。pctfree和pctused参数的唯一目的是控制块如何进出自由列表。虽然freelist link和unlink是简单的Oracle函数,但是设置freelist link (pctused)和unlink (pctfree)确实会影响Oracle的性能。


根据DBA的基本知识,pctfree参数控制自由列表UN链接(也就是说,从自由列表中删除块)。设置pctfree = 10意味着每个块的10%被保留用于行扩展。pctused参数控制自由列表的重新链接。设置pctused = 40意味着只有当块的使用少于40%时,它才会返回到表的自由列表。


许多新手在返回到自由列表后会对块的处理产生误解。事实上,一旦一个数据块因为删除操作被再次添加到自由列表中,它将一直留在自由列表中,即使空间使用率超过60%,只有当数据块达到pctfree时,才会从自由列表中移除。

表和索引存储参数设置的需求摘要


以下规则用于设置自由列表、自由列表组、pctfree和pctused存储参数。如您所知,可以通过alter table命令轻松地修改pctused和pctfree的值。优秀的DBA应该知道如何设置这些参数的最佳值。
有效利用空间和高性能之间存在着矛盾,而表的存储参数控制着这个矛盾:
。您可以为需要有效重用的空间设置一个较高的pctused值,但副作用是需要额外的i/o。较高的pctused值意味着相对完整的块被放入自由列表中。因此,这些块在再次填满之前只能接受几行记录,从而导致更多的I / O。
。为了追求高性能,pctused可以设置为一个较低的值,这意味着Oracle不会将数据块放入自由列表,直到它几乎为空。然后,块将能够在它被填满之前接收更多的行,从而减少插入操作的I / O。请记住,与重用现有块相比,Oracle扩展新块的性能更好。对于Oracle扩展表,它比Oracle扩展表消耗更少的资源。
让我们回顾一些设置对象存储参数的常见规则:
Pctused通常设置为接收新线路。对于不能接受一行的空闲块,它对我们是无用的。这样做会降低Oracle的性能,因为Oracle将尝试读取5个“死”的空闲块,然后扩展表以获得一个空块。
表中链式行的出现意味着pctfree太低或dB_ block_太少。在许多情况下,raw和long raw列非常大,以至于超过了Oracle的最大块大小。此时,链结行是无法避免的。
如果一个表同时插入了SQL语句,那么它需要同时删除语句。运行单个清理将把所有空闲块放入一个自由列表中,并且不会出现其他包含任何空闲块的自由列表。
的。Freelist参数应该设置为表同时更新的最大值。例如,如果一个表在任何时候最多有20个用户执行插入操作,那么表的参数应该设置为freelists = 20。
请记住,freelist groups参数的值只对Oracle并行服务器和实际应用程序集群有用。对于这种类型的Oracle,自由列表组应该设置为访问表的Oracle并行服务器实例的数量。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值