一、性能调优手段
1、配置参数调优
2、应用算法优化
3、GC内存调优
二、集群调优核心:
以数据位中心,均衡并发,高效计算
三、调优工具
Web UI、nMon、Log、Ganglia
四、SQL优化
4.1、过滤
1、分区过滤条件一定要跟在表名后面
2、过滤条件不能过度使用。条件过滤时需要考虑数据特点,避免过滤条件滥用,另外where条件中尽量使用常亮过滤
3、过滤条件从左到右生效,建议能够过滤掉更多数据的条件放在最左侧
4、避免在where子句中使用IN,NOT IN ,OR,可以用union all来替换
4.2、字段
1、尽量避免使用select *,应该使用具体的字段
2、减少select不必要字段,减少IO和内存消耗
3、尽量避免对同一字段的重复查询,可以讲重复运算部分以子查询方式编写
4、表设计时,选用合适的字段数据类型,减少字节数
5、SQL语句全部大写
4.3、表关联
1、join时尽量先裁剪join的两个表数据量
2、join时需要评估join对象的大小
3、推荐小表join大表
4、当算法设计相同表的join时,需要分析下join条件和其他SQL逻辑,尝试去掉本表join
5、优先考虑inner join,其次是left 或right join,最后才考虑full join
6、join条件避免使用or