hive:predicate pushdown对“where col\u name is not null”不起作用?

ql3eal8s  于 2021-05-27  发布在  Hadoop
关注(0)|答案(0)|浏览(181)

运行此sql代码时:
解释从default.ec\订单\信息中选择计数(1),其中优惠券\折扣\信息不为空
查询计划显示:

STAGE DEPENDENCIES:
  Stage-1 is a root stage
  Stage-0 depends on stages: Stage-1

STAGE PLANS:
  Stage: Stage-1
    Spark
      Edges:
        Reducer 2 <- Map 1 (GROUP, 1)
      DagName: hadoop_20201214011253_e4bb44b1-5a14-42a5-bc89-c2b99d2d3a4c:1
      Vertices:
        Map 1
            Map Operator Tree:
                TableScan
                  alias: ec_order_info
                  filterExpr: coupon_discount_info is not null (type: boolean)
                  Statistics: Num rows: 105309 Data size: 267756631 Basic stats: COMPLETE Column stats: NONE
                  Filter Operator
                    predicate: coupon_discount_info is not null (type: boolean)
                    Statistics: Num rows: 105309 Data size: 267756631 Basic stats: COMPLETE Column stats: NONE
                    Select Operator
                      Statistics: Num rows: 105309 Data size: 267756631 Basic stats: COMPLETE Column stats: NONE
                      Reduce Output Operator
                        sort order:
                        Statistics: Num rows: 105309 Data size: 267756631 Basic stats: COMPLETE Column stats: NONE
        Reducer 2
            Reduce Operator Tree:
              Group By Operator
                aggregations: count(1)
                mode: complete
                outputColumnNames: _col0
                Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                File Output Operator
                  compressed: false
                  Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                  table:
                      input format: org.apache.hadoop.mapred.SequenceFileInputFormat
                      output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
                      serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe

  Stage: Stage-0
    Fetch Operator
      limit: -1
      Processor Tree:
        ListSink

显示创建表格式:

CREATE TABLE `default.ec_order_info`(
  `coupon_discount_info` string)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION

文件管理器运算符rownums是105309,等于全表行,为什么 predicate 下推不起作用?寻求你的帮助,泰克斯!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题