ITPub博客

首页 > 数据库 > Oracle > 两个超级大表HASH,开并行并且不广播

两个超级大表HASH,开并行并且不广播

原创 Oracle 作者:li__hl8888 时间:2016-05-18 16:36:00 0 删除 编辑
  1.   
  2. AA和B关联,AA和B返回结果很大,开并行HASH后依然很慢,所以定位内敛视图AA上,结果AA执行速度确实很慢  
  3.   
  4. 用脱衣服大法将AA扒衣服后,就剩TS_MX_SUBSCRIBE A,TS_UH_TRADE_FINANCE B,(SELECT DISTINCT C.PRODUCT_CODE,C.PRODUCT_NAME FROM TF_P_PRODUCT C) C 三个  
  5.   
  6. TS_MX_SUBSCRIBE  ,TS_UH_TRADE_FINANCE 过滤后都是150w条数据, TF_P_PRODUCT 数据少,但是和其他表是1:N关系,所以三个表走HASH  
  7.   
  8. 但是执行计划里面20 12 和28 29 都是两个超级大表HASH,并且是全表扫描,这严重影响SQL效率  
  9.   
  10. 这时候,应用罗总牛逼犀利威武淫荡的优化技巧:两个超级大表HASH,开并行并且不广播,成功将SQL从50分钟优化到4分钟!

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8568259/viewspace-2102527/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-06-01

  • 博文量
    208
  • 访问量
    92696