ElasticSearch中如何使用Spark

ElasticSearch是一个基于Lucene的搜索服务器, 它提供了一个分布式多用户能力的全文搜索引擎, 基于RESTful web接口, 底层是用Java开发的。

本文将通过Spark的方式来读取ES,基于以下版本开发测试。

      scala-version:2.11.8

      spark-version:2.2.0

      elasticsearch-version:5.5.0

接下来正式开始了。

1. 添加Maven依赖

<dependencies>

     <dependency>
          <groupId>org.elasticsearch</groupId>
          <artifactId>elasticsearch-spark-20_2.11</artifactId>
          <version>6.2.4</version>
     </dependency>

</dependencies>

2. Spark 读取ES

import org.apache.spark.{SparkConf, SparkContext}
import org.elasticsearch.spark.rdd.EsSpark
object ES2Spark {

  def main(args: Array[String]): Unit = {

      val conf = new SparkConf().setMaster("local").setAppName("ES2Spark")
        .set("es.index.auto.create", "true")
        .set("es.nodes", "127.0.0.1")
        .set("es.port", "9200")

      val sc = new SparkContext(conf)

      val rdd = EsSpark.esJsonRDD(sc, "indexName", "?q=*1*")

      rdd.foreach(println(_))
      sc.stop()
  }
}
发布了84 篇原创文章 · 获赞 28 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/a544258023/article/details/89711376