[英]Connect Spark 2.X to ElasticSearch 2.X
我正在使用Spark和ElasticSearch,找不到如何在ElasticSearch 2.x中使用Spark2.X。 ElasticSearch Spark库仅支持ES 2.X的Spark 1.6,并支持ES 5.alpha的Spark2。如何将Spark连接到ElasticSearch?
请看看这个。
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.0 ElasticSearch-Spark 2.3.4)的spark 2.0,@ Crackerman能够解决他的问题(其他问题不是版本相关的东西)
我正在使用Spark 2.2读取Elasticsearch 5.5.2是可行的
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")
是的,它支持它。
您可以在这里找到org.elasticsearch
库: https : org.elasticsearch
https://mvnrepository.com/artifact/org.elasticsearch/elasticsearch-spark-20
另外,请注意匹配相同的scala版本(2.11或2.10)。 例如,Ambari提供了Spark2-scala 2.11。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.