Oracle expdp 导出时的并行度设置

来源:这里教程网 时间:2026-03-03 12:59:18 作者:

今天测试了下expdp在导出时是否加并行,以及如何加并行才能使导出效率最高,得出如下结论: expdp 导出时加并行度参数设置: parallel  并行度 filesize  单个文件大小的上限 totalsize 导出文件的总大小 满足下面的公式,可以保证导出效率最高: (parallel-1) * filesize >= totalsize 下面是今天做测试时的数据: 这里有一张表44.93G,数据库服务器是24个CPU,SSD磁盘正常导出,导出文件大小为38.64G,导出时间2分2秒 expdp CPIC_PERF/CPIC_PERF  directory=IMP_DIR  tables= T_CLAIM_PART_TRA_B content=DATA_ONLY  dumpfile=T_CLAIM_PART_TRA_B_20190227_PARALLEL.dump 然后我们对该导出操作加上不同的并行度进行测试: 第一次测试:执行1分11秒,导出了14个文件,从大小上可以明显看出,数据主要保存在前7个文件,后7个文件的数据量要小一些,原因是(8-1)*5=35G,没有达到导出总文件的大小,所以还需要增加数据文件来保存剩下的的数据,所以又增加了7个文件 expdp CPIC_PERF/CPIC_PERF  directory=IMP_DIR  tables= T_CLAIM_PART_TRA_B content=DATA_ONLY  dumpfile=T_CLAIM_PART_TRA_B_20190227_PARALLEL%U.dump filesize= 5 G  parallel=8 ; 第二次测试:执行1分10秒,导出了7个文件,实际上7个文件已经满足了总文件的大小,所以没有再增加新的数据文件,虽然比上一次测试在总时间上只减小了1秒,但是数据文件数要比之前少,这种情况要更优一些; expdp CPIC_PERF/CPIC_PERF  directory=IMP_DIR  tables= T_CLAIM_PART_TRA_B content=DATA_ONLY  dumpfile=T_CLAIM_PART_TRA_B_20190227_PARALLEL%U.dump filesize= 6 G  parallel=8 ; 第三次测试:鉴于在网上查到的一些说法,我们做了一次测试来验证下: 网上的说法是 parallel<= 导出数据量/fileszie 按照网上的说法,我们做了新的设置 expdp CPIC_PERF/CPIC_PERF  directory=IMP_DIR  tables= T_CLAIM_PART_TRA_B content=DATA_ONLY  dumpfile=T_CLAIM_PART_TRA_B_20190227_PARALLEL%U.dump filesize=6G  parallel=4 ; 执行的时间是1分48秒,导出9个数据文件,可以发现,这种情况并非最优方案,所以网上的说法其实还需要进一步验证。

相关推荐