Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Oktavia全文検索エンジン - SphinxCon JP 2014

18.621 Aufrufe

Veröffentlicht am

* 検索エンジンOktaviaとは
* Sphinxに統合してみた

Veröffentlicht in: Technologie
  • 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,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • 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,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • 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,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • 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,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • 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,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Oktavia全文検索エンジン - SphinxCon JP 2014

  1. 1. DeNA Co, Ltd. 渋川よしき 10/26/2014 SphinxCon
  2. 2. ! 渋川よしき ! DeNAで仕事してます ! @shibu_jp (twitter) ! yoshiki.shibukawa (Facebook) ! yoshiki@shibu.jp (mail) ! 主に使う言語 ! C/C++, Python, JavaScript ! sphinx-users.jpのファウンダ ー ! サンフランシスコから帰ってき ました
  3. 3. ! 検索エンジンの基礎 ! Oktaviaの構造 ! OktaviaのAPIの使い方 ! Oktavia組み込んでみてどうよ?
  4. 4. ! 転置インデックス方式は東アジアの言語 では辛ぽよ ! FM-indexっていう、まったく違う方式が あるよ ! Oktaviaは先月のPyConの前日にアップ ロードしたよ。 ! Sphinxに組み込んでみたよ←NEW ! 昨日は遅かったけどだいぶ改善したよ
  5. 5. AM.txt (0) • Good morning • Hi PM.txt (1) • Good afternoon • Good evening • Hi
  6. 6. AM.txt (0) • Good morning • Hi PM.txt (1) • Good afternoon • Good evening • Hi
  7. 7. ! Sphinxは組み込みの検索エンジンを提供 ! 転置インデックス方式 ! 転置インデックスはインデックス作成時(ビル ド時)と検索時に単語分割が必要 ! 日本語だと単語分割に巨大な辞書が必要 ! 最初のバージョンは日本語非対応 ! パッチをいくつか送ったりもしてみた ! でもまだ十分じゃない
  8. 8. ! イタリアの大学教授が考案したアルゴリズム ! Paolo Ferragina ! Giovanni Manzini ! FM-indexは海外ではあまり有名ではない ! 既存のアルゴリズムと大きく違う ! 既存のアルゴリズムでも西洋の言語では十分 ! ゲノムの解析分野ではポピュラー ! このアルゴリズムを使った検索エンジンを実装し ました。
  9. 9. Estimated Time: 15min
  10. 10. ! ウェブブラウザで動く検索エンジ ! PythonとJSX (DeNAが作ったaltJS http://jsx.github.io/)で書かれている ! FM-indexを検索のアルゴリズムとして 利用
  11. 11. ! Action Script 3っぽいaltJS ! クラス構文がある ! 型に超厳格 ! thisで悩むことが大幅に減る ! パフォーマンスの最適化が凄い
  12. 12. ! FM-indexは圧縮インデックスを使った検 索アルゴリズムでは最速 ! メモリに余裕がなく、インデックス配信が必 要なブラウザ上の検索に有利 ! FM-indexは単語分割を必要としない ! 日本語の検索で辞書がいらない
  13. 13. ! Oktaviaは追加のメタデータを持つ ! 巨大な1つの文字列に統合されたテキストに、場所の 情報を与える Use the Force, Luke. No, I am your father. Ep4.txt Ep5.txt ! いくらでもメタデータを自由に追加できる。 ! セクション: ドキュメント区切り。名前付き。 ! ブロック: コードブロックなど。名前付き。空白箇所あり。 ! スプリッタ: 単語区切り。名前なし。大量に持てる。 ! テーブル: 行と列。RDBっぽい検索に対応。
  14. 14. ソース 読み込み インデックス ファイル作成 インデックス 読み込み 検索結果 表示 CLI tool Browser search program
  15. 15. ソース 読み込み インデックス ファイル作成 インデックス 読み込み 検索結果 表示 CLI tool Browser search program ! 1ヶ月前に完成 ! Python 2.6, 2.7, 3.3, 3.4をサポート
  16. 16. ソース 読み込み インデックス ファイル作成 インデックス 読み込み JSX版 検索ツール 検索結果 表示 CLI tool Browser search program PyPy ! 1ヶ月前に完成 ! Python 2.6, 2.7, 3.3, 3.4をサポート
  17. 17. Estimated Time: 23min
  18. 18. ! Bitbucketにアップロード ! https://bitbucket.org/shibu/sphinx/ branch/feature/oktavia ! やったこと ! html_search_engineオプション追加 ! 既存実装をsearch/invertindex.pyに ! Oktavia用コード追加 ! テキストをOktaviaに流し込んでビルド
  19. 19. ! O(n) ! 文書量に線形で処理時間がかかる ! JSX版 (node.js) ! Pythonドキュメント(10MB)で1分半ぐらい ! Python版 ! Sphinxのドキュメント(850KB)で30分 ! PyPyだと95秒!JIT偉い! ! Pythonドキュメントだと6時間?
  20. 20. Python2.7 PyPy コンテンツ結合 9.43 [s] 67.51 [s] BW変換 1640.58 [s] 1.14 [s] ウェーブレットマトリックス構築 5.37 [s] 0.84 [s] 文字ごとの事前ランク計算 0.02 [s] 0.03 [s] キャッシュ計算(2%時) 70.18 [s] 21.17 [s] 合計 1725.59 [s] 90.69 [s] ! 傾向が違いすぎる・・・ ! if “pypy” in sys.executable:みたいなの必要? ! CPythonは完結データ構造のC言語実装が必要かも
  21. 21. ! str = str + substr ! pypy: 19.19 [s], python: 2.44 [s] ! str += substr ! pypy: 0.0137 [s] python: 0.0023 [s] strって書いてあるけど文字列じゃなくて数値の配列です
  22. 22. ! _range = getattr(__builtins__, 'xrange', range) ! pypy: 0.85 [s], python: 129.38 [s] ! pythonで、子モジュールでうまく動かない 問題(xrangeではなく、rangeが使われてた) ! _range = range if sys.version_info.major == 3 else xrange ! pypy: 0.82 [s], python: 4.85 [s]
  23. 23. ! ビット演算が重い ! はじめてのC拡張を作り始めたよ (今日の昼から) ! ひととおりPythonコードを移植して、 コンパイルは通ったけどテストがまだ ! 結果は後日
  24. 24. ! 転置インデックス方式は東アジアの言語 では辛ぽよ ! FM-indexっていう、まったく違う方式が あるよ ! Oktaviaは先月のPyConの前日にアップ ロードしたよ。 ! Sphinxに組み込んでみたよ←NEW ! 昨日は遅かったけどだいぶ改善したよ

×