hive如何高可用
1、join连接时的优化:当三个或多个以上的表进行join操作时,如果每个on使用相同的字段连接时只会产生一个mapreduce。2、join连接时的优化:当多个表进行查询时,从左到右表的大小顺序应该是从小到大。原因:hive在对每行记录操作时会把其他表先缓存起来,直到扫描最后的表进行计算3、在where字句中增加分区过滤器。

3、设置属性即可实现,set hive.auto.covert.join=true; 用户可以配置希望被优化的小表的大小 set hive.mapjoin.smalltable.size=2500000; 如果需要使用这两个配置可置入$HOME/.hiverc文件中。6、同一种数据的多种处理:从一个数据源产生的多个数据聚合,无需每次聚合都需要重新扫描一次。

5、设置属性:set hive.exec.parallel=true;9、hive提供的严格模式,禁止3种情况下的查询模式。a:当表为分区表时,where字句后没有分区字段和限制时,不允许执行。b:当使用order by语句时,必须使用limit字段,因为order by 只会产生一个reduce任务。c:限制笛卡尔积的查询。10、合理的设置map和reduce数量。11、jvm重用。可在hadoop的mapred-site.xml中设置jvm被重用的次数。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:77
阅读量:28
阅读量:40
阅读量:39
阅读量:52