sqlldr 如何提升性能速度

其实就是三点,分别是errors,rows,bindsize。当然,最重要的是rows和bindsize。

这里我们首先对于这几个参数进行一些讲解:

1、errors参数用来设定最多允许多少数据入库出错,一旦错误数据超过参数值,sqlldr就会退出。

2、rows表示一次加载的行数,默认值为64。

3、bindsize表示每次提交记录缓冲区的大小,默认256k

这几项按照默认,我这里解析100万行的数据,时间是23分钟2秒多,性能有点太差了。

# 原本的执行脚本
chmod -R 777 [ctl]
source /home/oracle/.bash_profile
sqlldr ictuser/qazwsx@10.5.0.222:1522/orcl control=[ctl] skip=1 log=[log] parallel=true
exit

对这三个参数:

      1、rows:一次加载的行数设置为10000行。

      2、bindsize:表示每次提交记录缓冲区的大小,设置为10M

      3、errors设置为999999,最多允许这些行数据入库出错,防止空行情况。

chmod -R 777 [ctl]
source /home/oracle/.bash_profile
sqlldr ictuser/qazwsx@10.5.0.222:1522/orcl control=[ctl] skip=1 errors=999999 rows=5000 bindsize=10485760 log=[log] parallel=true
exit

我们可以看到,速度提升到1分35秒,提升了10多倍。 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值