製品リリース

検索可能スナップショットをElasticsearchに導入

Elastic 7.10で、“検索可能スナップショット”をベータリリースしました。検索可能スナップショットは、AWS S3やMicrosoft Azure Storage、Google Cloud Storageをはじめ、お好みのオブジェクトストアを利用してストレージコストを劇的に削減し、より多くのデータをElastic Stackでより長い間保持するか、Elastic Stackが従来より提供してきた高速な検索パフォーマンスとの間でのトレードオフを可能にします。Elasticは以前から低コストのオブジェクトストアにデータをバックアップする仕様を提供しています。今回、検索可能スナップショットが登場し、格納したデータの検索も可能となったことで、各種オブジェクトストアをさらにアクティブに活用いただけるようになりました。

検索可能スナップショットは、2種類の第一級データティアに対応します。1つは7.10で同じくベータリリースされたColdティア、もう1つは今後リリース予定のFrozenティアです。Elasticでは従来からデータライフサイクル管理の目的で、複数のデータティア(高速なHotティアと、低コスト・低パフォーマンスなWarmティア)をサポートしてきました。新登場のColdティアは検索可能スナップショットで使用でき、ストレージコストを最大50%削減します。これは、読み取り専用データの冗長性を担保するための複製を、低コストなオブジェクトストアへ移すことで、データのローカルストレージの密度を高めることができます。現在開発中のFrozenティアではさらに踏み込み、全データを低コストのオブジェクトストアだけに格納します。アクセス頻度の高いデータのローカルキャッシュを使ってクエリを高速化し、オブジェクトストアの完全な検索が可能になる予定です。Elasticが開発する他の機能と同様に、検索可能スナップショットもAPIを使ってオブジェクトストアからのデータの読み込み、管理、検索を直接制御することができます。一連の新機能を使えば、Elastic Stack内で増え続けるデータをより簡単に、安価に管理できます。費用対効果にすぐれた方法で組織のデータ保持要件を満たせるだけでなく、セキュリティ調査やブラックフライデーの対昨年比売上を把握する目的で過去データを思いのままに活用できるなど、新たなユースケースの可能性も広がります。

進化の階段を上がる

時系列データは、あらゆるところに存在します。たとえばログやメトリック、トレース、セキュリティイベントも時系列データです。セキュリティやオブザーバビリティのほか、多数のユースケースに欠かせないデータです。Elasticは、こうしたデータの継続管理やスケールの作業をより簡単に、高速かつ効率的に実施できるよう研究と開発を重ねてきました。時系列データは非常に早く増えるため、この取り組みはとても重要です。たとえば1日あたり1テラバイトを収集するケースを考えましょう。1週間で7テラバイト増え、わずか数年でペタバイト規模に達します。このような現場には、指数関数的なストレージの増加を管理し、かつそのデータを検索する能力を維持する必要が生じます。

Elasticは以前から、この問題を解決するアプローチとしてデータのライフサイクルに着目してきました。インジェストされたばかりのデータは、検索される頻度も高い傾向にあります。たとえばインシデント調査を行って問題を特定、解決するには、関連するすべてのデータに高速にアクセスする必要があります。攻撃者がホストやアプリケーションに侵入した場合、侵害による影響の範囲が対応の早さで変わることは少なくありません。一方、データを、ソースや種類に応じて異なる使用レベルに分類することも可能です。組織が保有するデータには、法的義務やコンプライアンス上の理由により保持することが必要なデータもあれば、比較のために時々参照するだけのデータもあることでしょう。データの古さやソースの種類、他の属性に応じてデータの必要度が異なるとなれば、当然、ストレージと処理能力に求められる水準も異なってきます。

この点に関してElasticは、“ユーザーがコストとパフォーマンス、性能のバランスを取り、ニーズを満たすための機能を提供する”ことをミッションとして掲げてきました。その開発はElastic Stackのすべての側面に及びますが、大黒柱となるアプローチは“データティア”、つまりデータのライフサイクル管理です。データライフサイクル管理というコンセプトは特段新しいものではなく、Elasticsearchの初期から導入されてきました。Elastic Cloudでは数年前からインデックスライフサイクル管理(ILM)をサポートしています。ILMによる定義を通じて、ユーザーはHotノード(SSDを搭載した高速マシン)とWarmノード(回転ディスクを使用する低コストマシン)を併用するデータ管理を手軽に実施できます。スナップショットライフサイクル管理(SLM)は、AWS、Google、Azureといった低コストのオブジェクトストア、およびオンプレミスのストレージベンダーを使ったバックアップの取得と格納をさらに手軽にする機能です。このようなバックアップ用のスナップショットは、多くのユースケースにおいてデプロイの重要な一部ですが、アクティブなデータティア階層の一つと見なされることはありませんでした。なぜなら、これまでスナップショットを検索することは不可能だったからです。しかし今回の検索可能スナップショットの登場で、その前提も大きく変わろうとしています。検索可能スナップショットがあれば、低コストのオブジェクトに新規の安価なデータティアを作成し、そのバックアップデータを活用することが可能になります。

検索可能スナップショットを導入する

検索可能スナップショットは非常にエキサイティングな機能です。S3をはじめとするオブジェクトストアを、まったく新たな方法で活用することが可能になります。スナップショットでバックアップしたデータをオブジェクトストアに格納するところまでは以前と変わりません。違いは、そのオブジェクトストアを使える、という点です。Elasticsearchで直接スナップショットを検索できることから、オブジェクトストアを常にオンラインで活用することになります。この機能を開発し、また質の高いエクスペリエンスを確保するため、ElasticはKibanaからElasticsearch、Luceneにいたるまでの各種プロダクトのあらゆる部分に変更を加えました。開発チームはLuceneに関する長年の知見を活用し、検索メカニズムを最適化して、クエリへの回答やダッシュボードの読み込みに本当に必要なスナップショットインデックスのサブセットだけをプルダウンできるようにしました。検索可能スナップショットは、S3や他のオブジェクトストアでスナップショットによりバックアップされたインデックスからデータを復旧、または取得するプロセスを非常にシームレスかつ高速なものにします。またこの機能の誕生により、さらにコストを下げる新たなデータティアの開発も実現しました。

Coldティア

7.10リリースで新たにベータ提供される“Coldティア”は、Warmティアに比べてクラスターストレージ容量を最大50%削減します。HotティアおよびWarmティアと同水準の信頼性と冗長性を備え、ハードウェアエラーから全ノードを自動復旧させる機能も完全にサポートします。たとえば「このスパイクを先月と比べるとどうか?」とか、「このユーザーは過去6か月に部外秘システムにログインしたか?」といった問いも、はるかにすぐれたコスト効率で投げかけることができます。

なぜこうしたことが可能になるのか、少し詳しく見てみましょう。HotティアとWarmティアは、ディスクの50%をレプリカシャードの格納に使用します。この冗長な複製のおかげで高速かつ一貫性のあるクエリパフォーマンスと、マシンの故障に備えるレジリエンシーが確実に提供される仕組みです。マシンが故障した場合は、、インデックスや検索のタスクに影響が出ないよう、レプリカがプライマリの役割をシームレスに引き継ぎます。

diagram-primary-shard-disk-replica-shard.jpg

しかし、読み取り専用データにすれば、冗長なレプリカを簡単に省略できます。このアプローチにうってつけなのが、スナップショットレポジトリです。データをS3に格納すれば、ローカルのSSDや回転ディスクストレージに格納するよりずっと安上りです。つまりColdティアは、レプリカシャードをスナップショットとしてS3に格納します。この結果、以前と同じコストならColdノードで使用可能な容量は2倍になり、クエリパフォーマンスへの影響もほどほどに抑えることができます。

diagram-higher-performing-disk-es-snapshot-on-s3.jpg

Coldティアでローカルノードの不具合やディスク故障が生じた場合、検索可能スナップショットを使い、S3にスナップショットとして格納されたレプリカインデックスから自動で復元させることができます。またインデックスは使用可能な状態に保たれ、従来のスナップショットから復元する場合に比べて劇的に短時間に検索リクエストを実行します。これが、検索可能スナップショットとColdティアを併用するメリットです。

Frozedティア

たとえば、セキュリティ調査に際して無制限にデータを遡ることができるとか、過去2年に顧客のビヘイビアがどのように変化したかをAPMの生データを深堀して分析できるとしたら、控えめに言って最高です。それこそが、Frozenティアの意義です。Frozenティアは、これまでElasticsearchでコスト効率良く使うことができなかったデータタイプやデータ量を活用し、完全に新しいユースケースへの扉を開きます。“検索可能なS3”というコンセプトが組織のビジネス目標にどれほど貢献するか、想像してみてください。Frozenティアは現在開発中ですが、リリース後はS3や他のお好みのオブジェクトストアに格納したデータを直接検索できるようになります。Frozenティアを導入したユーザーは、ローカルにデータを格納する必要もなくなります。すべてスナップショットでS3に格納できるためです。そして、Frozenティアの強みは何と言っても格納後です。万が一監査やセキュリティ調査で必要になっても、データを引っ張り出し、リハイドレートする必要がありません。検索可能スナップショットを使って直接クエリできます。

Frozenティアの導入は、比類ないメリットをもたらします。つまり、ほぼ無制限なデータ量に対する検索能力をオンデマンドで提供し、S3にデータを格納するというリーズナブルなアプローチを可能にします。HotからWarmへ、さらにCold、Frozenへ、データのライフサイクルは完全に自動化されます。またストレージコストを可能な限り最小に抑えつつ、必要なデータへのアクセスと検索パフォーマンスを確保します。

最高のユーザーエクスペリエンス実現に向けて

Elasticは革新的な新機能をリリースし、ユーザーに届けるために常に尽力しています。しかし、重要なことがもう1つあります。可能な限り最高のユーザーエクスペリエンスを叶えるために、新機能をほかのすべての機能と確実に調和してうまく動作させるという取り組みです。

  • データティア設定のシンプル化:データティアのセットアップと、ILMポリシーの設定方法を大幅に簡素化しました。新登場のロールを使い、データノードにロールを割り当てることができます。インデックスライフサイクル管理を使用すると、Elastic Stackがこのロール割り当てに基づき、データを自動で適切なティアに割り当てます。
  • 非同期検索:S3での高速検索を実現するためにできることはすべて行っていますが、Elasticは手品師ではありません。S3にクエリをかける場合、数ミリ秒ほど余分に時間がかかります。Elasticはそうした場合も可能な限り最高のユーザーエクスペリエンスを提供したいと考え、新開発した“非同期検索”メカニズムをElasticsearchに組み込みました。実行時間が長いクエリがある場合、Kibana上のエクスペリエンスを大幅に向上させます。ユーザーは非同期で検索リクエストを実行できるようになり、結果を待つ必要はありません。リクエストの進捗状況を監視でき、後で結果を取得することが可能です。また検索が完了していなくても、返された結果から順に、部分的に取得することも可能です。
  • クエリ効率:一連の変更と向上を追加し、検索実行時、マッチしないインデックスや検索不要なインデックスをスキップできるようになりました。具体的には、データの時間情報やその他の属性に基づいて事前フィルタリングを行い、マッチしないとわかっているインデックスを自動的にスキップします。検索を途中で終了することも可能になりました。テキスト検索にblock-max WANDを使い、ソートされたクエリで検索対象シャードを並べ替え、十分なマッチが見つかったところで検索を中止するといったことができます。

各機能強化は単体でも十分に価値を発揮しますが、複数の機能を組み合わせるとき、はるかに大きな価値をもたらします。Elasticのチームは常に全体像を意識し、継続的な機能開発を行っています。また、開発した新機能がElastic Stackの既存の全機能と一体化し、シームレスに組み込まれるよう務めています。

各種ユースケースとElasticソリューションにおけるメリット

S3などのオブジェクトストアで検索スナップショットを使用して、数年分のログ、メトリック、APMトレースを検索できるとしたら…そのバリューはどれほどでしょうか。(長い記事となってきました。お茶など召し上がりつつお読みください。)検索可能スナップショットとElasticオブザーバビリティを組み合わせると、数年分のアーカイブデータを直接検索することが可能になります。検索の準備としてスナップショットからインデックスを復元するという、時間もコストもかかるプロセスも必要なくなります。

S3など、オブジェクトストアに格納された数年分の大規模セキュリティデータソースに検索可能スナップショットで簡単にアクセスできることは、脅威ハンティングの担当者やアナリストにとって大きな武器となります。検索可能スナップショットとElasticセキュリティを組み合わせると、DS、NetFlow、DNS、PCAP、エンドポイントデータなど大量のセキュリティ関連データを収集しても、これまでより大規模に、アクセスしやすい形で長期間、低コストに保持できます。

最後に、検索可能スナップショットの登場で、費用を気にせずあらゆるアプリのコンテンツと業務履歴データを検索することが可能になることにも触れておきましょう。Elastic Stackでリリースされた検索可能スナップショット機能は、Elasticエンタープライズサーチのユースケースにも大きなメリットをもたらします。大量のアプリケーションコンテンツを追加でサポートする場合や、S3などのオブジェクトストアに格納された組織の履歴データ全体を検索する場合も、アーカイブした履歴コンテンツを検索可能な形で格納すれば、法外な費用をかけることなく目的を達成できます。

今後の予定

7.10で検索可能スナップショットとColdティアをベータリリースしたことは、Elasticにとって心躍る、大きな一歩です。今後の展開にもぜひご注目ください。まもなくFrozenティアが登場するほか、Elastic Cloudにはシンプルなスライダーで使えるマネージドのColdティアとFrozenティアが加わり、サインアップからサブスクリプションまでのフローもますますシンプルになる見込みです。Elasticの開発は常に進行中であり、今後も続きます。“毎回のリリースでユーザーの皆さまにさらなるバリューを届けたい”という想いが、私たちの原動力となっています。

diagram-searchable-snapshots-today-next-future.jpg

今すぐはじめる

検索可能スナップショットを使ってColdティアにデータを格納するには、Elasticsearch Serviceでクラスターを立ち上げるか、Elastic Stackの最新バージョンをインストールしてご利用ください。すでにElasticsearchを導入済みの方は、お使いのクラスターを7.10にアップグレードするだけで新機能をお試しいただくことができます。各機能について詳しくは、データティアのドキュメント、および検索可能スナップショットのドキュメントをご覧ください。