SpringBoot:ElasticSearch統合

1.はじめに

1.1統合モード

統合Elasticsearch春ブーツには4つの方法があります。

  1. RESTクライアント
  2. あり
  3. 春データ
  4. 春データElasticsearchリポジトリ

本明細書にそれぞれ後部に接続され、二つのモードはElasticsearchを操作

1.2。環境と設定

サーバー:elasticsearch-7.3.2 1台湾
クライアント:elasticsearch 6.8.4

サーバーの設定ファイル:elasticsearch.yml

cluster.name:elasticsearch 
node.name:esNode01 
network.host:0.00.0 

#跨域配置
http.cors.enabled:
http.cors.allow -origin:" * "

1.3基本概念

また、同様の概念とMySQLの多くのLuceneライブラリに基づいて全文検索するだけでなく、保存されたデータの性質を、Elasticsearch。

コンセプト コントロールのmysql 説明
インデックス(指標) データベースデータベース インデックスは、インデックスの多くを代表して、複合体の指標であります
タイプ(タイプ) 表データシート シミュレーションタイプは、MySQLテーブルの概念であり、下側のインデックスデータベースは、異なるデータフォーマットである商品指数、インデックス順序としてインデックスの異なるタイプを有することができます。しかし、これは混乱インデックスライブラリにつながることができますので、この概念の将来のバージョンでは削除されます
ドキュメント(文書) 行の行 元のデータは、インデックスデータベースに格納されています。例えば、製品情報の各片が文書であります
フィールド(フィールド) 列列 ドキュメントのプロパティ
マッピング(マッピング)   フィールドのデータ型、属性、他のプロパティを保存するかどうか、インデックスか

また、Elasticsearch関連する概念におけるクラスタの数があります。

  • インデックスセット(インデックス、インデックス・コンプレックス):完全な論理インデックス
  • フラグメント(シャード):分割データの一部
  • コピー(レプリカ):コピーまたは各スライス

注:Elasticsearch自体が配布されるので、あなたはノードを1つだけ持っていても、Elasticsearchは、データの断片化がデフォルトになりますし、あなたがクラスタに新しいデータを追加するとき、データは新しいノードの中で行われる操作をコピーしますバランス。

2.コードの実装

まず、新しいSpringBootプロジェクトを作成し、Elasticsearchを統合する必要があります。

2.1ポンポン依存

<?xmlのバージョン= " 1.0 "エンコード= " UTF-8 "?> 
<プロジェクトのxmlns = " http://maven.apache.org/POM/4.0.0 "のxmlns:XSI = " のhttp://www.w3 .ORG / 2001 / XMLスキーマ・インスタンス" 
         のxsi:のschemaLocation = " http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd  > 
    <modelVersion> 4.00 </ modelVersion> 
    <親> 
        <groupIdを> org.springframework.boot </ groupIdを> 
        <たartifactId>2.21 .RELEASE </バージョン> 
        <relativePath /> <! -ルック親からリポジトリ- > 
    </親> 
    <groupIdを> com.meng </ groupIdを> 
    <たartifactId> ES </たartifactId> 
    <バージョン> 0.01 -snapshot </バージョン> 
    <パッケージ>戦争</パッケージ> 
    <名前> ES </名前> 
    <説明>デモプロジェクトのための春ブーツ</記述> 

    <プロパティ> 
        <のjava.version> 1.8 </java.version> 
    </プロパティ> 

    <依存性> 
        <!
            <のgroupId> org.springframework.boot </のgroupId> 
            <たartifactId>ばねブートスタータデータelasticsearch </たartifactId> 
        </依存> 
        <依存性> 
            <のgroupId> org.springframework.boot </のgroupId> 
            <たartifactId>ばねブートスタータウェブ</たartifactId> 
        </依存> 

        <依存性> 
            <のgroupId> org.springframework.boot </のgroupId> 
            <たartifactId>ばねブートスタータTomcatの</たartifactId> 
            <スコープ>提供</スコープ> 
        </依存関係> 
        <依存> 
            <groupIdを> org.springframework。ブート</ groupIdを> ブート</のgroupId> 
            <たartifactId>ばねブートスタータ試験</たartifactId>
            <スコープ>テスト</スコープ> 
            <除外> 
                <除外> 
                    <のgroupId> org.junit.vintage </のgroupId> 
                    <たartifactId> JUnitのヴィンテージエンジン</たartifactId> 
                </除外> 
            </除外> 
        </依存> 
    </依存関係> 

    <ビルド> 
        <プラグイン> 
            <プラグイン> 
                <groupIdを> org.springframework.boot </ groupIdを> 
                <たartifactId>春・ブートのmaven-pluginの</たartifactId> 
            </プラグイン> 
        </プラグイン> 
    </ビルド> 

</プロジェクト>

 

おすすめ

転載: www.cnblogs.com/mengY/p/11962487.html