美文网首页
hive on spark 小文件问题

hive on spark 小文件问题

作者: 小小小小小小埋 | 来源:发表于2018-08-28 17:24 被阅读0次

hive on spark 小文件问题

问题描述

创建hive外部表后,通过insert语句(其中包含了group by)向其中插入数据,会在hdfs外部表指定的location下面生成200个小文件。

原因分析

因为Spark中当通过列来进行分区时,会默认生成200个partitions,每个partition对应一个小文件,此时大部分的partition中其实是没有数据的,这会造成资源的浪费,我们只要指定以下partition的数量就可以了,可以通过dataframe的repartiton()和coalesce()实现,一般个位数即可。

关于repartition和coalesce的概念以及区别可以参考https://hackernoon.com/managing-spark-partitions-with-coalesce-and-repartition-4050c57ad5c4(需翻墙)

相关文章

网友评论

      本文标题:hive on spark 小文件问题

      本文链接:https://www.haomeiwen.com/subject/sskwiftx.html