大数据培训Impala之优化
尽量将StateStore和Catalog单独部署到同一个节点,保证他们正常通行。
通过对Impala Daemon内存限制(默认256M)及StateStore工作线程数,来提高Impala的执行效率。
SQL优化,使用之前调用执行计划
选择合适的文件格式进行存储,提高查询效率。
避免产生很多小文件(如果有其他程序产生的小文件,可以使用中间表,将小文件数据存放到中间表。然后通过insert…select…方式中间表的数据插入到最终表中)
使用合适的分区技术,根据分区粒度测算
使用compute stats进行表信息搜集,当一个内容表或分区明显变化,重新计算统计相关数据表或分区。因为行和不同值的数量差异可能导致impala选择不同的连接顺序时,表中使用的查询。
大数据培训Impala之优化表中使用的查询
- 网络io的优化:
–a.避免把整个数据发送到客户端
–b.尽可能的做条件过滤
–c.使用limit字句
–d.输出文件时,避免使用美化输出
–e.尽量少用全量元数据的刷新
- 使用profile输出底层信息计划,在做相应环境优化。