【问题标题】:How to read bulk excel file data and load into spark dataframe in Databricks如何在 Databricks 中读取批量 excel 文件数据并加载到 spark 数据框中
【发布时间】:2019-06-04 15:34:39
【问题描述】:

我想读取包含 80 万条记录和 230 列的批量 Excel 数据。我已经使用 spark 和 pandas dataframe 读取数据,但是在使用 spark 数据帧读取数据时,我收到以下消息。

消息:火花驱动器已意外停止并正在重新启动。您的笔记本将自动重新附加。

我使用 spark 使用了下面的代码。

df=spark.read.format("com.crealytics.spark.excel").option("useheader","true").option("treatEmptyValuesAsNulls","true").option("inferSchema", "true").option("addColorColumns", "False").option("location","/dbfs/FileStore/test/abc.xlsx").load()

Using scala:

import org.apache.spark.sql.SQLContext
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.sql.DataFrame
def readExcel(file: String): DataFrame = sqlContext.read
   .format("com.crealytics.spark.excel")
   .option("location", file)
   .option("useHeader", "true")
   .option("treatEmptyValuesAsNulls", "true")
   .option("inferSchema", "true")
   .option("addColorColumns", "False")
   .load()

val data = readExcel("/dbfs/test/abc.xlsx")
data.show(false)

【问题讨论】:

    标签: python-3.x pandas pyspark azure-databricks


    【解决方案1】:

    您可以做的两件事是增加集群上的内存或使用 excel 库中的 max rows in memory 选项来帮助流式传输一定数量的数据:

    .option("maxRowsInMemory", 20)

    【讨论】:

      猜你喜欢
      • 2017-04-08
      • 2018-01-26
      • 2018-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      • 1970-01-01
      • 2020-03-25
      相关资源
      最近更新 更多