转:https://www.cnblogs.com/liudehaos/p/16405305.html
1.1 hive的随机抓取策略
理论上来说,Hive中的所有sql都需要进行mapreduce,但是hive的抓取策略帮我们 省略掉了这个过程,把切片split的过程提前帮我们做了。 set hive.fetch.task.conversion=none; (一旦进行这么设置,select字段名也是需要进行mapreduce的过程,默认是more)
Fetch抓取的模式 可以通过 set hive.fetch.task.conversion查看,有以下3种模式: none:所有涉及hdfs的读取查询都走mapreduce任务; mininal:在进行简单的select *,简单的过滤或涉及分区字段的过滤时走mr; more:在mininal模式的基础上,增加了针对查询语句字段进行一些别名的计算操作。 以下HQL,mininal模式与more模式下都不会走mr任务: SELECT sale_ord_id, store_id FROM