首  页  论  坛 登  录  注  册 用户中心 风  格 论坛状态  会  员 最新贴子 灌水宝贝  搜  索 短消息 博客   社区监狱 聊天室 退出
  当前位置:  论坛首页 »  Oracle技术讨论 »  DBA日记讨论区
发新贴子 回复贴子 您是本帖第 1238个阅读者     浏览上一篇主题    刷新本主题   浏览下一篇主题
9101/1页1
 主题:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外 [全部贴] [楼主贴] [打印] [收藏]
白鳝
客户
等级:超凡入圣
经验:82704
信用:6320
金币:123533
发贴:1236
精华:1
注册:2006-6-28
状态:在线
 (0)     (0)
版块置顶  锁定  置为精华  改变显示颜色 
白鳝的个人资料   发送短消息息给白鳝   发送电邮给白鳝   复制这个帖子   引用回复这个帖子   回复这个帖子      

 DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外

327日 简单任务 (4更大的意外

昨天晚上调整了表结构,我建议把REDO LOG也相应做些调整。目前南坪系统的LOG BUFFER1MREDO LOG文件大小是61M,人和系统的LOG BUFFER120KREDO LOG文件大小是100M,不过人和系统每个日志组有2个成员。对于这种REDO量十分高的系统,使用2个成员虽然增加了可靠性,但是对性能的负面影响也是很大的。因此我建议将人和系统的REDO LOG成员改为1个。

昨天晚上调整建表脚本的同时,我针对数据库进行了一些调整,其中SGAREDO的调整如下:

参数

当前值

建议值

设置原则

DB CACHE SIZE

NP:3072M

RH:2048M

NP:4096M

RH:2048M

对于本系统,在内存充足的情况下,设置DB CACHE,尽量使DB BUFFER的命中率提高。如果人和系统扩容后内存充足,增加DB CACHE的大小,可以提高查询和单条INSERT的性能(如不使用FORALL操作)

DB KEEP SIZE

未设置

NP:300M

RH:300M

HISTABLE以外的常用对象放入KEEP

LOG BUFFER

NP: 1024000

RH: 124416

NP:20M

RH:20M

设置LOG BUFFER的原则是使系统在忙时不出现log buffer space等待

SHARED POOL SIZE

NP: 314572800

RH: 318767104

NP:400M

RH:400M

设置比较合理的时候,不会出现较多的LIBRARY CACHESHARED POOL闩锁等待

REDO LOG文件

NP:61M

RH:100M

2000M

业务高峰期,减少日志切换

南坪系统的REDO LOG文件以前存放在HDISK2上,而UNDO,TEMP以及一部分索引所在的表空间也使用了HDISK2,为了减少IO方面的争用,把这些索引存放在其他表空间上,同时把UNDO表空间移到HDISK3上。

对于SM_HISTABLE参数调整如下:

南坪和人和平面的SM_HISTABLE表的存储参数设置建议如下:

参数

当前值

建议值

说明

FREELISTS

1

8

不小于最大并发插入进程的数量

INITIAL

64K

8M

NEXT

64K

8M

INITRANS

未设置

8

对于南坪和人和平面的SM_HISTABLE表的索引的存储参数设置建议如下:

参数

当前值

建议值

说明

FREELISTS

1

8

不小于最大并发插入进程的数量

INITIAL

64K

4M

最小设置为2M

NEXT

64K

4M

最小设置为2M

INITRANS

未设置

8

昨天晚上停了1个小时数据库,还好华为的短信平台设计的很灵活,数据库停止后,所有的话单被暂存在内存中,内存缓冲区满和后会转储到文件中。因此停数据库对短信业务并无影响。数据库重启后,1小时的短信话单被集中写入,事后经过业务部门的确认,最高峰的时候,南坪和人和系统短信话单的插入数量达到了惊人的5800/秒,而从系统监控上看,CPU负载不到50%IO负载也在40%左右,看样子系统还是有很大潜力的,以这样的性能情况来看,这个项目应该可以圆满的结束了。

按照以往的惯例,做完实施后的第二天早上我早早就到了客户现场,系统运行的很平稳,CPU使用率在20以下,IO也很小。这是我意料之中的事情,于是我打电话和余经理通报了一下今天的情况。然后进行了两项测试,第一项测试是创建一张和原来一样的表,测试一下调整了REDO后,性能有多大的提升。测试结果让我感到十分惊讶:

基线1RUNID 10

优化前南坪的REDO LOG设置

指标或参数

数值

备注

LOG BUFFER

1000K

日志组数量

8

日志文件大小

60000K

表分区方式

范围

执行次数

50000

执行时间

37968

平均每个INSERT的时间

0.75936

日志切换时间

11

主要等待事件

LOG BUFFER SPACE 

BUFFER BUSY WAIT

LOG SYNC

基线2 (RUNID 11)

优化后的测试基线

指标或参数

数值

备注

LOG BUFFER

20M

日志组数量

3

日志文件大小

1500M

表分区方式

范围

执行次数

50000

执行时间

24189

平均每个INSERT的时间

0.48378

提高57

日志切换时间

5分钟

主要等待事件

BUFFER BUSY WAIT

本次测试是模拟实际生产环境中写入进程的工作,先启动7个插入进程进行插入操作,在第8个进程中使用PROFILER进行跟踪,每个批次插入800条记录,循环50000次。优化前和优化后的性能对比十分惊人,居然性能提升了57%。这是我预想不到的。后来我又在人和的系统上做了一个同样的测试,虽然性能提升没有南坪那么明显,不过性能也提升了38%

我马上给北京的老方打了个电话,告诉他这里的优化效果。老方感到十分惊讶,这个项目真可谓是柳暗花明,原本以为很难搞定的项目居然通过简单的调整了一些参数就取得了这么大的效果。

下午的总结会上,大家心情都不错,小余望着窗外久违的阳光说:“按理说,这么好的天就不应该上班,应该找个茶馆喝茶去”。大家听了都乐了,我说:“干脆我们找个茶馆去开会算了”。任务完成的不错,大家的心情当然就好。

这个优化项目很成功,第二年除夕的时候,我收到了小余的一条短信:“今天系统一切正常,谢谢你,祝你新年愉快”。春节的时候收到远在千里之外的美女的祝福,确实是件很爽的事情。

----------------------------------------------
blog:http://blog.oraclefans.cn/baishan1
xuj@justdb.cn
http://www.justdb.cn
IP:您无权察看 2010-4-19 21:18:22
  楼主   顶端
sky_heaven
等级:初入江湖
经验:218
信用:-22
金币:4916
发贴:2
精华:0
注册:2009-12-9
状态:离线
 (0)     (0)
sky_heaven的个人资料   发送短消息息给sky_heaven   发送电邮给sky_heaven   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外


这个案例结束了。 又有收获,感谢老白。
IP:您无权察看 2010-4-19 21:35:28
  2  楼   顶端
lyd_972
等级:初入江湖
经验:178
信用:42
金币:300
发贴:1
精华:0
注册:2008-12-15
状态:离线
 (0)     (0)
lyd_972的个人资料   发送短消息息给lyd_972   发送电邮给lyd_972   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
很好!!!!!!!!!
IP:您无权察看 2010-4-20 1:15:43
  3  楼   顶端
lyd_972
等级:初入江湖
经验:178
信用:42
金币:300
发贴:1
精华:0
注册:2008-12-15
状态:离线
 (0)     (0)
lyd_972的个人资料   发送短消息息给lyd_972   发送电邮给lyd_972   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
很好!!!!!!!!!
IP:您无权察看 2010-4-20 1:15:51
  4  楼   顶端
lyd_972
等级:初入江湖
经验:178
信用:42
金币:300
发贴:1
精华:0
注册:2008-12-15
状态:离线
 (0)     (0)
lyd_972的个人资料   发送短消息息给lyd_972   发送电邮给lyd_972   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
简单的任务背后 不简单
IP:您无权察看 2010-4-20 1:17:29
  5  楼   顶端
chjlu
等级:初入江湖
经验:102
信用:9
金币:215
发贴:0
精华:0
注册:2010-3-22
状态:离线
 (0)     (0)
chjlu的个人资料   发送短消息息给chjlu   发送电邮给chjlu   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
NP和RH指的是什么?
IP:您无权察看 2010-4-20 9:47:09
  6  楼   顶端
angus_shi
等级:初入江湖
经验:148
信用:27
金币:818
发贴:1
精华:0
注册:2007-8-28
状态:离线
 (0)     (0)
angus_shi的个人资料   发送短消息息给angus_shi   发送电邮给angus_shi   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
呵呵,楼上没有仔细看,南坪和人和 啊
这个case说明了基础工作的重要性。
IP:您无权察看 2010-4-21 15:08:00
  7  楼   顶端
tomzzy
等级:初入江湖
经验:173
信用:37
金币:485
发贴:1
精华:0
注册:2010-7-12
状态:离线
 (0)     (0)
tomzzy的个人资料   发送短消息息给tomzzy   发送电邮给tomzzy   复制这个帖子   引用回复这个帖子   回复这个帖子   

 回复:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
经典,学习了。老白继续
IP:您无权察看 2010-7-30 9:20:37
  8  楼   顶端
killkill
等级:初入江湖
经验:72
信用:4
金币:140
发贴:0
精华:0
注册:2010-5-13
状态:离线
 (0)     (0)
killkill的个人资料   发送短消息息给killkill   发送电邮给killkill   复制这个帖子   引用回复这个帖子   回复这个帖子   

 Re:DBA日记第三部 像Oracle一样思考 3月27日 简单任务 (4)更大的意外
经典啊,学习了。
----------------------------------------------
欢迎访问我的博客: http://killkill.cnblogs.com/
IP:您无权察看 2010-8-3 22:09:46
  9  楼   顶端
9101/1页1
页面运行: 8588 毫秒

Powered by CWBBS 2.1  © 2005-2006 Cloud Web Soft
  Email:webmaster@justdb.cn