【发布时间】:2022-08-16 14:39:40
【问题描述】:
我正在尝试使用 Scala spark 从弹性读取数据,但它会抛出错误消息,例如 java.lang.RuntimeException:scala.collection.convert.Wrappers$JListWrapper 不是字符串模式的有效外部类型。 我们有没有其他方法可以通过使用 scala spark 和弹性搜索来进行操作。
Databricks- 9.1 LTS spark-3.1.2,Scala 2.12
代码:
spark.sql(\"set spark.sql.legacy.timeParserPolicy=LEGACY\")
val reader = sqlContext.read.format(\"org.elasticsearch.spark.sql\")
.option(\"es.nodes\",\"..*.*\")
.option(\"es.net.http.auth.user\", elasticUsername)
.option(\"es.net.http.auth.pass\", elasticPassword)
.option(\"es.nodes.wan.only\", \"true\")
.option(\"es.resource\", indexName)
.option(\"es.read.field.exclude\", excludeFields)
.option(\"es.read.field.as.array.include\", arrayFields)
.option(\"es.query\", elasticQueryString)
.option(\"es.scroll.size\",\"10000\")
.option(\"es.field.read.empty.as.null\", \"no\")
-
提供 databricks 运行时版本、elasticsearch 连接器以及您正在使用的代码
-
Databricks- 9.1 LTS spark-3.1.2,Scala 2.12 代码:spark.sql(\"set spark.sql.legacy.timeParserPolicy=LEGACY\") val reader = sqlContext.read.format(\"org.elasticsearch.spark. sql\").option(\"es.nodes\",\"..*.*\") .option(\"es.net.http.auth.user\", elasticUsername).option(\"es.net.http.auth.pass\", elasticPassword) .option(\" es.nodes.wan.only\", \"true\").option(\"es.resource\", indexName).option(\"es.read.field.exclude\", excludeFields) .option(\ "es.read.field.as.array.include\", arrayFields).option(\"es.query\", elasticQueryString).option(\"es.scroll.size\",\"10000\") 。选项(\"es.field.read.empty.as.null\", \"no\")
-
Elasticsearch 连接器的版本是什么?
-
我不确定,我如何检查连接器版本,你能帮我吗?
-
检查集群/作业 ui
标签: scala apache-spark elasticsearch pyspark databricks