我正在运行一个Spark Notebook,将DataFrame保存为Bluemix对象存储中的Parquet文件。
我想在重新运行笔记本时覆盖镶木地板文件。但实际上它只是附加数据。
下面是iPython代码的示例:
df = sqlContext.sql("SELECT * FROM table")
df.write.parquet("swift://my-container.spark/simdata.parquet", mode="overwrite")
我不是python的家伙,但SaveMode适用于像这样的数据帧
df.write.mode(SaveMode.Overwrite).parquet("swift://my-container.spark/simdata.parquet")
我认为块存储只会替换"simdata.parquet","PART-0000*"仍然存在,因为"simdata.parquet"是应用程序id的"UUID",当您尝试读取时,DF会使用"simdata.parquet*"读取所有文件