Spring Boot與檢索

一、檢索
我們的應(yīng)用經(jīng)常需要添加檢索功能,開源的 ElasticSearch 是目前全文搜索引擎的首選。他可以快速的存儲、搜索和分析海量數(shù)據(jù)。Spring Boot通過整合Spring Data ElasticSearch為我們提供了非常便捷的檢索功能支持;

Elasticsearch是一個(gè)分布式搜索服務(wù),提供Restful API,底層基于Lucene,采用多shard(分片)的方式保證數(shù)據(jù)安全,并且提供自動resharding的功能,github等大型的站點(diǎn)也是采用了ElasticSearch作為其搜索服務(wù),
二、概念

以 員工文檔 的形式存儲為例:一個(gè)文檔代表一個(gè)員工數(shù)據(jù)。存儲數(shù)據(jù)到 ElasticSearch 的行為叫做 索引 ,但在索引一個(gè)文檔之前,需要確定將文檔存儲在哪里。
一個(gè) ElasticSearch 集群可以 包含多個(gè) 索引 ,相應(yīng)的每個(gè)索引可以包含多個(gè) 類型 。 這些不同的類型存儲著多個(gè) 文檔 ,每個(gè)文檔又有 多個(gè) 屬性 。
類似關(guān)系:
索引-數(shù)據(jù)庫
類型-表
文檔-表中的記錄
屬性-列

image.png

三、整合ElasticSearch測試

  1. 引入spring-boot-starter-data-elasticsearch
<!--SpringBoot默認(rèn)使用SpringData ElasticSearch模塊進(jìn)行操作-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
  1. 安裝Spring Data 對應(yīng)版本的ElasticSearch


    image.png
  2. application.yml配置


    image.png
  3. Spring Boot自動配置的
    ElasticsearchRepository、ElasticsearchTemplate、Jest
    測試ElasticSearch

image.png

注意:

#啟動elasticsearch的docker指令
#docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name ES01 5acf0e8da90b

elasticsearch需要提前聲明號分配給他的內(nèi)存大小,其默認(rèn)的內(nèi)存大小為2G
順便在這里說一下我的個(gè)人博客
天涯博客

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容