【问题标题】:Write DataFrame from Azure Databricks notebook to Azure DataLake Gen2 Tables将 Azure Databricks 笔记本中的 DataFrame 写入 Azure DataLake Gen2 表
【发布时间】:2020-05-03 06:49:27
【问题描述】:

我创建了一个 DataFrame,我想在表中的 Azure DataLake Gen2 旁边编写/导出它(需要为此创建新表)。

将来我还需要使用新的 DataFrame 更新此 Azure DL Gen2 表。

在 Azure Databricks 中,我创建了一个连接 Azure Databricks -> Azure DataLake 以查看我的文件:

感谢帮助如何在 spark / pyspark 中编写它。

谢谢!

【问题讨论】:

    标签: azure apache-spark pyspark databricks


    【解决方案1】:

    将数据帧从 Azure Databricks Notebook 写入 Azure Data Lake Gen2 的步骤:

    第 1 步:直接使用存储帐户访问密钥访问

    第二步:使用 DBUTILS 列出存储账户中的文件

    Step3:使用之前建立的DBFS挂载点读取数据并创建数据框。

    第四步:将数据写入 Azure Data Lake Gen2 账户

    读取航空公司的 csv 文件并将输出写入 parquet 格式以便于查询

    更多详情请参考“Tutorial: Azure Data Lake Storage Gen2, Azure Databricks & Spark”。

    希望这会有所帮助。如果您有任何进一步的疑问,请告诉我们。

    【讨论】:

    • 很高兴知道它有帮助。
    • 当然,Azure 页面对我来说仍然太复杂,但尝试学习阅读它们 :)
    • 感谢您对 Azure Docs 的反馈,我们将改进文档以使您更好地理解。如果您在 Azure Docs 上遇到问题,请发送有关每个页面底部可用页面的反馈,或者在 MSDN 或 SO 上创建一个线程。我们很乐意为您提供帮助。
    • 当然,很高兴为您提供帮助,因为我是 MS Azure 的忠实粉丝!
    • 还有一个问题,如果您在一个 ADLS 中有一个 Blob 和一个名称完全相同的表,您如何将数据写入 ADLS 表?
    【解决方案2】:

    我建议不要以 parquet 格式编写数据,而是使用内部使用 Parquet 格式但提供 ACID 事务等其他功能的 Delta 格式。语法为

    df.write.format("delta").save(path) 
    

    【讨论】:

    • Delta Lake 是我需要真正深入挖掘的东西 :) 最好的!
    猜你喜欢
    • 2021-05-19
    • 2020-08-09
    • 2020-05-08
    • 2020-03-23
    • 1970-01-01
    • 2021-11-10
    • 2022-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多