我正在使用Spark和ElasticSearch,但是我不知道如何在ElasticSearch 2.x中使用Spark 2.X。ElasticSearch Spark libs只支持ES2.x的Spark1.6,支持ES5.alpha的Spark2。你用什么将Spark连接到ElasticSearch?
发布于 2016-09-20 19:58:00
请看看这个。
Apache Spark是一个计算框架,它本身并不依赖于Map/Reduce,但它确实与Hadoop集成在一起,主要是与HDFS集成。elasticsearch-hadoop允许Elasticsearch以两种方式在Spark中使用:从2.1开始提供的专用支持,或者从2.0开始通过Map/Reduce桥。从5.0版开始,elasticsearch-hadoop支持Spark 2.0
希望这能有所帮助!
我在ElasticSearch Spark Error上也有收获,用户正在使用spark 2.0和较低版本(Spark 2.0.0 ElasticSearch-Spark 2.3.4)的Elastic search,@Crackerman能够解决他的问题(其他问题,而不是与版本相关的东西)
发布于 2017-08-28 17:02:11
我使用的是spark 2.2 read elasticsearch 5.5.2 is work
scalaVersion := "2.11.10"
val spark = "2.2.0"
val es = "5.5.2"
libraryDependencies ++= Seq(
"org.elasticsearch" % "elasticsearch-spark-20_2.11" % es,
"org.apache.spark" % "spark-core_2.11" % spark % "provided" ,
"org.apache.spark" % "spark-sql_2.11" % spark % "provided",
"org.apache.spark" % "spark-hive_2.11" % spark % "provided"
)
val sparkSession = SparkSession.builder()
.config("es.nodes",locahost)
.config("es.port","9200")
.appName("ES")
.master("local[*]")
.enableHiveSupport()
.getOrCreate()
sparkSession.read.format("org.elasticsearch.spark.sql")
.option("es.query", "?q=id:(123)")
.load("es_index/es_type")发布于 2018-02-28 01:09:09
是的,它支持它。
您可以在以下位置找到org.elasticsearch库:https://mvnrepository.com/artifact/org.elasticsearch
https://mvnrepository.com/artifact/org.elasticsearch/elasticsearch-spark-20
另外,要注意匹配相同的scala版本(2.11或2.10)。例如,Ambari提供了Spark2 - scala 2.11。
https://stackoverflow.com/questions/39589753
复制相似问题