NEST LOOP ,笛卡尔集的消耗:
原本A预估1行,B 返回1024K行, Est Row 应该是1024K 为什么是1?说明他认为是0行(0行,1行OEM都会给1 )
实际296k行 所以Loop后 296K*1024K=296000M 但是OEM显示极限就是4295M
NL loop 用4295M去loop 所以内循环要执行4295M次,这次join,实际匹配出来就是1行。但是实际才执行了252K,
第二次NL 才执行了27次。
HASH JOIN 还没有开始
预估中Hash join出来1行,NL :用1行loop 260行,预估是260行(不应该是1行?)
整个性能问题就在灰色的地方
继续运行10小时后
307K 360K都好解释, 357K 不是很好解释:
第一次NL出来307K行,为什么能loop 357K次的? Loop出来30行,这出来的行数再和SEL*48A做hash join,hash jion 一直在等外表的结果。。