如何将火花数据帧保存为excel格式?

时间:2017-04-11 07:41:28

标签: apache-spark

我想将火花数据框保存到excel中。

我已经通过在每个节点中保存csv文件并使用DataBricks spark-CSV将其附加到服务器中来为csv完成此操作。

我不知道如何为excel做这件事。有人请建议和想法。

2 个答案:

答案 0 :(得分:0)

您可以在Spark中使用HadoopOffice库的数据源: https://github.com/zuinnote/hadoopoffice

但是,如果要存储的数据量非常大,那么它就没有多大意义,因为Excel本身在处理大型数据文件时存在问题。

答案 1 :(得分:0)

%sh pip install XlsxWriter

spark.conf.set("spark.sql.execution.arrow.enabled", "true")

import shutil, sys ,os
import pandas as pd
import xlsxwriter


df = spark.createDataFrame(
    [
        (1, 'foo'), # create your data here, be consistent in the types.
        (2, 'bar'),
      (3, 'bar1'),
      (4, 'bar2'),
    ],
    ['id', 'txt'] # add your columns label here
    )

    adls_path="/dbfs/mnt/"
       pd_df=df.toPandas()
       pd_df.to_excel('test.xlsx',engine='xlsxwriter')
       shutil.move('test.xlsx', adls_path)