explain select click_url, count(*) ct from bigtable group by click_url;
--一个Hive任务会包含一个或者多个stage,不同stage间会存在依赖关系。越复杂的查询会stage越多,耗时也越多。 --一个stage可以是一个MapReduce任务,也可以是一个抽象阶段或者合并阶段,还可以是一个limit阶段,以及Hive需要的其它某个任务的一个阶段。默认情况下,Hive一次只执行一个stage,不过也可以并行执行。 Explain STAGE DEPENDENCIES: ---------------------------显示各阶段的依赖关系 Stage-1 is a root stage --------------------stage1是根阶段 Stage-0 depends on stages: Stage-1 ---------stage0依赖于stage1,结束阶段 STAGE PLANS: --------------------------各个stage的执行计划 Stage: Stage-1 Map Reduce Map Operator Tree: --------------map阶段执行计划 TableScan -------------------表扫描,读取数据 alias: bigtable ------------扫描的表名(有别名则显示别名) Statistics: Num rows: 1291573 Data size: 129157328 Basic stats: COMPLETE Column stats: NONE ----统计信息,例如一个表有多少行,多少个分区,列的直方图等重要信息。 --统计信息用于查询优化。将统计信息作为输入,通过成本优化函数,可以方便地比较不同查询方案,并从中选择最优的执行计划。 --Filter Operator:where过滤条件筛选数据,描述有具体筛选条件和行数、大小等 Select Operator -----------筛选 *** 作,expressions中有列名、类型,输出类型、大小等。 expressions: click_url (type: string) outputColumnNames: click_url Statistics: Num rows: 1291573 Data size: 129157328 Basic stats: COMPLETE Column stats: NONE Group By Operator -------分组聚合 *** 作 aggregations: count() keys: click_url (type: string) -----用于分组的列,没有keys属性时只有一个分组 mode: hash ------------hash映射分组 outputColumnNames: _col0, _col1 ----输出列名,使用的默认固定别名_col0,_col1 Statistics: Num rows: 1291573 Data size: 129157328 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator ----map端的reduce,进行本地计算,然后按列映射到对应的reduce。对减少数据有很大作用。 key expressions: _col0 (type: string) -------------map阶段的输出字段(临时字段) sort order: + -------------------------------------正序排序 ---------------------------------------------------(-):反向排序 ---------------------------------------------------(++):如果有两列,按两列正序排序 ---------------------------------------------------(+-):如果有两列,按两列正反序排序 Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1291573 Data size: 129157328 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint) Reduce Operator Tree: -----------------------reduce阶段 Group By Operator aggregations: count(VALUE._col0) keys: KEY._col0 (type: string) mode: mergepartial -----mergepartial指合并map的计算结果 outputColumnNames: _col0, _col1 Statistics: Num rows: 645786 Data size: 64578613 Basic stats: COMPLETE Column stats: NONE File Output Operator ----输出结果到临时文件中, compressed: false Statistics: Num rows: 645786 Data size: 64578613 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 --------------------没有limit语句,stage0没有任何 *** 作,只提取数据 Processor Tree: ListSink
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)