hive_优化模式

本地模式:

当一个MapReduce任务的数据量和计算任务很小的时候,真正的逻辑处理其实占用时间很少,只需要在本地进行Map和Reduce的执行,大大的加快了小任务的执行时间,通常可以把分钟级别任务的执行时间降低秒级。

并行模式:

Hive的Parallel特性使得某些任务中的stage子任务以并行执行模式同时执行,相对于一直串行执行stage任务来说有效的提升资源利用率

严格模式:

通过设置hive.mapred.mode的值为strict,开启严格模式可以禁止3种类型的查询:
(1) 对于分区表,要求必须限定分区字段,换句话说就是不允许扫描所有的分区,这是因为通常所有分区的数据量都比较大,这样可以避免消耗大量资源。

(2) 对于使用order by的查询,要求必须使用limit语句,因为order by为了执行排序过程会将所有的结果数据分发到同一个reducer中进行处理,这样可以避免reducer执行过长的时间。
(3)限制笛卡尔积查询,要求两张表join时必须有on语句。

Uber模式:

Uber模式准确的说并不是Hive的优化特性,是Yran上针对MR小作业的优化机制,如果job任务足够小,则直接让任务串行的在MRAppMaster完成,这样整个Application只会使用一个Container(JVM重用功能),相对于分配多个Container来说执行效率要高很多。
参考:
https://mp.weixin.qq.com/s?__biz=MzUxOTU5Mjk2OA==&mid=2247485763&idx=1&sn=7f21a2b751c509be1adaf2d19f649a5a&chksm=f9f60424ce818d32cdd008ff5c4d3ed848d6289a740d88bc368bbadd8c3bca3e1c7c52dddf20&mpshare=1&scene=1&srcid=03190FSiD5dLKSqg7ofESwtW&sharer_sharetime=1584580846835&sharer_shareid=bc83e36774dfedaf1b723f4dc4163311&key=61c257cd8ca493f9808780add2485ff21f0546ce3558db3acdb6285ff6ddc539a259e22310c3c97d04bb4c02898f6d7302b8d5594d158b6244159b04107ee9550032f6cb410bb720a71ce1996a7cf527&ascene=1&uin=MjMzMTY4OTI2MQ%3D%3D&devicetype=Windows+10&version=62080079&lang=zh_CN&exportkey=AYNMrCgvRNCzRNC0KBkHOGg%3D&pass_ticket=kT%2B4Tx3uVd5EC1PJYIxh1%2BOpBTBANXMg2VkGu%2BdWU2WFImXT1E%2FHbbqNx82Bq2%2B%2F

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值