SlideShare a Scribd company logo
1 of 16
Searchable Snapshot でコスト削減
Acroquest Technology株式会社
Elastic Certified Engineer / Analyst
樋口 慎
樋口 慎 (@shin0higuchi)
Acroquest Technology
業務
執筆
• データ分析(時系列データ・自然言語)
• 検索システム構築/コンサルティング
• Elasticsearch NEXT STEP
• Elasticsearch NEXT STEP 2
資格
• Elastic Certified Engineer
• Elastic Certified Analyst
前提のお話
1. Elasticsearchのデータ構造
① インデックスは、内部的に「シャード」という単位で分割保持される。
② 各シャードは通常、レプリカを保持することで可用性を保っている。
node_1
Primary1
node_2
Primary3
node_3
Primary2
Replica1
Replica3
Replica2
Elasticsearchクラスタ
Replica Shardは、
Primary Shardとは別の
ノードに配置される
Searchable Snapshotとは?
1. クラウドストレージなどに保存しておいた Snapshot を
Elasticsearchにマウントし、検索可能にする機能。
2. 想定されるユースケース
① 検索リクエストが少ないインデックスのReplica代わりに利用する。
② 過去データのアーカイブとして、必要な時のみElasticsearchにマウント。
node_1
Primary1
node_2
Primary3
node_3
Primary2
クラウドストレージ等に
保存されたSnapshot
クラウドストレージに
Snapshotがあるため
レプリカが不要※
[※] 検索リクエストが多い場合は、スループットを向上させる目的でレプリカを保持する場合があることに注意。
1. たとえば、時系列データが "syslog-yyyymmdd" のように、
日毎のインデックスに保持される場合…
時系列データのライフサイクル例
No. フェーズ 保持するログ期間 特徴
1 Hot 当日のログのみ 書込み・検索に耐えうるHot Nodeに配置する。
(充分なRAM・CPU・SSD推奨)
2 Warm ~1ヶ月前のログまで
(Hot除く)
書込みが発生しないので、Hot Nodeよりも
一般に要求スペックが低いWarm Nodeに配置する。
検索速度要件が緩いならHDD利用も選択肢のひとつ。
3 Cold※ 1ヶ月以上過去のログ Searchable Snapshot を利用する。
レプリカを保持しないため、ストレージを節約できる。
※ 現在開発中のFrozen Tierでは、メタデータのみをElasticsearchに保持し、さらなるストレージ節約が可能となる見込み
結局何が嬉しいのか?
1. ストレージコストの削減
① レプリカシャードを保持しない
② 過去のアーカイブデータはElasticsearchから退避させることができる
2. ヒープ利用率の低減
① レプリカシャードを保持しない
デモ
1. 手動でAPIから実行する。
① Snapshot取得
② Mount snapshot APIの実行
③ 検索してみる
2. ILM (Index Lifecycle Management)で自動化する。
3. Async Search
Snapshot取得
PUT _snapshot/gcs_repository
{
"type": "gcs",
"settings": {
"bucket": "my_bucket",
"client": "my_client"
}
}
GCSの場合
①リポジトリ作成
②Snapshot取得
取得したSnapshotを確認
Mount Snapshot API
• 対象のインデックスが既に open になっている場合は、renamed_index で別名にする。
→ 元インデックスを削除してからマウントする方が良いかも
• "index_settings"や"ignored_index_settings"で、インデックス設定を変更可能。
ILM設定
1. Kibanaから設定可能
Async Search
1. Ver. 7.7 で実装された、非同期検索機能。
時間のかかる検索をバックグラウンドで走らせておき、
あとで結果を取得することができる。
2. 過去の大量データを集計するなどの重い処理に適しており、
Searchable Snapshotと併せて利用するケースが想定できる。
Async Search
POST <index名>/_async_search
※bodyには、あえて重いクエリを記述している
クエリが実行中の場合は、一旦 id を返す
Async Search
GET /_async_search/<先ほど受け取ったid>
先ほどとは違い、結果が取得できている
さいごに
1. Searchable Snapshotは、
ログ分析における Index Life Cycle の定石となりそう。
2. 今後の Frozen 対応でさらにリソース効率が向上する見込み。
ご清聴ありがとうございました。
Evolve the Earth with Emotion of Technology

More Related Content

What's hot

「NIST SP 800-204C サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
「NIST SP 800-204C  サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説「NIST SP 800-204C  サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
「NIST SP 800-204C サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
Eiji Sasahara, Ph.D., MBA 笹原英司
 
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
Katsushi Suzuki
 

What's hot (20)

Cookpad TechConf 2016 - DWHに必要なこと
Cookpad TechConf 2016 - DWHに必要なことCookpad TechConf 2016 - DWHに必要なこと
Cookpad TechConf 2016 - DWHに必要なこと
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集
 
Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>
 
Jiraの紹介(redmineとの比較視点にて)
Jiraの紹介(redmineとの比較視点にて)Jiraの紹介(redmineとの比較視点にて)
Jiraの紹介(redmineとの比較視点にて)
 
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
 
2015/11/15 Javaでwebアプリケーション入門
2015/11/15 Javaでwebアプリケーション入門2015/11/15 Javaでwebアプリケーション入門
2015/11/15 Javaでwebアプリケーション入門
 
「NIST SP 800-204C サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
「NIST SP 800-204C  サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説「NIST SP 800-204C  サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
「NIST SP 800-204C サービスメッシュを利用したマイクロサービスベースのアプリケーション向けDevSecOpsの展開」概説
 
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
JavaScriptとWebGLで圧倒的な3D空戦バトルを再現。「編隊少女 -フォーメーションガールズ-」における3Dレンダリング技術解説 ~Babylo...
 
Azure ADと外部アプリのID連携/SSO - Deep Dive
Azure ADと外部アプリのID連携/SSO - Deep DiveAzure ADと外部アプリのID連携/SSO - Deep Dive
Azure ADと外部アプリのID連携/SSO - Deep Dive
 
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
 
Test Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるかTest Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるか
 
Apache NiFi 1.0 in Nutshell
Apache NiFi 1.0 in NutshellApache NiFi 1.0 in Nutshell
Apache NiFi 1.0 in Nutshell
 
[Cloud OnAir] Google Cloud へのデータ移行 2019年1月24日 放送
[Cloud OnAir] Google Cloud へのデータ移行 2019年1月24日 放送[Cloud OnAir] Google Cloud へのデータ移行 2019年1月24日 放送
[Cloud OnAir] Google Cloud へのデータ移行 2019年1月24日 放送
 
Elasticsearchベースの全文検索システムFess
Elasticsearchベースの全文検索システムFessElasticsearchベースの全文検索システムFess
Elasticsearchベースの全文検索システムFess
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
 
「KPTの理論と実践」プロジェクトへの「ふりかえりカイゼン」の導入で学んだこと
「KPTの理論と実践」プロジェクトへの「ふりかえりカイゼン」の導入で学んだこと「KPTの理論と実践」プロジェクトへの「ふりかえりカイゼン」の導入で学んだこと
「KPTの理論と実践」プロジェクトへの「ふりかえりカイゼン」の導入で学んだこと
 
7. Vertex AI Model Registryで BigQuery MLのモデルを管理する
7. Vertex AI Model Registryで BigQuery MLのモデルを管理する7. Vertex AI Model Registryで BigQuery MLのモデルを管理する
7. Vertex AI Model Registryで BigQuery MLのモデルを管理する
 
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
 
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所
 

Similar to Searchable Snapshot でコスト削減

[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
Insight Technology, Inc.
 
Css2014 ruo ando_2014-10-23-01
Css2014 ruo ando_2014-10-23-01Css2014 ruo ando_2014-10-23-01
Css2014 ruo ando_2014-10-23-01
Ruo Ando
 

Similar to Searchable Snapshot でコスト削減 (20)

Elastic ML Introduction
Elastic ML IntroductionElastic ML Introduction
Elastic ML Introduction
 
Intro2 Sqlanalyzer
Intro2 SqlanalyzerIntro2 Sqlanalyzer
Intro2 Sqlanalyzer
 
超個体性をもったエッジコンピューティング実現に向けたElixir/Nerves環境の適合性評価
超個体性をもったエッジコンピューティング実現に向けたElixir/Nerves環境の適合性評価超個体性をもったエッジコンピューティング実現に向けたElixir/Nerves環境の適合性評価
超個体性をもったエッジコンピューティング実現に向けたElixir/Nerves環境の適合性評価
 
Elasticsearch workshop 23_sql
Elasticsearch workshop 23_sqlElasticsearch workshop 23_sql
Elasticsearch workshop 23_sql
 
Glueの開発環境(zeppelin)をrancherで作ってみる
Glueの開発環境(zeppelin)をrancherで作ってみるGlueの開発環境(zeppelin)をrancherで作ってみる
Glueの開発環境(zeppelin)をrancherで作ってみる
 
メディアコンテンツ向け記事検索DBとして使うElasticsearch
メディアコンテンツ向け記事検索DBとして使うElasticsearchメディアコンテンツ向け記事検索DBとして使うElasticsearch
メディアコンテンツ向け記事検索DBとして使うElasticsearch
 
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみようPPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
 
Elasticsaerch Runtime Field
Elasticsaerch Runtime FieldElasticsaerch Runtime Field
Elasticsaerch Runtime Field
 
Renewed using elasticsearchonaspnet-core5
Renewed using elasticsearchonaspnet-core5Renewed using elasticsearchonaspnet-core5
Renewed using elasticsearchonaspnet-core5
 
[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
[C31]世界最速カラムナーDBは本物だ! by Daisuke Hirama
 
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#1
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#1しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#1
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#1
 
Integrating elasticsearch with asp dot net core
Integrating elasticsearch with asp dot net coreIntegrating elasticsearch with asp dot net core
Integrating elasticsearch with asp dot net core
 
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
 
Azure Data Explorer
Azure Data ExplorerAzure Data Explorer
Azure Data Explorer
 
ネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらいネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらい
 
Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...
 
Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話
Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話
Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話
 
Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428
 
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
 
Css2014 ruo ando_2014-10-23-01
Css2014 ruo ando_2014-10-23-01Css2014 ruo ando_2014-10-23-01
Css2014 ruo ando_2014-10-23-01
 

Searchable Snapshot でコスト削減