Apache Solr チュートリアル: Solr とは何ですか? Archi構造
⚡ スマートサマリー
Apache Solr はオープンソースであり、 JavaApache Luceneをベースとした検索サーバー。大量のテキスト中心のデータをインデックス化し、REST APIを介して関連性の高い結果を返します。全文検索、ファセット検索、スケーラビリティ、スタンドアロンおよびSolrCloudの両方のデプロイメントモードを提供します。

Apache Solrとは何ですか?
Apache Solr オープンソースの検索サーバープラットフォームで、 Java Apache ソフトウェア財団による言語です。非常にスケーラブルで、大量のテキスト中心のデータを処理する検索エンジンをすぐに導入できます。Apache Solr を使用する目的は、大量の Web コンテンツをインデックス化して検索し、検索クエリに基づいて関連コンテンツを提供することです。
Apache Solr は、Apache Lucene と呼ばれる全文検索エンジンを囲む REST-API ベースの HTTP ラッパーです。転置インデックスは単語のリストであり、各単語エントリはそれが保存されているドキュメントにリンクされています。これにより、単純な「get」操作で、検索クエリ「guru99」のすべてのドキュメントを取得できます。
Apache Solr の歴史
- 1999: Doug Cutting が Lucene を出版
- 2004: Solr は、社内プロジェクトの一部として Yonik Seeley によって CNET で開発されました。
- 2006: CNET がソース コードを Apache ソフトウェアに寄贈して公開 Foundation
- 2008: 検索機能とパフォーマンスが強化された Solr 1.3 がリリースされました。
- 2010: Lucene と Solr の合併
- 2012: 新しい Solr Cloud 機能を備えた Solr バージョン 4.0 がリリースされました。
- 2016: 並列 SQL クエリの実行のサポートを提供する Solr 6.0 がリリースされました。
- 2017年:Solr 7.0がリリースされ、オートスケーリングフレームワークとJSON Facet APIが追加されました。
- 2019年:Solr 8.0がリリースされ、ネストされたドキュメントのサポートとストリーミング式の改善が実現しました。
- 2021年:LuceneとSolrは再び分離し、Solrは独立したApacheトップレベルプロジェクトとなった。
- 2022年:Solr 9.0がLuceneから独立した最初のバージョンとしてリリースされ、ベクトル検索とKubernetesサポートが追加されました。
- 2026年:Solr 10.0が最新のメジャーバージョンとしてリリースされました。
Apache Solrの特徴
Apache Solr の重要な機能は次のとおりです。
- 自動負荷分散
- 標準ベースのオープン インターフェイス – XML、JSON、HTTP
- 推奨事項と呪文の提案がサポートされています
- オートコンプリートと地理空間検索のサポート
- 認証と認可のための組み込みセキュリティ
- 多言語キーワード検索を実行できます。
- オートコンプリート/先行入力予測
- バッチ処理とストリーミング処理
- 機械学習モデルの構築は簡単です
- 大量の Web トラフィック向けに特別に最適化
- 包括的な HTML Admiration インターフェイス
- スキーマ構成とスキーマレス構成の両方をサポート
- ファセット検索とフィルタリング
- 全体の集中構成 Cluster
Apache Solr で使用される主要な用語
この Solr 検索エンジンのチュートリアルでは、Apache Solr で使用される主要な用語について学びます。
| 重要な用語 | 詳細説明 |
|---|---|
| Solr コア | Solr Coreは、すべてのドキュメントから抽出されたテキストとフィールドのインデックスとして定義できます。1つのSolrインスタンスには、1つまたは複数のSolr Coreが存在する可能性があります。Core = Lucene Indexインスタンス + Solr構成 |
| Solr インスタンス | Solrインスタンスは、 Java 仮想マシン(JVM)。 スタンドアロン モードでは XNUMX つのインスタンスのみが提供されますが、クラウド モードでは XNUMX つ以上のインスタンスを使用できます。 |
| インデキシング | インデックス作成は、ドキュメントのコンテンツを Solr Index に追加する方法です。 Apache Solr は、Apache Lucene 逆インデックス技術を使用します。 |
| ドキュメント | これはフィールドとその値のグループです。 ドキュメントは、Apache Core に保存されるデータの基本単位です。 XNUMX つの Apache コアには XNUMX つ以上のドキュメントが含まれる場合があります。 |
| フィールド | フィールドは、ドキュメント内の実際のデータを格納するキーと値のペアです。キーはフィールド名を指定し、値にはそのフィールドのデータが含まれます。ドキュメントには、1つまたは複数のフィールドを含めることができます。Apache Solrは、このフィールドを使用してドキュメントの内容をインデックス化します。 |
| 安静な API | Solrと通信するために、 Java プログラミング。代わりにApache Solrは 安らぎのサービス それと通信するためです。 JSON、XML、CSV などのさまざまなファイル形式でドキュメントを送信し、結果を受信できます。 |
| 全文検索 | Solr は、トークン、フレーズ、スペルチェック、オートコンプリート、ワイルドカードなどの全文検索機能を提供します。 |
| 管理インターフェース | Solr は、使いやすく、ユーザーフレンドリーな、機能を強化したユーザー インターフェイスを提供します。 このインターフェイスを使用すると、ログの管理、ドキュメントの追加、削除、更新、検索などのタスクを実行できます。 |
| テキスト中心で関連性順に分類 | Apache Solr はテキスト ドキュメントの検索に使用され、結果はユーザーのクエリに従って配信されます。 |
| Node | Solr クラウドでは、すべての単一インスタンスがノードとして知られています。 |
| Cluster | クラスターはノードの集合です。 |
| 収集 | クラスターには、コレクションとも呼ばれる論理インデックスがあります。 |
| シャード | これは、インデックスの単一または複数のレプリカを提供するコレクションの小さな領域です。 |
| レプリカ | レプリカは、ノード内で実行されるシャードのコピーです。 |
| リーダー | これはシャードのレプリカであり、残りのレプリカに対する Solr クラウドのリクエストを送信します。 |
Apache Solr Archi構造
この Solr 検索チュートリアルでは、Apache Solr について学びましょう Archi構造:

Apache Solr は以下のコンポーネントを侵害します
クエリー
クエリパーサーは、Solrに渡す必要のあるクエリを解析します。構文エラーがないかクエリを検証し、解析後にLuceneが認識できる形式に変換します。
リクエストハンドラー
Apache Solr に送信されるリクエストは、リクエストハンドラによって処理されます。リクエストは、クエリリクエストまたはインデックス更新リクエストのいずれかです。要件に応じてリクエストハンドラを選択する必要があります。Solr にリクエストを渡すには、ハンドラを特定のインスタンスにマッピングする必要があります。 URL 終点。
世界の動き Writer
応答ライターは、入力クエリに対してフォーマットされた出力を生成します。 XML、JSON、CSVなどのさまざまな形式をサポートしています。 さまざまな種類のリクエストに対して、さまざまな応答ライターが存在する場合があります。
更新ハンドラー
Apache Solrに更新リクエストを送信すると、一連のプラグイン、署名、ログ記録、インデックス作成処理が実行されます。このプロセスは更新リクエストプロセッサと呼ばれます。更新ハンドラは、追加や削除などの変更も担当します。ping 提出済みなど
Apache Solr アプリケーション
| 用途 | 使用法 |
|---|---|
| イントラネットポータル |
|
| フェデレーションクライアント |
|
| 機器データセット |
|
| 規制文書 |
|
| PLM アプリケーションに埋め込み |
|
Apache Solr をインストールするにはどうすればよいですか?
ステップ1) ウェブサイトを開いて購読を続ける
これに行く , 「購読を続ける」をクリックします。
ステップ2) 「規約に同意する」をクリックします
次のページで、「規約に同意する」をクリックします。
ステップ3) しばらく待ちます
次に、しばらく待ってから、しばらくするとリクエストが受け付けられます。
ステップ4) 構成に進む
ページを更新し、「設定を続行」をクリックします。
ステップ5) 起動を続行
設定をデフォルトのままにして、「起動を続ける」をクリックします。
ステップ6) 設定をデフォルトのままにする
次のページでは、設定をデフォルトのままにします
- キーの pem ファイルがあることを確認してください
- 「起動」をクリックします
この成功メッセージが表示されます
ステップ7) パブリックDNSに注意してください
EC2 コンソールで、インスタンスのパブリック DNS をメモします。
ステップ8) 以下を開いてください URL
Solrにアクセスするには、 URL
http://publicdns:8983
私たちの場合はこうなります
http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983
注: インスタンスへのアクセスに問題がある場合は、以下の Solr クエリの例に示すように、すべてのトラフィックを許可するようにインスタンスの受信ルールと送信ルールを変更します。
Elasticsearch とApache Solr
| 技術パラメータ | Apache Solr | ElasticSearch |
|---|---|---|
| 自然 | これはオープンソース プロジェクトです。 | オープンソースのプロジェクトではありません。 |
| 静的ステータス | shema.xml の静的 | elasticsearch.yml の静的 |
| フォーマット | XML、CSV、JSON | JSONのみ |
| 目次 | 実行時にコレクション/コアのリロードを使用してリロード可能 | REST呼び出しによるインデックス/タイプの作成中に定義されます。 |
| ドキュメント | それは十分に文書化されています。 | 文書化が不十分です。 |
| シャードの分割 | 可能 | ありえない |
Apache Solr の利点
- 情報を見つけるのにかかる時間を短縮するのに役立ちます
- 高速でシンプル、強力で柔軟な検索エンジンです。
- 製品やサービスをよりアクセスしやすくするのに役立ちます
- Web アプリケーションに対する顧客の支出を増やす
- Web アプリケーションのユーザー エクスペリエンスを向上させ、収益と利益を向上させるのに役立ちます。
- 包括的な HTML ベースの管理インターフェイス
- XML 構成による柔軟性と適応性
- 拡張可能なプラグイン Archi構造
- 拡張性が高く、堅牢でフォールトトレラントな検索エンジン
- 分散、シェーディング、レプリケーションをサポート Clustering とマルチノード Archi構造
Apache Solrの欠点
- ACID 準拠のデータ ストアではありません
- プライマリ データ ストアとしては役に立ちません。 セカンダリ データ ストアとしてのみ有用
- トランザクションおよび分散トランザクションのサポートは提供されません
- 結合と複雑なクエリはサポートされていません
- 正規化されたデータには最適ではない










