latch分类

oracle 9201起,oracle根据不同的spin_countlatch进行了分类。

为什么要进行这样的分类了?

因为以前版本中,改一个latchspin_count,会牵一发而动全身,让所有latchspin_count都被同样地改变了。这种做法明显不太具有实际应用的可行性。所以oracle根据不同的spin_countlatch分成了8类,说明你可以把系统中的latch按它们的不同spin_count分成8类,但它们的系统默认值spin_count都是16000

这样做有什么应用前景?

可以根据系统自身资源使用情况,针对不同latch不同资源使用特点,优化各个latchspin_count.如某个latchspin成功率很不高,而系统又给进程很多cpu time让它spin,这些cpu time就比较浪费。所以可以把spin_count减少,以优化资源使用。如果系统cpu资源非常充裕,那么完全可以增加重要latchspin_count,以减少可能的sleep.

如何改变一个latchspin_count值了?实验如下:

SQL> select indx, spin, yield, waittime from x$ksllclass;

INDX SPIN YIELD WAITTIME

---------- ---------- ---------- ----------

0 16000 0 1

1 16000 0 1

2 16000 0 1

3 16000 0 1

4 16000 0 1

5 16000 0 1

6 16000 0 1

7 16000 0 1

已选择8行。

SQL> select a.kslldnam, b.kslltnum, b.class_ksllt

2 from x$kslld a, x$ksllt b

3 where a.kslldadr = b.addr

4 and b.class_ksllt=2;

KSLLDNAM KSLLTNUM CLASS_KSLLT

------------------------------ ---------- -----------

process allocation 3 2

修改参数,重新启动数据库.

_latch_class_3 =10000

_latch_classes =154:2

SQL> select indx, spin, yield, waittime from x$ksllclass;

INDX SPIN YIELD WAITTIME

---------- ---------- ---------- ----------

0 16000 0 1

1 16000 0 1

2 10000 0 1

3 16000 0 1

4 16000 0 1

5 16000 0 1

6 16000 0 1

7 16000 0 1

已选择8行。

SQL> select a.kslldnam, b.kslltnum, b.class_ksllt

2 from x$kslld a, x$ksllt b

3 where a.kslldadr = b.addr

4 and b.class_ksllt=2;

KSLLDNAM KSLLTNUM CLASS_KSLLT

------------------------------ ---------- -----------

process allocation 3 2

shared pool 154 2

从这里可以看出shared pool latch已经是2类,而从前面可以看到2类的_spin_count10000。不是默认的16000.

修改指定的latchspin_count完成。

oracle里还有一种分类。即把latch分为父子和独立。

何为独立,不是父也不是子不涉及父子关系的就是独立。

父子平等。

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7248175/viewspace-918940/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/7248175/viewspace-918940/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值