我的Hive表有多个小兽人文件。每个文件的大小都小于hdfs块大小。这是很大的浪费。我使用下面的spark代码来合并小文件,但是合并文件的总大小几乎是原始小文件的3倍。
JavaSparkContext sc = startContext("test");
HiveContext hc = new HiveContext(sc);
DataFrame df = hc.read().format("orc").load(inputPath);
logger.info("source schema:");
logger.info(df.schema().treeString());
DataFrame df2 = df.repartition(partitionNum);
logger.info("target schema:");
logger.info(df2.schema().treeString());
df2.write().mode("append").orc(outputPath);
closeContext(sc);
有人遇到同样的问题吗?谢谢
暂无答案!
目前还没有任何答案,快来回答吧!