我在Hive分区模式(s3://csvfiles/Y=2017/M=10/D=12/H=23/M=12/...
)中以文件夹中的顺序排列了一堆csv文件。
因此,我在每个“小时”文件夹中的文件很少,采用csv格式。 我想将特定小时的所有文件组合成ORC格式的单个文件,将其写入不同的根文件夹,但保留“日期”模式。 所以结果将是这样的:
s3://orcfilesY=2017/M=10/D=12/H=23/singlefile.orc
可以用Spark做到吗?
由于
答案 0 :(得分:0)
repartition
和partitionBy
:
val n: Int
df
.partitionBy(n, $"Y", $"M", $"D", $"H")
.write.partitionBy("Y", "M", "D", "H").orc(...)