More Related Content Similar to Searchable Snapshot でコスト削減 (20) Searchable Snapshot でコスト削減2. 樋口 慎 (@shin0higuchi)
Acroquest Technology
業務
執筆
• データ分析(時系列データ・自然言語)
• 検索システム構築/コンサルティング
• Elasticsearch NEXT STEP
• Elasticsearch NEXT STEP 2
資格
• Elastic Certified Engineer
• Elastic Certified Analyst
4. Searchable Snapshotとは?
1. クラウドストレージなどに保存しておいた Snapshot を
Elasticsearchにマウントし、検索可能にする機能。
2. 想定されるユースケース
① 検索リクエストが少ないインデックスのReplica代わりに利用する。
② 過去データのアーカイブとして、必要な時のみElasticsearchにマウント。
node_1
Primary1
node_2
Primary3
node_3
Primary2
クラウドストレージ等に
保存されたSnapshot
クラウドストレージに
Snapshotがあるため
レプリカが不要※
[※] 検索リクエストが多い場合は、スループットを向上させる目的でレプリカを保持する場合があることに注意。
5. 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に保持し、さらなるストレージ節約が可能となる見込み
10. Mount Snapshot API
• 対象のインデックスが既に open になっている場合は、renamed_index で別名にする。
→ 元インデックスを削除してからマウントする方が良いかも
• "index_settings"や"ignored_index_settings"で、インデックス設定を変更可能。
12. Async Search
1. Ver. 7.7 で実装された、非同期検索機能。
時間のかかる検索をバックグラウンドで走らせておき、
あとで結果を取得することができる。
2. 過去の大量データを集計するなどの重い処理に適しており、
Searchable Snapshotと併せて利用するケースが想定できる。