Spark 删除 Apache Orc 文件
Spark remove Apache Orc file
我使用 spark shell 将 spark 数据帧存储为 orc 文件,如下所示:
jdbcDF.write.format("orc").partitionBy("ID").save("applicationsPartitioned")
我发现数据现在位于 windows\system32\applicationsPartitioned
如何正确删除 orc 文件?
我可以自己关闭 spark 并删除目录,但是是否有一些元数据存储在这个目录的某处?
我认为必须手动删除目录,但如果您尝试删除下一个输出的目录,您可以简单地使用方法 mode()
覆盖现有目录
jdbcDF.write.format("orc")
.mode(SaveMode.Overwrite)
.partitionBy("ID")
.save("applicationsPartitioned")
希望对您有所帮助!
您必须手动完成,但是您可以使用 hadoop 文件系统来完成。
例如:
import org.apache.hadoop.fs.FileSystem
import org.apache.hadoop.fs.Path
val fs = FileSystem.get(spark.sparkContext.hadoopConfiguration)
fs.delete(new Path(path), recursive)
这将使它 OS 和文件系统独立。
我使用 spark shell 将 spark 数据帧存储为 orc 文件,如下所示:
jdbcDF.write.format("orc").partitionBy("ID").save("applicationsPartitioned")
我发现数据现在位于 windows\system32\applicationsPartitioned
如何正确删除 orc 文件? 我可以自己关闭 spark 并删除目录,但是是否有一些元数据存储在这个目录的某处?
我认为必须手动删除目录,但如果您尝试删除下一个输出的目录,您可以简单地使用方法 mode()
覆盖现有目录
jdbcDF.write.format("orc")
.mode(SaveMode.Overwrite)
.partitionBy("ID")
.save("applicationsPartitioned")
希望对您有所帮助!
您必须手动完成,但是您可以使用 hadoop 文件系统来完成。
例如:
import org.apache.hadoop.fs.FileSystem
import org.apache.hadoop.fs.Path
val fs = FileSystem.get(spark.sparkContext.hadoopConfiguration)
fs.delete(new Path(path), recursive)
这将使它 OS 和文件系统独立。