Laz*_*zer 9 hadoop hive mapreduce
举个简单的例子,
select * from tablename;
Run Code Online (Sandbox Code Playgroud)
不要在地图缩小时使用
select count(*) from tablename;
Run Code Online (Sandbox Code Playgroud)
一样.用于决定何时使用map reduce(通过hive)的一般原则是什么?
每当我们触发诸如select * from tablename的查询时,Hive都会读取数据文件并获取整个数据,而不进行任何汇总(最小/最大/计数等)。它会调用FetchTask而不是mapreduce任务。
这也是Hive中的优化技术。hive.fetch.task.conversion属性可以(即FETCH任务)最小化映射减少延迟的延迟。
就像我们正在读取一个hadoop文件:hadoop fs -cat filename
但是,如果我们使用tablename中的select colNames,则它需要一个map-reduce作业,因为它需要通过从加载的文件中进行解析来从每一行中提取“列”。