一、学习目标

Oracle数据库,使用OGG集成模式抽取进程启动时,如果没有配置合理的streams_pool_size参数可能会过一段时间就报错abend!

那么我们如何配置这个参数的大小?如何计算?

二、参考文档

从OGG官网检索这个DB参数,没有看到合理的建议信息!

2.1 MOS

OGG-02045: Database does not have streams_pool_size initialization parameter configured.
The database initialization parameter streams_pool_size is not set correctly to support integrated capture.
Set database initialization parameter streams_pool_size. For sizing recommendations, see the Oracle GoldenGate reference
documentation.
Integrated Extract / Replicat and STREAMS_POOL_SIZE (Doc ID 2078459.1)
Oracle GoldenGate - Version 11.2.1.0.0 and later
GOAL
What is the recommended STREAMS_POOL_SIZE for Integrated Extract (IE) and Integrated Replicat (IR)
SOLUTION
The ogg reference guide recommends to have 1GB STREAMS_POOL_SIZE per integrated extract + additional 25 percent
Snippet from ogg oracle install guide
http://docs.oracle.com/goldengate/1212/gg-winux/GIORA.pdf
------------------------------------------------------
By default, one integrated capture Extract requests the logmining server to run with MAX_SGA_SIZE of 1GB and a
PARALLELISM of 2. Thus, if you are running three Extracts in integrated capture mode in the same database instance,
you need at least 3 GB of memory allocated to the Streams pool. As best practice, keep 25 percent of the Streams pool available.
For example, if there are three Extracts in integrated capture mode, set STREAMS_POOL_SIZE to the following:
3 GB + (3 GB * 0.25) = 3.75 GB
---------------------------------------
The Integrated replicat also needs to have 1GB STREAMS_POOL_SIZE per process and additional 25 percent though it
is not been explicitly mentioned in the guides.
推荐集成捕获进程数量+ 集成捕获数量*0.25, 默认1个进程1G!

2.2 相关文档

https://www.oracle-scn.com/memory-requirement-for-oracle-goldengate-integrated-extract/

1. OGG集成模式与数据库内存区域streams_pool_size之间的关系
集成模式的情况下,是从streams_pool中申请内存区域,Streams_pool是Oracle SGA内存的一个组件,streams_pool中,
申请的内存大小取决于有多少个integrated extract的进程数量,以及考虑其它的进程! 2.抽取进程参数
TRANLOGOPTIONS INTEGRATEDPARAMS(max_sga_size 100, parallelism 1)
上述参数中,max_sga_size 代表的是streams pool size 的大小! 非db 参数sga_max_size 3.DB参数streams_pool_size 调整多大?
1> streams_pool_size >1g,则ogg 占用的max_sga_size=1g;
如果streams_pool_size <=1g,则ogg 占用的max_sga_size = streams_pool_size*75%;
2> 默认没设置streams_pool_size 参数大小!则max_sga_size(streams size)占用shared_pool_size 10%,最大1G, 因此!需要考虑shared pool大小!
3> 使用动态SGA,则可以通过查询视图v$sga_dynamic_components获取streams_pool的使用情况!

2.3 相关报错

OGG-02050 Not enough database memory to honor requested MAX_SGA_SIZE
OGG-02077: Extract encountered a read error in the asynchronous reader thread and is abending: {0}

三、小结

建议使用集成模式抽取的情况下,设置数据库参数

STREAMS_POOL_SIZE ,参数大小= 抽取进程的数量*1G +抽取进程数量*1G*0.25 
(1G代表分配给每个抽取进程的内存,25%是给每个抽取进程streams size 考虑的空闲空间)
另外就是文档中的各种举例都是写的是集成抽取,集成复制方面并没明确说明! 但是MOS文档的包含范围加上了集成复制!
因此站在安全的角度也是考虑同样的分配! 当然如果系统不是特别重要,很多细节可以忽略,报错在处理也是一样的。

OGG-集成模式抽取与数据库参数streams_pool_size关系的更多相关文章

  1. OGG-Oracle 集成模式抽取进程,REGISTER DATABASE都做了什么?

    一.学习目标 有同事问OGG技术问题,OGG软件,在oracle数据库中,集成模式抽取进程REGISTER DATABASE,都做了什么操作? 有什么风险? 并且提到了一个抽取进程注册,在瞬时间并发占 ...

  2. OGG实现两台Oracle数据库的同步

    今天通过最简单的一个例子,给大家讲解下 goldengate 实现两台Oracle数据库的同步.内容如下:1.配置数据库信息.2.安装golden gate.3.配置golden gate.4.测试同 ...

  3. 基于现有数据库的Code First模式迁移更新数据库

    本文讨论的内容是基于EF4.1版本.文中谈论的现有的数据库不是由EF创建.本文假定你已经对Code First迁移有一定的了解,如果不了解Code First迁移更新数据库可以查看 文章涉及的主题如下 ...

  4. ASP.NET运行时详解 集成模式和经典模式

    遗留问题 在<ASP.NET运行时详解 生命周期入口分析>中遗留两个问题,包括Application的InitInternal方法执行细节.IIS6和II7经典模式请求管道管理类Appli ...

  5. Sybase配置数据库参数

    Sybase配置数据库参数参数配置的两种方法:sp_configure ‘参数名称’,参数值修改参数文件(如:Sybase主机上的 %SYBASE%\servername.cfg) 配置Sybase数 ...

  6. GoldenGate抽取Informix数据库安装及配置

    GoldenGate抽取Informix数据库安装及配置 本次测试架构 l  在中间机上安装informix csdk4.10版本,并编译配置unixODBC; l  在中间机上安装ogg for I ...

  7. MySQL数据库参数

    数据库参数 MYSQL数据库的参数配置一般在my.ini配置文件中修改/添加(部分参数也可以用set global 参数名=值 做临时调整,重启后失效),配置完后需要重启数据库才生效. 参数1:inn ...

  8. Reporting Service服务SharePoint集成模式安装配置(5、安装 SQL SERVER 2012 SP1产品)

    有过SQL2012 数据库安装经验的,可以跳过这一步骤直接进入第五步骤:RS外接程序的安装  数据库安装工具:SQLServer2012 SP1 Name:SQLServer2012SP1-FullS ...

  9. Reporting Service服务SharePoint集成模式安装配置(3、4、安装sharepoint 2010必备组件及产品)

    Reporting Service服务SharePoint集成模式安装配置 第三步和第四部 第三步 安装sharepoint 2010必备组件 1.安装SharePoint2010必备组件,执行Pre ...

随机推荐

  1. uniapp 发起网络请求

    推荐下我写的uni-http 创建http-config.js import Vue from 'vue' const BASE_URL = 'http://xxx.com'; if (process ...

  2. qt 获取窗口句柄的线程id和进程id GetWindowThreadProcessId

    int lpdwProcessId; int id = GetWindowThreadProcessId((HWND)0x707d6, (LPDWORD)&lpdwProcessId); qD ...

  3. Flutter: 显示&关闭系统叠加层ui

    import 'package:flutter/services.dart'; /// 关闭 SystemChrome.setEnabledSystemUIOverlays([]); /// 显示 S ...

  4. 稳定币USDN的算法调控

    在NGK公链的稳定币系统中,USDN的价格有时会出现一定幅度的波动.正如我们会看到USDT有时会是0.99美元,有时是1.01美元一样.那么,要保障USDN在二级市场的价格基本稳定,要如何调节供需呢? ...

  5. Warning: Cannot update during an existing state transition (such as within `render`). Render 报错

    原来 修改(不用在构造函数里面定义)

  6. MVVM中的vm双向监听和mvc的缺点

    `MVVM`模型: - 即Model,模型,包括数据和一些基本操作 - 即View,视图,页面渲染结果- 即View-Model,模型与视图间的双向操作(无需开发人员干涉) `MVVM`中的`VM`要 ...

  7. sql if else 用法

    语法: case when 条件1 then 结果1 when 条件2 then 结果2 else 结果N end 可以有任意多个条件,如果没有默认的结果,最后的else也可以不写, select c ...

  8. Java基本概念:封装

    一.简介 描述: 生活中,我们要看电视,只需要按一下开关和换台就可以了.我们没有有必要了解电视机内部的结构. 制造厂家为了方便我们使用电视,把复杂的内部细节全部封装起来,只给我们暴露简单的接口,比如电 ...

  9. 如何用Eggjs从零开始开发一个项目(3)

    上一篇中我们编写了用户注册登录.登录的代码,学习了如何进行用户的认证(JWT),如何安全地存储用的密码(hash).这一篇我们有以下2个任务: 获取token中的数据: 通过model来同步数据库. ...

  10. vue3 一些关键属性

    环境搭建 尤大开发了一个项目构建工具vite npm init vite-app <project-name> cd <project-name> npm install np ...