【问题标题】:How to write a spark.sql.dataframe into a S3 bucket in databricks?如何将 spark.sql.dataframe 写入数据块中的 S3 存储桶?
【发布时间】:2020-03-26 15:38:21
【问题描述】:

我正在使用数据块,并且正在从存储桶中读取 .csv 文件。

MOUNT_NAME = "myBucket/"
ALL_FILE_NAMES = [i.name for i in dbutils.fs.ls("/mnt/%s/" % MOUNT_NAME)] \
dfAll = spark.read.format('csv').option("header", "true").schema(schema).load(["/mnt/%s/%s" % (MOUNT_NAME, FILENAME) for FILENAME in ALL_FILE_NAMES])

我想同时在那里写一张桌子。

myTable.write.format('com.databricks.spark.csv').save('myBucket/')

【问题讨论】:

  • 我认为您正在寻找的是 saveAsTable()
  • 这样做会出现什么错误?

标签: python amazon-s3 pyspark azure-databricks


【解决方案1】:

下面的 sn-p 显示了如何在 DBFS 和 S3 上将数据帧保存为单个 CSV 文件。

myTable.write.save(“s3n://my-bucket/my_path/”, format=”csv”)

# DBFS (CSV)
df.write.save('/FileStore/parquet/game_stats.csv', format='csv')

# S3 (CSV)
df.coalesce(1).write.format("com.databricks.spark.csv")
   .option("header", "true").save("s3a://my_bucket/game_sstats.csv")

【讨论】:

  • 如果我的答案对您有帮助,您可以接受它作为答案(点击答案旁边的复选标记,将其从灰色切换为已填充。)。这对其他社区成员可能是有益的。谢谢。
猜你喜欢
  • 2020-03-08
  • 2020-07-29
  • 2021-11-17
  • 1970-01-01
  • 2020-08-11
  • 1970-01-01
  • 2011-01-30
  • 1970-01-01
  • 2022-01-24
相关资源
最近更新 更多