Hive 配置单元:无法理解示例结果中的统计信息

Hive 配置单元:无法理解示例结果中的统计信息,hive,hiveql,Hive,Hiveql,我正在MRv2上使用Hive。我准备了一张包含十亿元组的表格。 我编写了类似EXPLAIN select count*from table的查询。解释结果如下: 1> STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 depends on 2> stages: Stage-1 3> 4> STAGE PLANS: Stage: Stage-1 5> Map Reduce 6>

我正在MRv2上使用Hive。我准备了一张包含十亿元组的表格。 我编写了类似EXPLAIN select count*from table的查询。解释结果如下:

1> STAGE DEPENDENCIES:   Stage-1 is a root stage   Stage-0 depends on
2> stages: Stage-1
3> 
4> STAGE PLANS:   Stage: Stage-1
5>     Map Reduce
6>       Map Operator Tree:
7>           TableScan
8>             alias: table
9>             Statistics: Num rows: 1 Data size: 39328468992 Basic stats: COMPLETE Column stats: COMPLETE
10>             Select Operator
11>               Statistics: Num rows: 1 Data size: 39328468992 Basic stats: COMPLETE Column stats: COMPLETE
13>               Group By Operator
14>                 aggregations: count()
15>                 mode: hash
16>                 outputColumnNames: _col0
17>                 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE
18>                 Reduce Output Operator
19>                   sort order: 
20>                   Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE
21>                   value expressions: _col0 (type: bigint)
22>       Reduce Operator Tree:
23>         Group By Operator
24>           aggregations: count(VALUE._col0)
25>           mode: mergepartial
26>           outputColumnNames: _col0
27>           Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE
28>           File Output Operator
29>             compressed: false
30>             Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE
31>             table:
32>                 input format: org.apache.hadoop.mapred.TextInputFormat
33>                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
34>                 serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
35> 
36>   Stage: Stage-0
37>     Fetch Operator
38>       limit: -1
39>       Processor Tree:
40>         ListSink
在第9行的统计信息中,尽管该表有十亿个元组,但Num行是1


请教我如何计算EXPLAIN中的统计结果。

可能是外部表。由于Hive不知道元数据,因此显示了一行

例:


谢谢你的回复。你的意思是统计结果代表输出信息吗?@tbt嘿,对不起,我的错,你是对的。统计数据应该显示表中的行数。因为数据量很大,只显示一行。我怀疑这个表可能是一个外部表或其他一些hive explain无法读取统计数据的格式,因此它可能显示了1行。是的,应该是这样。我刚刚用外部表格测试并编辑了答案。@tbt它回答了你的问题吗?很抱歉,我回复晚了。我用的是外置的桌子,所以你的想法是正确的。谢谢
Map Operator Tree:
      TableScan
        alias: test_ext_tb
        Statistics: **Num rows: 1 Data size: 452001824** Basic stats: COMPLETE Column stats: COMPLETE
        Select Operator
          Statistics: Num rows: 1 Data size: 452001824 Basic stats: COMPLETE Column stats: COMPLETE
          Group By Operator
            aggregations: count()