How to initial load files/tables larger than 2 gig using rmtfile
适用于:
OracleGoldenGate的-版本:4.0.0到11.1.1.0.9-版本:4.0.0到11.1.1
在这个文档中的信息适用于任何平台。
目标
当初始装载一个表或文件,使用OracleGoldenGate的Sourceisfile或Sourceistable参数,
需要特殊的语法和方法,如果基础表(文件)或正在提取表将创建一个大于2G大小的rmtfile。
解决方案
Sourceisfile (表)是常用来提取一个或多个表或从源数据库(S )中的文件,其数据传输到目标机器replicat将申请创建一个匹配的初始状态的数据。中介机构的数据存储在AA单非结构化文件称为一个rmtfile 。这个文件的大小限制2演出。(NSK)。由于正在传输的每个行/记录获取约50个字节的开销,有一个小于2千兆字节,可存储的数据量的限制。
这是可以克服的使用rmtfile参数的选项MAXFILES和在replicat使用的变化。
首先需要存储要提取的数据计算的近似空间。这是字节的数据源边加50*行/以字节为单位提取的记录数量大约相当于。近似此值,剩余空间作为一个跟踪文件(MAXFILES)次,每个文件字节(maxbytes)产品。表达正确的语法,在参考手册中讨论。
rmtfile /gg/dirdat/rf, maxfiles 10, megabytes 2000
这个例子显示,多达10个文件将被创建,每一个2千兆字节的最大大小。这将容纳源数据稍差(记得每行开销字节),比20演出。MAXFILES和兆字节的值可以是充满变数。
这就要求在replicat方法的改变。而不是做一个specialrun replicat ,定期replicat处理这些多个文件的理想选择。一个正常的specialrun replicat只会处理一个文件。
上面创建的远程文件将是一个系列10个文件,在一种常见的2个字符前缀升数字顺序。这是一个远程文件/跟踪(rmtfile )的定义。这允许replicat治疗初始加载文件作为一个线索,完全恢复功能。
添加的replicat :
ggsci> add rep repfils, exttrail ./gg/dirdat/rf, nodbcheckpoint
with parameters:
REPLICAT REPFILS
-- params
-- maps
这replicat也有优势,它可以启动,而初始加载数据正在提取。
这将减少之间的提取和应用数据和replicat滞后将继续运行,直到操作员停止。
一旦已提取的所有数据,山径可(可选)归档和replicat停止和删除。