ElasticsearchとApache Solrを比較

    「ElasticSearch」と「Apache Solr」の比較

    全文検索エンジンである「Elasticsearch」と「Apache Solr」は、双方ともベースエンジンとして「Apache Lucene Coreライブラリ」を使用しており、Javaで開発されています。

    「ElasticSearch」とは

    Elasticsearch は、Elastic社が提供する全文検索システムです。RestAPIや、複数サーバでのクラスタリングなどの機能を提供します。

    長所

    アーキテクチャやUIがモダンなデザインとなっており、簡単にクラスタ構築を行えます。

    Elasticプロダクトの関連ツールである「Kibana」や「Logstash」と連携しやすいメリットがあります。

    短所

    Apache Solrに比べて後発であるため、ノウハウの蓄積が足りていない面がありますが、近年急速に追い上げています。

    「Apache Solr」とは

    Elasticsearchと同じようにLuceneをバックエンドにした全文検索システムです。継続的な機能強化が行われています。

    長所

    十分な実績と高い信頼性があり、豊富な機能を提供しています。

    短所

    Elasticsearchに比べて、クラスタ化に手間がかかります。

    人気比較

    Elasticsearch

    solid ITは、2016年、検索エンジン分野において、「Elasticsearch」が「Apache Solr」の人気を超えたと伝えました。

    「Webサイトにおける言及」「求人情報」などの複数のパラメータから分析した結果、高い人気を誇っていた「Apache Solr」が「Elasticsearch」に追い抜かれる形になった、と伝えています。

    「Apache Solrに関わる求人情報は3年間で2倍に増加」に対して、「Elasticsearchは同期間で20倍」としています。

    検索クエリ比較

    Elasticsearch

    構造的なクエリを作成できる「クエリDSL」は、学習コストはかかるものの、慣れれば効率的に使用できます。

    Apache Solr

    クエリ文字列を使用するため直感的で分かりやすいクエリを作成できますが、複雑なクエリは作成しにくい面があります。

    参考元サイト

    「Elasticsearch」基本情報

    ■概要

    Elasticsearch(エラスティックサーチ)とは、全文検索エンジンです。マルチテナント、スキーマレスでクラウドに最適化されています。

    ■基本説明

    Elasticsearchは、Elastic社が提供しているオープンソースの全文検索エンジンです。

    HTTP WebインターフェイスとスキーマフリーのJSONドキュメントを備えており、さまざまなユースケースに対応できる分散型RESTful検索が可能です。スケーラビリティに優れたマルチテナント対応のフルテキスト検索エンジン機能を提供します。

    Elasticsearchは、特に、検索速度や分析柔軟性に優れています。強力な検索機能をシンプルに利用でき、データ蓄積/分析/可視化環境を容易に構築できます。

    ■経緯

    ・2010年:初版リリース

    Elasticsearchは、「ユーザーが、もっと簡単に、本当に欲しいものを検索できるように」というコンセプトで開発されています。

    ■ユースケース

    Elasticsearchを利用すると、大容量のデータから必要なデータを素早くに取り出すことができ、「リアルタイムデータ分析」「ログ解析」「全文検索」などさまざまな用途で利用できます。

    データ検索

    膨大なプロダクトリストから特定のキーワードに合致するプロダクトを検索するなどの用途に利用できます。

    サーバログ解析

    Webサーバのログから、ユーザーのページ閲覧情報を収集して、ユーザーアクション分析に利用できます。

    ビッグデータ処理

    大規模な全文検索を高速に実行できるため、ビッグデータを扱うシステムも構築できます。

    ■オフィシャルサイト情報

    オフィシャルサイト

    →Elastic →Elasticsearch

    ライセンス情報

    Elasticsearchのライセンスは「Apache License Version 2.0」です。

    詳細について、こちらを参照ください。
    →GitHub →elastic →elasticsearch →LICENSE.txt

    動作環境

    Elasticsearchは「Linux」「Windows」「macOS」などに対応しています。

    ダウンロード

    →Elastic →Elasticsearch →Download Elasticsearch

    導入事例

    →Elastic →ユーザーストーリー

    ■同様製品

    同様な機能を提供する製品として、次のようなものがあります。

    オープンソース製品:「Fess」「Groonga」など。


    基本情報

    概要

    Apache Solr(アパッチソーラー)は、Javaベースのオープンソース全文検索エンジンです。

    「ローカルにある文書ファイルの中から、キーワードを含む文書を検索する」というのが基本的な機能となります。

    他のシステムやツールと組み合わせることで、GoogleのようなWeb検索も行えるようにすることもできます。

    「Apache Solr」は、Apacheソフトウェア財団で開発されている全文検索エンジン「Lucene」プロジェクトのサブプロジェクトとして開発されています。「Lucene」をベースにして、管理画面やキャッシュ機構などが搭載されて、機能強化されています。

    開発コミュニティが活発に活動していて、日本語対応も、積極的に行われています。

    基本的には、英語圏での製品なので、デフォルトのままでは日本語検索の精度は、あまり高くありません。そこで、「Sen」「Gosen」「Kuromoji」などの日本語トークナイザ(形態素解析器)の追加設定をすることで、日本語検索の精度を高めることができます。

    TOPに戻る

    主な機能

    【インデックスレプリケーション】
    あるSolrサーバで生成したインデックスデータを、他のSolrサーバに自動でコピー(複製同期)することができます。1つのSolrサーバがダウンしたとしても、バックアップのSolrサーバで検索処理を維持できます。また、インデックスを作成するSolrサーバと、検索を担当するSolrサーバを分けることで、「インデックス作成を行う重い処理を実行中であっても、検索性能が低下しない」という利点もあります。

    【分散インデックス】
    1つのSolrサーバで非常に大きなインデックスを作成すると、メモリをインデックスに展開しきれずに、検索性能が大きく落ちてしまう可能性があります。そこで、Solrには、複数のSolrサーバに分散しているインデックスから返される検索結果を取りまとめて処理する機能があります。

    【クエリパラメータ】
    Solrサーバに検索クエリを投げる際のパラメータが多様にあって、さまざまな検索方法指定をすることができます。

    TOPに戻る

    主な特徴

    【ファセット】
    「ファセット」という、単語、クエリ、範囲に対する件数を返す機能があります。商用検索エンジンでも、この機能を持っているものは、そう多くありません。

    【拡張性】
    内部は、構造的に複数のコンポーネントに分かれていて、それぞれにプラグインシステムがあるため、拡張性に優れています。

    【データベースとの親和性】
    DataImportHandlerという機能を使うと、OracleやPostgreSQLなどのデータベースから、直接文書データを取り込むことができます。

    【規模を拡張しやすい】
    規模拡大(スケール)する機能や方法が用意されています。

    【高速性】
    高速化を可能にするキャッシュ機構を備えています。

    【日本語対応】
    さらに精度高く日本語に対応するための、トークナイザやフィルタを利用することができます。

    TOPに戻る

    同様製品(概要情報)

    同様な機能を提供する製品は、以下のようなものがあります。

    商用製品:「Fast ESP」、「ConceptBase Enterprise Search」

    オープンソース製品:「Katta」、「Senna」、「Namazu」

    TOPに戻る

    導入事例

    Apacheプロジェクトであるため、OSSの中でも信頼性が高く、世界中で導入されている実績があります。

    TOPに戻る

    ライセンス情報

    「Apache Solr」のライセンスは「Apache License 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

    TOPに戻る

    ダウンロード

    ダウンロードページ

    TOPに戻る

    ※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。