对于数仓开发来说,写好一条SQL,需要熟读Hive 源码。hive 默认的优化器有10种,其中这三种比较关键:
FilterPPD 会把可以下推的谓词抽取出来,存入OpWalkerInfo.opToPushdownPredMap.pushdownPreds 中
JoinPPD 的主要作用就是把能够下推的谓词和不能够下推的谓词分开,将不能够下推的谓词重新生成FilterOperator –> FIL[8]
TableScanPPD 将能够下推的谓词生成FIL[9] 并置于TS[0]之后
对于数仓开发来说,写好一条SQL,需要熟读Hive 源码。hive 默认的优化器有10种,其中这三种比较关键:
FilterPPD 会把可以下推的谓词抽取出来,存入OpWalkerInfo.opToPushdownPredMap.pushdownPreds 中
JoinPPD 的主要作用就是把能够下推的谓词和不能够下推的谓词分开,将不能够下推的谓词重新生成FilterOperator –> FIL[8]
TableScanPPD 将能够下推的谓词生成FIL[9] 并置于TS[0]之后