关于纠结的recycle pool的设置(r3笔记第5天)

现在生产环境中目前有一个很大的中继表,作为多个流程的数据流动所用,数据量很大。里面有clob字段,加上庞大的数据量,表就显得很臃肿了。

目前在做大批量的数据处理的时候发现了一些问题,事物数在不断增加的情况下,数据的处理速度也在不断的降低。最后出现了一些资源的问题。

在抓取了awr和同事的分析之后,产品部门建议把对应的clob放入recycle pool里面。一方面能够降低buffer cache的负载。让clob的部分尽快的从缓存中不断的刷新。

对于recycle pool的设置没有问题,可以设置db_recycle_cache_size来实现,但是这些操作在生产环境中一定要多评估和分析,因为有一些潜在的问题和风险。

首先就是来看sga中是否有足够的空间,因为这个库在开始的时候没有考虑recycle,keep pool的设置,根据很多的项目的反馈,目前用处还不是很大,所以就没有分配足够的空间,sga绝大部分都给了shared pool, buffer_cache,其他的pool都相应的分配了较少的一部分缓存。

这样如果要分配足够缓存,留给recycle pool的部分就很有限了。估算下来,不到200M左右的样子,直观感觉,这样的设置还不如不设置,可能没达到预期的目标还可能使问题更加严重。

第2个思路就是从sga的其他池中拿出一部分的缓存来,分配给recycle pool,这个思路也是很自然的。或者考虑设置sga_target来调高实现,不过这个部分,自己还是有阴影的。

一条sql语句导致的数据库宕机问题及分析 http://blog.itpub.net/23718752/viewspace-1141131/

所以我是不敢自己往枪口上撞的。

还有一个思路就是根据系统的资源情况来分配更多的sga资源,可以调高sga_max_size,这个部分需要重启数据库实例。如果调高的幅度较大,还需要看看内核参数是否有潜在的影响,是否也需要相应的调高。

这个部分还是有影响的。

服务器增加内存后无法重启数据库的问题及解决 http://blog.itpub.net/23718752/viewspace-1137256/

考虑了如上的一些情况,就给产品部门去了封邮件,让他们来帮助评估一下设置的recycle pool最小或者建议值是多少,我来根据这个参数来考虑使用哪种方法。因为产品部门这方面要更专业一些。

自己琢磨了半天,最后的结果也不一定就是最优的。

过了一会,产品部门回邮件了,综合了我的顾虑,他们认为这部分的修改可以稍微延后一些,影响不是特别大,至少从目前的评估来看,不过从长远的情况来看他们建议还是需要这个变更。建议值为500M。

有了这些思路,我查看了这两天的系统负载。数据库负载时相当的高。如果做了以上的变更,可能得不偿失。所以就先把这部分的变更做了更为详细的实现步骤,在测试环境测试之后才能提交给客户。

最后的结果就是下面的步骤。

1.
Alter system set sga_max_size=20G scope=spfile;
Alter system set db_recycle_cache_size=2G scope=spfile;
2.
Bring down DB instance
Restart DB instance.
3.
Run below sql statement under PRDAPPO.
alter table trb1_pub_log modify lob(GENERAL_DATA_C) (storage (buffer_pool recycle) cache);    
4.
and  use below statement to check if recycle setting is properly, column buffer_pool value should be RECYCLE.
set linesize 200
col table_name format a30
col column_name format a30
col segment_name format a30
col buffer_pool format a20
set pages 50
select table_name,column_name,se.segment_name,buffer_pool from user_segments se,user_lobs sl
where se.segment_name=sl.segment_name
and sl.table_name='TRB1_PUB_LOG';
example like below.
TABLE_NAME                     COLUMN_NAME                    SEGMENT_NAME                   BUFFER_POOL
------------------------------ ------------------------------ ------------------------------ --------------------
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
PUB_LOG                       GENERAL_DATA_C                 SYS_LOB0002403829C00014$$      RECYCLE
18 rows selected.

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2014-09-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户画像

实验室3 sql server 产品销售数据库

某公司的产品销售数据库company,company数据库中存在人事表employee、客户表customer、销售表sales、销售明细表sale_item、...

9430
来自专栏贾老师の博客

网络数据帧与 MTU

26140
来自专栏数据和云

知己知彼-关于Oracle安全比特币勒索问题揭秘和防范

风险从来都不是臆想和草木皆兵,就在你不经意的时刻,可能风险就突然降临到我们的身边。 近期,国内很多用户的 Oracle 数据库,突然遭遇到莫名其妙的攻击事件,...

36050
来自专栏cmazxiaoma的架构师之路

蛋疼的ElasticSearch(四)之基本用法、高级查询

ElasticSearch系列文章: 1.蛋疼的ElasticSearch(一)之安装ElasticSearch 2.蛋疼的ElasticSearch(二)...

10340
来自专栏生信技能树

【直播】我的基因组72:把基因检测芯片数据转为vcf格式

这个需求比较少见,主要是因为有很多朋友都做了基因检测芯片数据,而芯片检测的结果只有4列,分别是dbSNP数据库ID号,染色体,坐标,还有基因型。如下: head...

471110
来自专栏SmartSql

SmartCode.ETL 这不是先有鸡还是蛋的问题!

相信不少同学都用过各种代码生成器,这里我就不做详细介绍了,如果想体验 SmartCode.Generator 请至 https://www.cnblogs.co...

22060
来自专栏Android 开发者

玩转全新的 Android 8.0 Oreo 后台策略

37540
来自专栏JadePeng的技术博客

HTML5录音控件

最近的项目又需要用到录音,年前有过调研,再次翻出来使用,这里做一个记录。 HTML5提供了录音支持,因此可以方便使用HTML5来录音,来实现录音、语音识别等功能...

1.9K50
来自专栏前端黑板报

软件工程师需要了解的网络知识:从铜线到HTTP(二)—— 以太网与交换机

JohnLui:程序员,Swift Contributor,正在写《iOS 可视化编程与 Auto Layout》。 网络七层、四层模型 ? 四层模型是 TC...

37660
来自专栏编程

python3.6如何解决No module named ‘xxx’的问题?

a.周六的夜报被删了,有些还需要说说的zhi内容移到这里吧。 比特币大跌,最多跌30%+,看看目前K线~ ? 还记得12.19的夜报么~可以回顾一下~《关于比特...

21990

扫码关注云+社区

领取腾讯云代金券