每日10行代码50: 用并行模式命令parallel提高oracle查询速度

  1. 语法:
/*+parallel(table_short_name,cash_number)*/

示例:

SELECT /*+parallel(t,10)*/ COLUMN FROM TABLE_NAME t

其中t是别名,10是并行线程数,这个也可以用在insert,update语句里。

  1. 用途:提高语句执行速度
  2. 线程数的选择.
    看别人的线程数,一般选择是4,8,10,12,16,线程数也不是越多越好,有的文档说线程数一般最大是服务器cpu核心数减1。我自己测试了下自己写的一个复杂查询,数据量大概是千万级的。

不加线程查询:74秒
加上10线程但不用别名: parallel(10) 14秒
parallel(t,10) 6秒
parallel(t,10) 7.067秒
parallel(t,32) 8.517
parallel(t,13) 8.44
parallel(t,14) 5.367
parallel(t,16) 5.585
parallel(t,16) 6.755
parallel(t,18) 8.439
parallel(t,18) 5.492
parallel(t,18) 10.343
parallel(t,20) 4.587
parallel(t,20) 4.649
parallel(t,20) 6.771
parallel(t,20) 8.627
parallel(t,20) 4.570
parallel(t,24) 4.664
parallel(t,24) 5.007

前面是执行的命令,后面是所耗费的时间(单位为秒)。以上可以大概看出,就我所用的服务器来说,加20线程是速度最快的。
参考:https://www.cnblogs.com/xingmeng/p/3303761.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值