(1) 数据存储及压缩。
针对hive中表的存储格式通常有orc和parquet,压缩格式一般使用snappy。相比与textfile
格式表,orc 占有更少的存储。因为 hive 底层使用 MR 计算架构,数据流是 hdfs 到磁盘再到
hdfs,而且会有很多次,所以使用 orc 数据格式和 snappy 压缩策略可以降低 IO 读写,还能
降低网络传输量,这样在一定程度上可以节省存储,还能提升 hql 任务执行效率;
(2) 通过调参优化。
并行执行,调节 parallel 参数;
调节 jvm 参数,重用 jvm;
设置 map、reduce 的参数;
开启 strict mode 模式;
关闭推测执行设置。
(3) 有效地减小数据集
将大表拆分成子表;
结合使用外部表和分区表。
(4) SQL 优化
大表对大表:尽量减少数据集,可以通过分区表,避免扫描全表或者全字段;
大表对小表:设置自动识别小表,将小表放入内存中去执行。
相关文章
- 10-22入职第一天,老板竟让我优化5亿数据量,要凉凉?
- 10-22数据类型进行运算的问题以及常量优化机制
- 10-22vue 图片优化
- 10-22斜率优化dp
- 10-22函数优化实战
- 10-22win10 优化
- 10-22hbase GC优化
- 10-22presto安装和集成kerberos的hive
- 10-22解决Hbase、HDFS、Hive开启和不开启kerberos同时抽取的问题
- 10-22深度学习--优化器