第51回 Elasticsearch勉強会 LT大会
Rallyで試すパフォーマンスチューニングのベストプラクティス[email protected]第51回 Elasticsearch JP@pakio
View Slide
注意:すべて手元で計測したデータであることをご了承ください
効果のあったものをランキング形式でご紹介参考Tune for search speedTune for indexing speed
第3位
第3位refresh_intervalref: Tune for indexing speedデフォルトで1sとなっているrefresh_intervalを適切な値に設定(下記は10sの例)track: metricbeattrack: nested
第2位
第2位Search roundeddateref: Tune for search speedrange queryで指定するnowやtimestampを丸めるtrack: metricbeat
第1位
第1位Update to latestver.Elasticsearchのバージョンを最新に保ちましょう
v7.17.8vsv8.5.3Indexing Performancetrack: metricbeattrack: nested
v7.17.8vsv8.5.3SearchPerformancetrack: metricbeattrack: nested
Rallyで支えるバージョン追従第51回 Elasticsearch JP@pakio
Rallyとは?
Rallyとは?● ベンチマーク用クラスタのセットアップ● バージョンをまたいでのベンチマーク管理● ベンチマークの履歴管理● telemetry devicesを用いたボトルネック計測● 複数ベンチマーク結果の比較
バージョン追従のハードル ● バージョンアップのノウハウがない● パフォーマンスに懸念がある● クエリがそのまま動くかわからない
benchmark trackを作る
benchmark trackを作る① データの取得既存のデプロイメントからのデータ取得に対応
benchmark trackを作る② クエリを保存サービスのクエリログなどから、任意のクエリを抽出し track内に保存
benchmark trackを作る③ クエリを呼び出しtrack.pyにqueriesからランダムにクエリを抽出するスクリプトを記述、track.jsonで呼び出し
benchmark trackを作る④ 👍
まとめ ● パフォーマンス改善の一歩目としてバージョンアップはオススメ● Rallyを使って定量評価しましょう