Hive分区过多有何坏处以及分区时的注意事项

  1.当分区过多且数据很大时,能够使用严格模式,避免出发一个大的mapreduce任务。当分区数量过多且数据量较大时,执行宽范围的数据扫描会触发一个很大的mapreduce任务。在严格模式下,当where中没有分区过滤条件时会禁止执行。node

  2.hive若是有过多的分区,因为底层是存储在HDFS上,HDFS上只用于存储大文件 而非小文件,由于过多的分区会增长namenode的负担。效率

  3.hive会转化为mapreduce,mapreduce会转化为多个task。过多小文件的话,每一个文件一个task,每一个task一个JVM实例,JVM的开启与销毁会下降系统效率。map

  注意:合理的分区不该该有过多的分区和文件目录,而且每一个目录下的文件应该足够大。数据

相关文章
相关标签/搜索