【发布时间】:2019-12-25 02:50:05
【问题描述】:
我正在使用下面的代码将 csv 文件保存回 blob 存储,尽管它在循环运行时会创建多个文件。现在我想将它们合并到一个单独的 csv 文件中。虽然我用过dbutils.fs.cp/mv,但是没用
while start_date <= end_date:
df = spark.read.format("com.databricks.spark.csv").options(header="true", inferschema="true").load(inputFilePath)
df.coalesce(1).write.mode("append").option("header","true").format("com.databricks.s`park.csv").save(TargetPath)`
下面发布了一个类似的请求,但它是使用 pandas 数据框完成的,我正在使用 spark 数据框寻找一些东西。 "Copy data from multiple csv files into one csv file"
【问题讨论】:
-
while 循环在这里做什么?因为在每次迭代中它都会创建一个新的 df 并且如果
inputFilePath是文件的路径而不是目录,则一次只读取一个文件。 -
@Waqas - 根据开始日期和结束日期,它会循环并一次读取一个文件。有没有更好的方法来完成这项工作?
-
检查我的答案
标签: azure pyspark azure-blob-storage azure-databricks