hive总是创建mapreduce作业

jfewjypa  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(398)

我一直在工作中使用hive,当我运行这样的select时

"Select * from TABLENAME"

hive执行mapreduce作业,当我运行

"Select * from TABLENAME LIMIT X" independently of x.

hive不执行mapreduce作业。
我使用hive1.2.1、hdp2.3.0、hue2.6.1和hadoop2.7.1
对这个事实有什么看法吗?
谢谢!

8iwquhpp

8iwquhpp1#

Select * from table;

不需要Map也不需要减少。这里没有筛选器(where语句)或聚合函数。这个查询只是从hdfs读取数据。

mitkmikd

mitkmikd2#

这是Hive的基本任务。这只是一个抽象的工作Map。前facebook的工程师们不得不编写100个map reduce作业来进行特别分析,而map reduce作业多少有点让人头疼,所以他们用sql语言将其抽象出来,并翻译成map reduce作业。
pig(雅虎)也是如此。
p、 有些查询非常简单,它们不会被转换为Mapreduce作业,但据我所知,它们是在一个节点上本地执行的

相关问题