Submit Search
リクルート流Elasticsearchの使い方
37 likes
27,516 views
Recruit Technologies
2015/12/16 elastic {on} TOURの、中原の講演資料になります
Technology
Read more
1 of 57
Download now
Downloaded 97 times
1
2
3
4
5
6
7
8
Most read
9
10
11
Most read
12
Most read
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
More Related Content
PPTX
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
NTT DATA Technology & Innovation
PDF
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
Takayuki Shimizukawa
PDF
異次元のグラフデータベースNeo4j
昌桓 李
PPTX
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
Tokoroten Nakayama
PDF
マイクロサービス 4つの分割アプローチ
増田 亨
PDF
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Takahiko Ito
PDF
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
NTT DATA Technology & Innovation
PDF
インフラエンジニアってなんでしたっけ(仮)
Akihiro Kuwano
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
NTT DATA Technology & Innovation
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
Takayuki Shimizukawa
異次元のグラフデータベースNeo4j
昌桓 李
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
Tokoroten Nakayama
マイクロサービス 4つの分割アプローチ
増田 亨
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Takahiko Ito
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
NTT DATA Technology & Innovation
インフラエンジニアってなんでしたっけ(仮)
Akihiro Kuwano
What's hot
(20)
PDF
Pythonによる黒魔術入門
大樹 小倉
PDF
pg_trgmと全文検索
NTT DATA OSS Professional Services
PDF
PostgreSQLアンチパターン
Soudai Sone
PPTX
世界一わかりやすいClean Architecture
Atsushi Nakamura
PPTX
Docker Tokyo
cyberblack28 Ichikawa
PDF
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
PPTX
マイクロサービスにおける 結果整合性との戦い
ota42y
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
PDF
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
PDF
データ基盤グループを支えるチームビルディング
株式会社MonotaRO Tech Team
PDF
アジャイルなソフトウェア設計を目指して
増田 亨
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
PPTX
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
Tokoroten Nakayama
PDF
あなたの業務に機械学習を活用する5つのポイント
Shohei Hido
PDF
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
PDF
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
PPTX
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
PDF
Test Yourself - テストを書くと何がどう変わるか
Takuto Wada
PDF
MonotaRO のデータ活用と基盤の過去、現在、未来
株式会社MonotaRO Tech Team
PDF
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
Pythonによる黒魔術入門
大樹 小倉
pg_trgmと全文検索
NTT DATA OSS Professional Services
PostgreSQLアンチパターン
Soudai Sone
世界一わかりやすいClean Architecture
Atsushi Nakamura
Docker Tokyo
cyberblack28 Ichikawa
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
マイクロサービスにおける 結果整合性との戦い
ota42y
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
データ基盤グループを支えるチームビルディング
株式会社MonotaRO Tech Team
アジャイルなソフトウェア設計を目指して
増田 亨
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
Tokoroten Nakayama
あなたの業務に機械学習を活用する5つのポイント
Shohei Hido
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
Test Yourself - テストを書くと何がどう変わるか
Takuto Wada
MonotaRO のデータ活用と基盤の過去、現在、未来
株式会社MonotaRO Tech Team
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
Ad
Viewers also liked
(10)
PDF
Elasticsearch入門 pyfes 201207
Jun Ohtani
PDF
トレジャーデータ 導入体験記 リブセンス編
Kentaro Yoshida
KEY
AWSを使ったトラッキングログ収集
Ryu Kobayashi
PPTX
Memcachedの仕組みと設定
Tatsuya Akashi
PDF
Fluentd meetup #2
Treasure Data, Inc.
PDF
Rails3+devise,nginx,fluent,S3構成でのアクセスログ収集と蓄積
Takeshi Mikami
PDF
並行処理初心者のためのAkka入門
Yoshimura Soichiro
PDF
Akka ActorとAMQPでLINEのメッセージングパイプラインをリプレースした話
LINE Corporation
PDF
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
PPTX
Redisの特徴と活用方法について
Yuji Otani
Elasticsearch入門 pyfes 201207
Jun Ohtani
トレジャーデータ 導入体験記 リブセンス編
Kentaro Yoshida
AWSを使ったトラッキングログ収集
Ryu Kobayashi
Memcachedの仕組みと設定
Tatsuya Akashi
Fluentd meetup #2
Treasure Data, Inc.
Rails3+devise,nginx,fluent,S3構成でのアクセスログ収集と蓄積
Takeshi Mikami
並行処理初心者のためのAkka入門
Yoshimura Soichiro
Akka ActorとAMQPでLINEのメッセージングパイプラインをリプレースした話
LINE Corporation
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
Redisの特徴と活用方法について
Yuji Otani
Ad
Similar to リクルート流Elasticsearchの使い方
(15)
PDF
Elastic事例 リクルートテクノロジーズ
Yoshio Fujimatsu
PDF
転職会議におけるElasticsearch, Elastic Cloud活用事例
Manami Nakamura
PDF
JJUG CCC リクルートの Java に対する取り組み
Recruit Technologies
PDF
What's New in the Elastic 8.4 Release
Shotaro Suzuki
PDF
Learn, build, and scale with elastic - realizing great programming experience...
Shotaro Suzuki
PDF
Elasticsearchの機械学習機能を使ってみた
YuichiArisaka
PDF
Elasticsearch at CrowdWorks
佑介 九岡
PDF
Building modernapplicationwithelasiccloud
Shotaro Suzuki
PDF
ElasticSearchでいろいろやってる話
Shinya Takara
PDF
Elastic Aquia Joint webinar-20211006
Shotaro Suzuki
PDF
Elasticsearch at Makuake
Yoshiaki Yoshida
PDF
Elasticsearch勉強会
takahito takabayashi
PDF
Integrating elasticsearch with asp dot net core
Shotaro Suzuki
PPTX
Elasticsearch+nodejs+dynamodbで作る全社システム基盤
Recruit Technologies
PDF
Elastic searchとは_エンジニア勉強会20140212
エンジニア勉強会 エスキュービズム
Elastic事例 リクルートテクノロジーズ
Yoshio Fujimatsu
転職会議におけるElasticsearch, Elastic Cloud活用事例
Manami Nakamura
JJUG CCC リクルートの Java に対する取り組み
Recruit Technologies
What's New in the Elastic 8.4 Release
Shotaro Suzuki
Learn, build, and scale with elastic - realizing great programming experience...
Shotaro Suzuki
Elasticsearchの機械学習機能を使ってみた
YuichiArisaka
Elasticsearch at CrowdWorks
佑介 九岡
Building modernapplicationwithelasiccloud
Shotaro Suzuki
ElasticSearchでいろいろやってる話
Shinya Takara
Elastic Aquia Joint webinar-20211006
Shotaro Suzuki
Elasticsearch at Makuake
Yoshiaki Yoshida
Elasticsearch勉強会
takahito takabayashi
Integrating elasticsearch with asp dot net core
Shotaro Suzuki
Elasticsearch+nodejs+dynamodbで作る全社システム基盤
Recruit Technologies
Elastic searchとは_エンジニア勉強会20140212
エンジニア勉強会 エスキュービズム
More from Recruit Technologies
(20)
PDF
新卒2年目が鍛えられたコードレビュー道場
Recruit Technologies
PDF
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
Recruit Technologies
PDF
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Recruit Technologies
PDF
Tableau活用4年の軌跡
Recruit Technologies
PDF
HadoopをBQにマイグレしようとしてる話
Recruit Technologies
PDF
LT(自由)
Recruit Technologies
PDF
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
Recruit Technologies
PDF
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Recruit Technologies
PDF
リクルート式AIの活用法
Recruit Technologies
PDF
銀行ロビーアシスタント
Recruit Technologies
PDF
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
Recruit Technologies
PDF
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
PDF
ユーザーからみたre:Inventのこれまでと今後
Recruit Technologies
PDF
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
PDF
EMRでスポットインスタンスの自動入札ツールを作成する
Recruit Technologies
PDF
RANCHERを使ったDev(Ops)
Recruit Technologies
PDF
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
Recruit Technologies
PDF
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
PDF
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
Recruit Technologies
PDF
「リクルートデータセット」 ~公開までの道のりとこれから~
Recruit Technologies
新卒2年目が鍛えられたコードレビュー道場
Recruit Technologies
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
Recruit Technologies
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Recruit Technologies
Tableau活用4年の軌跡
Recruit Technologies
HadoopをBQにマイグレしようとしてる話
Recruit Technologies
LT(自由)
Recruit Technologies
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
Recruit Technologies
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Recruit Technologies
リクルート式AIの活用法
Recruit Technologies
銀行ロビーアシスタント
Recruit Technologies
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
ユーザーからみたre:Inventのこれまでと今後
Recruit Technologies
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
EMRでスポットインスタンスの自動入札ツールを作成する
Recruit Technologies
RANCHERを使ったDev(Ops)
Recruit Technologies
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
Recruit Technologies
「リクルートデータセット」 ~公開までの道のりとこれから~
Recruit Technologies
リクルート流Elasticsearchの使い方
1.
0
2.
株式会社リクルートテクノロジーズ インフラソリューション部 中原 裕成 1 リクルート流Elasticsearchの使い方
3.
自己紹介 • 氏名 中原
裕成 • 所属 株式会社リクルートテクノロジーズ ITソリューション統括部 インフラソリューション部 • 担当業務 Elasticsearchを用いたサービスの運用など 2
4.
もくじ 1. はじめに リクルート/リクルートテクノロジーズとは? 2.
Elasticsearchの活用例 Qass / Pusna / サービス可視化 3. Elasticsearchの運用ノウハウ Plugin Snapshot index バージョンアップ 4. さいごに 3
5.
はじめに 4
6.
リクルートテクノロジーズとは リクルートキャリア リクルートジョブズ リクルートスタッフィング リクルート住まいカンパニー リクルートライフスタイル リクルートマーケティングパートナーズ スタッフサービス・ホールディングス リクルートアドミニストレーション リクルートコミュニケーションズ 事業会社 機能会社 インフラ部門 大規模プロジェクト推進部門 UI設計/SEO部門 ビッグデータ機能部門 テクノロジーR&D部門 事業・社内IT推進部門 リクルート ホールディングス リクルートとは、 主要7事業会社+3機能会社 で構成されるグループ企業群 5
7.
リクルートテクノロジーズの役割 6 開拓 実装、展開運用 テクノロジー ライフサイクル ≪テクノロジーへの考え方≫ 「開拓」「実装・展開」を経た「運用」でリクルートへの利益貢献を行う。
8.
リクルートテクノロジーズの役割 7 広範囲のビジネスに装着 し、効果を最大化させる ための改善を行い、事業 貢献利益を追究 Rグループのビジネスに短・ 中期的に実活用の可能性があ る技術をリサーチ 対象技術における事業化への 検証を行い、評価・選定する 開拓(実活用研究) 実際に事業へ適用し、 より広範囲に利用す るための型化やス キームを構築 実装・展開 運用 実施内容 リクルートテクノロジーズ(短・中期的視野) 利益を目的としない中長期的な視 点に立ち、新技術や新手法の研究/ 発明を行い、論文発表することを 目指す 要素基礎技術の研究 社外(中・長期的視野) 技術数の 推移イメージ 年間約200の技術をリサーチし、 約30の技術を評価・選定 年間数個~10個の 技術を展開 運用フェーズまで 移行された技術が蓄積 無数の新技術を研究/発明
9.
Elasticsearchの活用例 8
10.
Elasticsearchを用いたサービス基盤 • 全社検索基盤 サイト内検索に活用 9 •
全社プッシュ通知基盤 リアルタイムな検索要 件に活用 • 各サービスの可視化 検索行動の可視化に活 用 検索 条件抽出 データ取得
11.
Elasticsearchを用いたサービス基盤 • 全社検索基盤 サイト内検索に活用 10 •
全社プッシュ通知基盤 リアルタイムな検索要 件に活用 • 各サービスの可視化 検索行動の可視化に活 用 • 更新性能・検索性能向 上 • サイト毎のカスタマイ ズ性 • リアルタイムな更新の 利用 • クラスタの運用負荷低 減 • 可視化の運用負荷低減 • アドホックな可視化要 望への対応
12.
全社検索基盤: Qass Elasticsearchの活用例 11
13.
各サービスサイト 各サービス検索エンジン 検索 これまでのリクルートの検索 • Apache
Solrをコアエンジンとした構成 各サイトが独立した検索エンジンを持つ構成 12 各サービスサイト 各サービス検索エンジン 検索 サイトA サイトB
14.
これまでのリクルートの検索 • Apache Solrをコアエンジンとした構成 13 各サービスサイト 各サービス検索エンジン 更新 同じ更新を複数台に投げる必要がある 全ノードが全ドキュメントを持つ必要がある
15.
? 検索品質の継続的向上のために • 個別検索エンジンを全社統一検索基盤へ 情報を取りまとめて最適な検索結果の継続的提供 14 エンドユーザー
各サービスサイト 定期的(毎日)な 検索品質向上 商品検索 検索基盤へ検索サイトに合った検索結果 検索結果分析基盤
16.
? 検索品質の継続的向上のために • 個別検索エンジンを全社統一検索基盤へ 情報を取りまとめて最適な検索結果の継続的提供 15 エンドユーザー
各サービスサイト 定期的(毎日)な 検索品質向上 商品検索 検索基盤へ検索サイトに合った検索結果 Solr構成のままでは 求める検索性能・更新性能に耐えられない 検索結果分析基盤
17.
Solr利用時の課題 16 検索性能 ドキュメント数増加時の パフォーマンス劣化が心配 更新性能 クラスタ内のノード増加時の 更新結果の反映時間が心配 Solr Elasticsearch クラスタリング機能を標準装備 ノード間での分散検索が可能※ ノードを跨いだShard同期を標準実装 ノード間での分散更新が可能※ Elasticsearchを採用した新検索基盤の構築へ ※: Solr/SolrCloudでも可能ですが、ES標準でクラスタリング機能があり採用 Solr4.0 リリース 当初 0.9 リリース 当初
18.
全社検索基盤: Qassとは? • リクルートの全社検索基盤
Elasticsearchを検索のコアエンジンとして利用 17 エンドユーザー 各サービスサイト 定期的(毎日)な 検索品質向上 商品検索 検索基盤へ検索サイトに合った検索結果 検索チーム 分析内容からの チューニング 検索結果分析基盤
19.
全社検索基盤: Qassとは? • 検索品質の継続的向上を行う全社基盤
自己成長型の検索ソリューション 18 検索結果をQass基盤へ集約 • 検索に関連する情報を一箇所に集積 • 検索結果を横断的に専門家が集約・分析 • 機械学習による検索品質向上 ユーザー行動に応じて 検索品質向上を自動的に行う 検索結果分析基盤
20.
サジェスト基盤 全社検索基盤: Qassとは? • 検索結果の展開 19 検索結果分析基盤 集約された検索結果の知見を利用 あ
検索 アーモンド アンテナ 改善効果可視化検索ロジック可視化
21.
検索ロジック可視化 QassでのElasticsearchの使い方 • Qassを中心とした検索エコシステム 20 検索結果分析基盤 改善効果可視化 あ 検索 アーモンド アンテナ サジェスト基盤 サイトA サイトB
22.
全社プッシュ通知基盤: Pusna-RS Elasticsearchの活用例 21
23.
GCM Google Cloud Messaging 全社プッシュ通知基盤:Pusna-RS •
プッシュ通知とは? スマートフォンアプリを起動していなくても通知を送ることの出来る仕組み 22 Push! Push! APNs Apple Push Notification Service
24.
プッシュ通知の効果 • プッシュ通知は開封率が高い メルマガに変わる販促ツールとして注目されている 23 メリット •
休眠ユーザの再起 • ユーザのアクティブ率向上 • リアルタイムな情報配信 デメリット • 実装の工数がかかる • 過剰なプッシュによるユーザ離れのリ スク ここに対する取り組みとして、プッシュ 通知基盤を開発
25.
リクルート Pusna-RSの全体構成 24 デバイス管理 プッシュ配信管理 DynamoDB elasticsearch 登録API SQS
登録worker 配信worker SQS 操作用WebUI 管理API 配信担当者 データ基盤 APNs GCM 事業サーバ
26.
リクルート Pusna-RSの全体構成 25 デバイス管理 プッシュ配信管理 DynamoDB elasticsearch 登録API SQS
登録worker 配信worker SQS 操作用WebUI 管理API 配信担当者 データ基盤 APNs GCM 事業サーバ デバイス情報や配信情報の 実データの索引として利用 (Doc数:億単位)
27.
Pusna-RSでのElasticsearchの使い方 26 DynamoDB • Pusna-RSでは複雑なデータ構造が不要 • RDBを使わずに全てのデータをKVSで管理 •
DynamoDBはAWSにて提供されるNoSQL • 信頼性・高速性・高スケーラビリティからマスタとして採用 • 並列スキャンによる高速な全件データ抽出が可能 elasticsearch • DynamoDBはデータの検索を苦手とする • 補完するための検索エンジンとして使用 • Solrと同じLuceneベースだが、リアルタイム更新が可能なことから採用。
28.
Pusna-RSでのElasticsearchの使い方 27 登録worker device/ hotpepper device/ jalan ・・・ elasticsearch Device情報Table hotpepper Device情報Table jalan DynamoDB 管理API & 配信worker • 同じデータをDynamoDBとElasticsearchに保存
用途に応じて適したデータソースを利用 単件&全件 条件指定&検索
29.
各サービスの可視化 Elasticsearchの活用例 28
30.
各サービスの可視化 29 • 各サービスの定量的な指標確認 用途に応じてデータを整理・投入・可視化 検索結果の分析 検索効果の可視化 サービスノード log サービスメトリクス の可視化 検索結果分析基盤
31.
検索基盤の可視化 30 • 検索基盤チーム側で指標の可視化 利用者からのフィードバックを検索基盤へ反映 検索効果の可視化 •
検索改善施策で 効果の高いもの は… • 高頻度な検索の ものは… 可視化からの解析 検索基盤へのFB
32.
プッシュ基盤の可視化 31 • デバイス登録状況・配信状況のリアルタイム可視化 利用者が次のプッシュ配信への改善に活用 •
プッシュ後アプ リ起動の高い時 間帯は… • アプリ起動の高 いプッシュ内容 は… 可視化からの解析 次回プッシュ配信 への活用 • 配信時間改善 • メッセージ改善 配信担当者
33.
可視化の横展開 32 • 可視化で得た知見を別のデータソースへ横展開 分析・知見獲得 可視化 Reports &
Analytics Webサーバログ サーバメトリクス Webビーコン 検索結果 プッシュ利用実績 新たなデータソースの可視化 ログ分析基盤
34.
Elasticsearchの運用ノウハウ 33
35.
Elasticsearch運用ノウハウ • Plugin機構の利用 Plugin機構を利用した 検索クエリ改善
Pluginの動的ロード PluginでのA/Bテスト 34 • Snapshot機構の利用 オンラインバックアッ プ 本番環境の複製 • 環境に合わせたIndex 作成 AWS(クラウド上)環境 オンプレミス環境 Qass Plugin ICU Plugin Kuromoji Plugin … Plugin Alias Alias
36.
Plugin機構の利用 Elasticseachの運用ノウハウ 35
37.
Plugin機構を利用したクエリ改善 • ElasticsearchのPlugin機構を利用 公式サポートのPluginでIndexing内容を最適化
Qass独自のPluginでクエリ最適化を実施 36 各サービスサイト Qass Plugin • 検索クエリの最適化 • ソート順最適化 などを動的に実施 • 検索クエリは従来通り ICU/Kuromoji Plugin • Indexing内容の最適化
38.
Plugin機構を利用したクエリ改善 • Qass独自のPlugin機構 独自の機構により無停止のモジュール更新
サイト運営に影響を与えず検索改善 o 高速な検索軸でのA/Bテスト可能な基盤を整備 37 各サービスサイト Qass Plugin 検索チーム 検索ロジックA v1 検索ロジックB v1 検索ロジックB v2 検索チームで動的切替
39.
Snapshot機構の利用 Elasticsearchの運用ノウハウ 38
40.
Elasticsearchのバックアップ - Snapshotの内部利用例 •
Elasticsearch標準装備のバックアップ機能 REST API実行で差分バックアップを自動的に実施 39 S3 Disk プラグインを通して 様々なストレージへ保存可能 REST API XXXX/XX/01 XXXX/XX/02 差分 差分保存で使用容量効率化 完了までの負荷軽減
41.
Elasticsearchのバックアップ - Snapshotの内部利用例 •
Snapshot/Restore APIをJenkinsで定期実行 実際の検索結果を元に検索改善を実施するクラスタを複製 40 Snapshot API Snapshots サービス用クラスタ 検索改善用クラスタ Restore API 本番同等の内容で 検索改善結果を確認可能な 環境を自動的に生成
42.
Elasticsearchのバックアップ - Snapshotの内部利用例 •
検索改善用クラスタをデータサイエンティストに提供 データサイエンティストが自由に検索アルゴリズムを操作、確認可能 41 検索改善用クラスタ データサイエンティスト アルゴリズムの操作 結果の確認
43.
環境に合わせたIndex作成 Elasticsearchの運用ノウハウ 42
44.
環境に合わせたIndex作成方法 • 環境によって異なるIndex作成方法を採用 どのような環境でもサービス影響出さず安全な更新が可能 43 AWS環境 サービス用クラスタ (Blue面) サービス用クラスタ (Green面) Blue-Green
Deploy でクラスタ切替 オンプレミス環境 Index A Index B Doc Alias Alias River:差分更新 Aliasで Index切替 サービスノードサービスノード
45.
AWS環境でのIndex作成 • AWSの特性を活かしてクラスタごと再構築 Indexing時のサービスへの負荷なくデプロイ 44 サービス用クラスタ (Blue面) サービス用クラスタ (Green面) 分析基盤 サービス用クラスタ (Blue面) サービス用クラスタ (Green面) 分析基盤 結果分析 クラスタ構築& 分析結果Indexing 結果分析 クラスタ構築& 分析結果Indexing
46.
現行Index現行Index オンプレミス環境でのIndex作成 • Indexの切替をAliasを用いて実現 サービス影響を出さずに新しいIndexをデプロイ 45 Index A Index B Doc Alias
Alias River:差分更新 Indexer 初期投入 Index A Index B Alias Alias
47.
Elasticsearch運用時の注意点 46
48.
Elasticsearchの利用バージョン 47 Qass Pusna 利用 バージョン 0.9 1.4 1.5 1.7 出来るだけ最新バージョンを 利用するようにしているが、 リリースサイクルが早く 追いつききれていない バージョンアップの際はどのような対応が必要か?
49.
Elasticsearchのバージョンアップ • 0.9 ->
1.7へのバージョンアップ 2バージョンのクラスタを用意してリアルタイムで移行 48 v0.9 クラスタ v1.7 クラスタ 両方へ書込 v0.9 クラスタ v1.7 クラスタ 片バージョンを切り離し
50.
Elasticsearchのバージョンアップ • 0.9 ->
1.7へのバージョンアップ 2バージョンのクラスタを用意してリアルタイムで移行 49 v0.9 クラスタ v1.7 クラスタ 両方へ書込 v0.9 クラスタ v1.7 クラスタ 片バージョンを切り離し APIやレスポンスが変わっているため、 そのままの移行は不可能
51.
まとめ 50
52.
まとめ リクルートテクノロジーズではElasticsearchを積極活用中し ています! @johtaniが主催するElasticsearch勉強会のスペースも提供して おり、得られたノウハウはその場で共有していきます! まずは今回お話した詳しい内容を、次回高林(@tatakaba)が話 す予定です! 51
53.
参考資料 • Qass Elasticsearch+Hadoopベースの大規模検索基盤大解剖
http://www.atmarkit.co.jp/ait/kw/elastic_hadoop.html • Pusna-RS 大規模プッシュ通知基盤大解剖 http://www.atmarkit.co.jp/ait/kw/pushinfra.html • リクルートテクノロジーズについて http://blog.recruit-tech.co.jp/ 52
54.
おわりに 53
55.
54 リクルートテクノロジーズでは、 Elasticsearchを始めとした、 “先端技術”を使って一緒に仕事をする仲間を募集しています!
56.
55
57.
www.elastic.co 56
Download