Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Elasticsearchのサジェスト機能を使った話

6,898 views

Published on

第10回Elasticsearch勉強会のLT資料になります.
「Elasticsearchのサジェスト機能を使った話」

Published in: Software
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Elasticsearchのサジェスト機能を使った話

  1. 1. Elasticsearchの
 サジェスト機能を使った話 株式会社アイスタイル
 渡邊 紘太朗(@ktaro_w) 第10回 Elasticsearch勉強会 LT
 2015/06/011
  2. 2. 自己紹介 • 渡邊 紘太朗 • 株式会社アイスタイル • 2014年度入社(2年目) • アーキテクチャチーム • Elasticsearch歴 • 3ヶ月(ほぼサジェスト機能) • SNS • Twitter : @ktaro_w • Qiita : ktaro 2
  3. 3. 今日はElasticsearch サジェスト機能の話 3
  4. 4. 背景 • 弊社は、全文検索システム・サジェストシステムを
 Elasticsearchに移行中 • プロジェクトに参加した時点では、サジェストは
 未着手の状態 • サジェストシステムの移行を担当 4
  5. 5. 仕様について 5
  6. 6. 仕様 • 現状のサジェストでは、18個のカテゴリが存在 • それぞれに抽出用のSQLクエリ有り • カテゴリには優先順位がある • 移行後は、任意のカテゴリを組み合わせら れるようにする 6
  7. 7. いざ、開発スタート 7
  8. 8. まずは、Mappingを作成 8
  9. 9. Mapping • 前方一致の「Completion Suggester」 • 利用したパラメータ • index_analyzer • インデキシング時のアナライザ設定 • search_analyzer • 検索時のアナライザ設定 9
  10. 10. Mapping Plugins 1. elasticsearch-analysis-kuromoji • 日本語形態素解析エンジン • トークナイズ処理 • フィルタ処理 2. elasticsearch-analysis-icu • 半角・全角、依存文字を統一化 • char_filter : icu_normalizer • ㍉ =>「ミ」「リ」、㌢ =>「セ」「ン」「チ」 10
  11. 11. Mapping • filter • type : kuromoji_readingform • use_romaji : true //ローマ字化 • tokenizer • type : kuromoji_tokenizer • mode : search • properties • type : completion //前方一致 • index_analyzer • search_analyzer 11
  12. 12. 実際にデータを流し込む
 (Indexing) 12
  13. 13. Indexing • 利用したパラメータ • input • サジェストデータ入力 • output • サジェストデータ出力 • weight • ドキュメントの重み付け • 今回の移行では、重要な役割 13
  14. 14. Indexing & Search 14 検索時は、POSTメソッドで! 例 : http://localhost:9200/IndexName/_suggest
  15. 15. インデックスが完成! 15
  16. 16. ここで疑問 16
  17. 17. 現状のインデックスで
 高負荷(リクエスト)
 に耐え切れるのか? 17
  18. 18. 懸念点 • サジェストシステムはリクエストの頻度が高い • 現状では、最大で18個のインデックスを
 対象にリクエストされる • サーバーのスケールアップやスケールアウトも難しい 18
  19. 19. 検証してみた 19
  20. 20. 検証項目 1. 個別のインデックスをプログラムから複数選択
 して呼び出す(※複数インデックス) 2. 上記のインデックスが持つドキュメントを
 全て含んだ単一のインデックスをプログラム から呼び出す(※単一インデックス) 20
  21. 21. 検証1. 複数インデックス 21 「18」「9」「1」と個別のインデックスにリクエスト 2 17 6 5 4 3 8 9 11 1016 15 14 13 12 17 18 テストツール ノード Elasticsearh Server ① ②
  22. 22. 検証2. 単一インデックス 22 「18、9、1」のインデックスのドキュメントを含んだ
 単一のインデックス「A」にリクエスト テストツール ノード Elasticsearh Server 18 1 18,9,1 ・・・ ・・・ ① ② A
  23. 23. 検証用テスト環境 • サーバー数 - 1台 • ノード数 - 1個 • シャード数 - 5個 • 総ドキュメント数 - 約30000件 23
  24. 24. 検証用テストツール • テストツール「Gatling」 • HTTPリクエストとレスポンスを記録 • グラフィカルに結果を表示 • テストデータとして約20000件の重複のないデータを用意 • テスト項目 • 60秒間でランダムなテストデータを10000リクエスト • 60秒間にランダムなテストデータを20000リクエスト 24
  25. 25. 1回目 25 60秒間で、 10000リクエスト
  26. 26. 26 複数インデックス 単一インデックス • max response time • 95(ms) • mean response time • 2(ms) • mean requests/sec • 166.617 • max response time • 159(ms) • mean response time • 4(ms) • mean requests/sec • 166.611
  27. 27. 2回目 27 60秒間で、 20000リクエスト
  28. 28. 28 複数インデックス • max response time • 52351(ms) • mean response time • 6258(ms) • mean requests/sec • 303.467 • max response time • 4071(ms) • mean response time • 135(ms) • mean requests/sec • 333.122 単一インデックス
  29. 29. グラフで見てみる 29
  30. 30. 30 複数インデックス 単一インデックス
  31. 31. 単一インデックスに 軍配が上がる 31
  32. 32. まとめ • サジェスト機能の学習コストはそこまで高くない • 日本語の資料は割と少ない • サジェスト用インデックスは、まとめるが得策 • まとめた上で、並列化 • 重み付けもしやすい • Gatlingが便利 32
  33. 33. 33 Javaエンジニア・インフラエンジニア
 絶賛募集中!!! 最後に…
  34. 34. ご静聴
 ありがとうございました 34

×