如何重写代码以避免在 Spark 1.3.1 中使用 SqlContext.read()?
How to rewrite the code to avoid using SqlContext.read() in Spark 1.3.1?
我们的项目原来是在Spark 1.4.0上开发的,现在想迁移到另一个集群,需要一个特殊的Spark JAR,版本是1.3.1。当我们替换 JAR 时,我们发现以下代码不再起作用:
val dataFrame = sqlContext.read.format("com.databricks.spark.csv")
.options(getOptionProperties(request.Options))
.schema(schema)
.load(request.FilePath)
原来read
是1.4以后才有的。那么我怎样才能重写代码以获得等效的结果呢?
提前致谢!
要将 CSV 读入数据框,您需要这个第 3 方包 https://github.com/databricks/spark-csv
关于 Spark 1.3 的文档非常清楚
从 1.4.0 SQLContext Documentation .
load(String source, StructType schema, java.util.Map options)
Deprecated. As of 1.4.0, replaced by
read().format(source).schema(schema).options(options).load().
所以我想你可以使用
load("com.databricks.spark.csv", schema, getOptionProperties(request.Options))
得到相同的结果。
我们的项目原来是在Spark 1.4.0上开发的,现在想迁移到另一个集群,需要一个特殊的Spark JAR,版本是1.3.1。当我们替换 JAR 时,我们发现以下代码不再起作用:
val dataFrame = sqlContext.read.format("com.databricks.spark.csv")
.options(getOptionProperties(request.Options))
.schema(schema)
.load(request.FilePath)
原来read
是1.4以后才有的。那么我怎样才能重写代码以获得等效的结果呢?
提前致谢!
要将 CSV 读入数据框,您需要这个第 3 方包 https://github.com/databricks/spark-csv
关于 Spark 1.3 的文档非常清楚
从 1.4.0 SQLContext Documentation .
load(String source, StructType schema, java.util.Map options)
Deprecated. As of 1.4.0, replaced by
read().format(source).schema(schema).options(options).load().
所以我想你可以使用
load("com.databricks.spark.csv", schema, getOptionProperties(request.Options))
得到相同的结果。