Hive优化:
1、开启limit,防止过多的数据查询造成时延
2、开启严格模式,禁止三种模式的查询(查询全部分区而没有where限制、使用order by查询而没有limit限制,表联结使用on以限制笛卡儿积的查询)
3、合理的设置map reduce的个数,不能过多或者过少
4、使用本地模式,对于一些数据量小的查询,减少开启job的时间
5、使用map端jion,将数据量小的表,放在join的左边,直接加入内存
6、推测执行,这是对MR的优化,防止出现木桶效应
7、设置并行度,让一些不相关的stage能够并行运行,加速任务的完成
8、JVM重用,通过在配置文件中设置一些参数,来配置某些task的stage重用JVM,减少任务的开启时间
9、建立索引,加快查询
10、调整动态分区的数量,尽量高,不能太高,1000个左右最好
11、设置中间和reduce结果进行压缩,减少占用空间
HBase优化:
1、hbase查询优化
1、开启limit,防止过多的数据查询造成时延
2、开启严格模式,禁止三种模式的查询(查询全部分区而没有where限制、使用order by查询而没有limit限制,表联结使用on以限制笛卡儿积的查询)
3、合理的设置map reduce的个数,不能过多或者过少
4、使用本地模式,对于一些数据量小的查询,减少开启job的时间
5、使用map端jion,将数据量小的表,放在join的左边,直接加入内存
6、推测执行,这是对MR的优化,防止出现木桶效应
7、设置并行度,让一些不相关的stage能够并行运行,加速任务的完成
8、JVM重用,通过在配置文件中设置一些参数,来配置某些task的stage重用JVM,减少任务的开启时间
9、建立索引,加快查询
10、调整动态分区的数量,尽量高,不能太高,1000个左右最好
11、设置中间和reduce结果进行压缩,减少占用空间
HBase优化:
1、hbase查询优化
1> 设置scan缓存,定义服务端到客户端的数据条数
2> 显示指定查询列,避免太多的数据传输造成网络压力
3 >设置过滤,只查询需要的数据,比如行键
4 >使用HTablePool,解决HTabl