gpt4 book ai didi

scala - 如何在路径中没有分区前缀的情况下写出分区的DataFrame?

转载 作者:行者123 更新时间:2023-12-01 12:18:32 28 4
gpt4 key购买 nike

我有代码:

dataFrame.write
.partitionBy("format", "dataset", "year", "month", "day", "hour")
.format(outputFormat)
.mode("overwrite")
.save(outputPath)

输出如下:enter image description here

如何编写没有前缀的数据帧?不改名。有没有办法通过 Spark 或 hadoop 配置来做到这一点?目前我正在使用单独的 bash 脚本来重命名文件夹。

明确地说,我想使用 Spark 代码获取下一个结构:

data
-+parquet
+main
+2017
+01
+31
+15

最佳答案

你不能这样做。

如果您查看 Spark 代码,ExternalCatalogUtils.getPartitionPathString 类,您会看到:

def getPartitionPathString(col: String, value: String): String = {
val partitionString = if (value == null || value.isEmpty) {
DEFAULT_PARTITION_NAME
} else {
escapePathName(value)
}
escapePathName(col) + "=" + partitionString
}

所以方案总是像column=value

关于scala - 如何在路径中没有分区前缀的情况下写出分区的DataFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46343218/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com