欢迎投稿

今日深度:

hive的优化,

hive的优化,


-》大表拆分成小表
-》包含临时表、分区表、外部表
-》sql语句:
-》优化sql:复杂的sql-》子查询+join -》简化,拆分成多个简单的语句
join、filter:先过滤再join


-》设置map和reduce的个数
reduce数目:可以参数进行设置
-》hive: set mapreduce.job.reduces=<number>
-》MR:job.setNumReduceTasks(tasks);
**map的数量:
Math.max(minSize, Math.min(maxSize, blockSize))
blocksize:128M

**代码块中
FileInputFormat.setMaxInputSplitSize(job, size);
FileInputFormat.setMinInputSplitSize(job, size);
-》通过spilt切片的大小来改变map任务数

-》开启并行化执行,默认是false
hive.exec.parallel


-》设置同时运行job的数目,根据集群设置,默认是8
hive.exec.parallel.thread.number


-》jvm重用
mapreduce.job.jvm.numtasks默认是1,运行一个job会启动一个jvm上运行

-》 推测执行:
缺点:会消耗更多的资源,一般不建议开启,有可能数据会重复写入,造成异常

-》hive本地模式:
hive的本地模式hive.exec.mode.local.auto默认是false
hive底层运行的hadoop集群中的资源,yarn调度,本地模式不会再集群所有机器上运行,会选一台作为本地运行,一般处理小数据量级的数据速度回很快
限制:job输入的数据不能大于128M,map的个数不能超过4个,默认reduce数目 1个

www.htsjk.Com true http://www.htsjk.com/hive/40842.html NewsArticle hive的优化, -》大表拆分成小表 -》包含临时表、分区表、外部表 -》sql语句: -》优化sql:复杂的sql-》子查询+join -》简化,拆分成多个简单的语句 join、filter:先过滤再join -》设置ma...
相关文章
    暂无相关文章
评论暂时关闭