–分区 –开启动态分区 SET hive.exec.dynamic.partition=true; –开启非严格模式 SET hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.max.dynamic.partitions.pernode=10000; set hive.exec.max.dynamic.partitions=100000; set hive.exec.max.created.files=150000; –hive压缩 set hive.exec.compress.intermediate=true; set hive.exec.compress.output=true; –写入时压缩生效 set hive.exec.orc.compression.strategy=COMPRESSION; –分桶 set hive.enforce.bucketing=true; set hive.enforce.sorting=true; set hive.optimize.bucketmapjoin = true; set hive.auto.convert.sortmerge.join=true; set hive.auto.convert.sortmerge.join.noconditionaltask=true; –并行执行 set hive.exec.parallel=true; set hive.exec.parallel.thread.number=8; –小文件合并 – set mapred.max.split.size=2147483648; – set mapred.min.split.size.per.node=1000000000; – set mapred.min.split.size.per.rack=1000000000; –矢量化查询 set hive.vectorized.execution.enabled=true; –关联优化器 set hive.optimize.correlation=true; –读取零拷贝 set hive.exec.orc.zerocopy=true; –join数据倾斜 set hive.optimize.skewjoin=true; – set hive.skewjoin.key=100000; set hive.optimize.skewjoin.compiletime=true; set hive.optimize.union.remove=true; – group倾斜 set hive.groupby.skewindata=true;