CodeZine(コードジン)

特集ページ一覧

Elastic Cloudで快適なアプリ開発を! Elasticコアプロダクトの全貌【デブサミ2021】

【19-B-2】Learn, Build, and Scale with Elastic - Elastic Cloud で快適なアプリ開発を実現しよう!

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2021/04/08 12:00

 分散型リアルタイム検索および分析エンジンであるElasticsearchは、多くの企業が利用する優秀なソリューションだ。本プロダクトを開発するElastic社は、Elasticsearchのテクノロジーを核としたプロダクト群Elastic Stack(Elasticsearch、Kibana、Beats、Logstash)を展開。また、これらの機能をパブリッククラウドサービス化したElastic Cloudも提供している。こうした各種サービスは企業のどのような課題を解決するのか。Elastic日本法人であるElasticsearch株式会社の鈴木章太郎氏がその全貌を解説した。

目次
Elasticsearch株式会社 マーケティング部 テクニカル プロダクトマーケティング マネジャー 鈴木章太郎氏
Elasticsearch株式会社 マーケティング部 テクニカル プロダクトマーケティング マネジャー 鈴木章太郎氏

Elasticsearchが解決する課題とは何か?

 システムのデータを格納する目的で、リレーショナルデータベース(以下、RDB)が使⽤されることは多い。しかし、RDBには欠点がある。システム運用の長期化によりテーブルが肥⼤化して数百万のデータセットを含む状態になると、検索のパフォーマンスが著しく劣化してしまうのだ。この課題を解決するためにスキーマ分割やテーブル分割などの施策が行われるケースはあるものの、RDBの根本的な問題が解消されるわけではない。

 Elasticsearchはこうした課題を解決できる、柔軟で強力かつオープンでフリーな分散型リアルタイム検索および分析エンジンである。Elasticsearchはドキュメントベースのデータベースであり、データをJSON形式(⾮正規化された状態)で保存する。Elasticsearchを用いれば、たとえ数百万、数千万という量のデータであっても数秒ほどで簡単に検索できる。

 また、検索処理の高速性だけではなく日本語サジェスト機能の優秀性もElasticsearchの利点だ。

<日本語サジェストの機能概要>

・ユーザーが検索キーワードを入力すると、関連する候補が表示される。

 例:「日本」と入力すると「日本」「日本 地図」「日本 人口」などが提案される。

・不完全な検索キーワードを入力した場合でも、関連する候補が表示される。

 例:「にほn」と入力すると「日本」「日本 地図」「日本の人口」などが提案される。

・タイプミスした場合でも、意味の通る候補が提案される。

 例:「に hん」「にっほん」「日本ん」と入力すると「日本」「日本 地図」「日本の人口」などが表示される。

・候補となる単語が、キーワードが検索された回数が多い順に一覧表示される。

3 Solutions, 1 Stack, Deploy Anywhere

 鈴木氏は次に、Elastic社が提供する3つのソリューションやElastic Stack、多様なデプロイ選択肢について解説していった。

Elasticが提供する3つのソリューションやElastic Stack、多様なデプロイ選択肢の概要図
Elasticが提供する3つのソリューションやElastic Stack、多様なデプロイ選択肢の概要図

 Elastic StackはElasticsearchやKibana、Beats、Logstashから構成されるElasticのコアプロダクト群だ。Elasticsearchは前述の通り分散型リアルタイム検索および分析エンジンである。KibanaはElasticsearchのデータを可視化・分析するためのツールだ。棒グラフや円グラフなどさまざまな形式でデータを描画できる。

 Beatsは軽量なデータシッパーであり、各種システムからログデータなどを取得してElasticsearchに投入する役割を果たす。Logstashは強力なETLツールで、他のデータベースに格納されている大量のデータをすべてElasticsearchに投入するなどのユースケースで威力を発揮する。

 こうしたElastic Stackの技術をベースとして、Elastic社は「Elasticエンタープライズサーチ」「Elasticオブザーバビリティ」「Elasticセキュリティ」といった3つのソリューションを提供している。

 さらに、これらのソリューションのデプロイ選択肢も豊富だ。AWSやAzure、GCPといったパブリッククラウド環境にElasticをデプロイするためのElastic Cloud。物理ハードウェアや仮想環境、パブリッククラウド、プライベートクラウド、それらのハイブリッドなど多種多様な環境にデプロイできるElastic Cloud Enterprise。Kubernetes環境上にElasticをデプロイできるElastic Cloud on Kubernetesなどが用意されている。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

あなたにオススメ

著者プロフィール

  • CodeZine編集部(コードジンヘンシュウブ)

    CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

バックナンバー

連載:【デブサミ2021】セッションレポート

もっと読む

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5