Skip to Content

Elasticsearch アーキテクチャとは?

Elasticsearch は、2010 年に開始された、分析やビッグデータの出力に表示するデータの高速クエリのための最初の分散型検索エンジンの 1 つです。当時は、大量のデータを蓄積するエンタープライズ・ビジネスが増えていましたが、従来のデータベース・エンジンでは対応できませんでした。Elasticsearch は、構造化・非構造化データを保存できるベクター・データベースとして導入されました。エンタープライズ分析でテラバイトを超えるデータが性能の問題を引き起こすようになった際、ビッグデータのインデックス化とクエリの高速化における最初の大きな飛躍となりました。

Elasticsearch

Elasticsearch は、データをまとめ、API を介して検索できるようにするデータストアです。これは Apache Lucene をベースにしており、データをシャードに分散するインデックス化およびストレージ・サービスです。各シャードは独自のデータを保持しますが、シャードはノード間でデータを分散するために互いに分離されます。Elasticsearch は、全てのシャードをプールし、開発者がデータをクエリするための API を提供します。API により、管理者は特定のユーザーに権限を設定して、データをさらに保護し、特定のデータへのアクセスを許可されたユーザーのみに許可することができます。

開発者は、構造化データや非構造化データに限定されません。Elasticsearch は、構造化データと非構造化データの両方を引き出しますが、ストレージが 1 つの大きなデータベースであるかのように、分散シャード内のデータをクエリします。Elasticsearch によるデータの処理は、標準的なデータベース・エンジンよりもはるかに高速であるため、分析、大量のデータにわたる検索機能、ネットワーク・トラフィック分析などのアプリケーションに最適です。

Elasticsearch アーキテクチャの主要コンポーネント

Elasticsearch の最初のコア・コンポーネントはノードです。ノードとは、データを保存するサーバーまたはデバイスです。クラスタは、ノードの集合で構成されています。ノードやクラスタは冗長性のためにデータセンター全体に分散できますが、分散データはデータクエリの性能を向上させるものです。Elasticsearch はベクター・データベースですが、データをドキュメントとして保存します。ドキュメントとは、非構造化データを格納するエンティティのことですが、構造化データも格納できます。

データはノード間でシャーディングされます。シャードは、大規模なデータストアを小さな部分に分割するためのデータの一部です。これにより、フロントエンド・アプリケーションの結果セットでデータをまとめて取得するための分散とクエリが容易になります。Logstash はデータ・パイプラインとして使用され、未加工データを取り込み、使用可能な形式に変換します。 

Elasticsearch には、データへのゲートウェイである API もあります。開発者は API を認証し、キーでクエリを実行する必要があります。API は、データへのアクセスと、開発者がデータに対してクエリを実行する方法を制御します。API を持つことで、バックエンドのアーキテクチャが隠蔽され、安全性が向上します。その結果、Apache Lucene や他のコンポーネントの動作に詳しくない開発者でも利用可能になります。

ノードとクラスタ

クラスタはノードのグループですが、ノードはクラスタ内で特定の役割を持ちます。マスターノードは、一般的にクラスタを制御します。マスターノードは、インデックスを作成・削除し、クラスタに参加する他のノードを追跡できます。各クラスタにはマスターノードがあります。

データノードはデータを格納します。データの操作や変更は、データノードの責任となります。データを集約すると、データノードに追加されます。検索機能は、データノードでも行われます。

ノードの調整は、適切なノードへのトラフィックを制御するゲートウェイとして考えてみてください。調整ノードは、送信先に応じて、要求をマスターノードまたはデータノードに送信します。例えば、クラスタに検索を送信すると、調整ノードが要求を管理します。

Elasticsearch には、データの変換と移動のためのパイプラインがあります。インジェスト・ノードは、ドキュメントの管理とインデックス作成のための変換を担当します。Elasticsearch は、大量のデータ転送を行う環境では、マスターノードやデータノードから独立したインジェスト・ノードを使用することをお勧めします。

リモート対応ノードは、Elasticsearch システム内の他のクラスタにリクエストを送信します。検索クエリでは、リモート対応ノードとのクロスクラスタ機能を使用してデータを検索できます。クラスタ間のデータの複製も、リモート対応ノードの責任です。

シャードとレプリカ

高速検索とクエリには、インデックスが必要です。インデックスは、検索を高速化する形でデータを整理するデータストアの方法です。Elasticsearch では、各インデックスは多数のシャードで構成されています。シャードは、Elasticsearch がそれらをクラスタ全体に分散させるノードに格納され、処理を高速化します。シャードはデータのコピーを 1 つ保持しますが、Elasticsearch は複数のシャードに対して同時に検索を実行できます。

フェイルオーバーや耐障害性には冗長性が必要です。そのため、レプリカはシャードのコピーを処理します。レプリカは異なるノードに格納されるため、1 つのノードに障害が発生したときにデータが失われることはありません。ノードに障害が発生した場合、Elasticsearch は別のノードのレプリカのデータにアクセスできます。

Elasticsearch のデータフロー

Elasticsearch は、開発者がクエリを送信するための API を提供します。API は、開発者をバックエンドの複雑さから守ります。バックエンドは、前述のように、シャード、ノード、インデックス、レプリカなど、いくつかのコンポーネントで構成されています。開発者に Elasticsearch の管理を強制する代わりに、データフローは API へのクエリから始まります。

API は、最初にクエリをコーディネーターに送信します。コーディネーターは、シャードが配置されている適切なノードに送信します。クエリは、それぞれが独自のデータセットを持つ複数のシャードに送信することもできます。ルーティングはコーディネーターが行い、クエリに適したシャードを決定します。

シャードがドキュメントを収集した後、ドキュメントのインデックスがコーディネーターに送信されます。複数のシャードがデータをコーディネーターに送信すると、コーディネーターはインデックスを整理し、マージしてソートします。インデックスをソートすると、コーディネーターはシャードから実際のドキュメントを取得します。データが取得されると、API を介してアプリケーションに送り返されます。

Elasticsearch アーキテクチャを最適化するためのベストプラクティス

Elasticsearch は、平均的なデータベース・エンジンよりもはるかに複雑であるため、最適化には異なるアプローチが必要です。まず、バックエンドで十分なリソースが実行されていることを確認する必要があります。クエリの速度が遅すぎる場合は、CPU、メモリ、サーバー・ストレージの容量を増やすことを検討してください。

データの検索にはインデックスが必要ですが、一部のデータは他のデータほど頻繁には使用されません。Elasticsearch ではインデックスをフリーズすることができ、これにより使用されていないインデックスが別のシャードに移動されます。コーディネーターは、全てのクエリを検索するためのシャードが少なくなり、性能が向上します。

Elasticsearch のスレッド・プールはクエリ・サイズを制御し、各クエリで処理されるデータ量をサポートするように最適化する必要があります。クエリに十分なデータを処理するようにスレッド・プールを設定しますが、ノード・リソースにも関連します。ノードとスレッド・プールの両方に十分なリソースが必要です。リソースが不足している場合、大量のクエリを実行すると性能が低下する可能性があります。

まとめ

Elasticsearch は、標準的なデータベースよりもはるかに複雑であるため、最適な性能を得るためには、適切なアーキテクチャとコンピューティング・リソースが必要です。Elasticsearch を構成する場合はベストプラクティスを使用しますが、バックエンドに必要なクエリやデータ・ストレージをサポートする適切なコンピューティング・リソースを用意することも重要です。

十分なストレージ・リソースを確保する方法の 1 つは、ピュア・ストレージの FlashBlade を活用することです。FlashBlade は、中小企業から大企業まで、飛躍的な成長をサポートします。アプリケーションは、より多くのユーザーがデータを保存し、任意の数の顧客をサポートするように拡張できます。

こちらの資料もご覧ください!

01/2026
Strengthening healthcare cyber resilience with an assume-breach approach
Organizations fall victim to ransomware attacks every 14 seconds, and healthcare is a top target. Attackers recognize that system uptime is critical for providers, making them prime targets for extortion. In this primer, learn on how healthcare data storage decisions help combat cyber attacks.
eBook
8 pages

関連リソースとイベント

動画
動画:エンタープライズ・データ・クラウドのメリット

会長兼 CEO のチャーリー・ジャンカルロが、ストレージ管理からデータ管理へのシフトこそが未来である理由を解説します。統合により、エンタープライズ IT の運用管理がいかに変わるかがわかります。

視聴する
リソース
従来のストレージは未来を支えません。

近代的なワークロードには、AI 対応の高速性、セキュリティ、拡張性が求められます。スタックの準備はできていますか?

現行のサイバー対策を評価する
Pure360 デモ
ピュア・ストレージを探索、体験、学習できます。

ピュア・ストレージの製品や機能をご紹介するオンデマンド動画/デモ付き動画をご用意しています。是非ご利用ください!

デモ動画を見る
ソート・リーダーシップ
イノベーション競争

ストレージ技術革新の最前線に立つ業界リーダーによる最新のインサイトと展望。

詳しく見る
このブラウザは現在サポートされていません。

古いブラウザには、セキュリティ・リスクが存在する場合があります。ピュア・ストレージの Web サイトをより快適にご利用いただけるよう、最新のブラウザにアップデートしてください。