Upgrade to Pro — share decks privately, control downloads, hide ads and more …

リンクにサイト内検索があったら #TechLunch

リンクにサイト内検索があったら #TechLunch

リンクにサイト内検索があったら
2013/07/17 (水) @ Livesense TechLunch
発表者:渡邊 直登

E60aa4f80303f3f386898546ddb3686a?s=128

Livesense Inc.
PRO

April 21, 2014
Tweet

Transcript

  1.   ͖͔͚ͬ   αΠτ಺ݕࡧͱ͸ʁ   αΠτ಺ݕࡧͷछྨ   αΠτ಺ݕࡧ࢖ͬͯΈͨ   ϦϯΫʹαΠτ಺ݕࡧΛ࡞ͬͯΈͨ

  2. ͖͔͚ͬ

  3. ͋Δ೔ͷϢʔβʔ͔Βͷίϝϯτ 同じような問い合わせがたくさん来ている。。

  4. ࣮ࡍʹϖʔδ͸ͪΌΜͱ͋ΔͷʹɺϦʔν͍ͯ͠ͳ͍

  5. これを解決する方法?

  6. サイト内検索を作ってみよう

  7. αΠτ಺ݕࡧͱ͸

  8. ͜Ε

  9. αΠτ಺ݕࡧͷ໾ׂ  ஌Γ͍ͨ৘ใʹͨͲΓண͚ͳ͍Ϣʔβʔ΁ͷ ഑ྀ  αΠτ಺ͷճ༡ੑΛ޲্ͤ͞Δ

  10. αΠτ಺ݕࡧͷछྨ

  11. αΠτ಺ݕࡧͷछྨ͸େ͖̎͘छྨ αʔόʔΠϯετʔϧܕ "41ܕ •  (PPHMFΧελϜݕࡧ •  :BIPPαΠταʔν •  ."34'*/%&3 ͳͲ

    ͳͲ
  12. αΠτ಺ݕࡧ࢖ͬͯΈͨ

  13. ࠓճ͸)ZQFS&TUSBJFSΛ࢖ͬͯΈ·ͨ͠ɻ

  14. )ZQFS&TUSBJFSͷಛ௃ •  ϑϨʔζ検索や正規表現検索や属性検索や類似検索をサ ポート •  N-gram方式を拡張したインデックス方式であるN.M-gram方 式による漏れのない検索 •  複数台のサーバーのP2Pによる分散処理機能。 • 

    クローラー付属 •  大量文章のインデックスを短時間で作成 •  クラスライブラリが豊富 •  枯れている(2007年開発終了)
  15. )ZQFS&TUSBJFSΛΠϯετʔϧͯ͠ΈΔ $ wget http://fallabs.com/hyperestraier/hyperestraier-1.4.13.tar.gz $ tar zxvf hyperestraier-1.4.13.tar.gz $ cd

    hyperestraier-1.4.13.tar.gz $ ./configure --enable-mecab $ make $ make install
  16. ϊʔυαʔόͷ४උ $ estmaster init node $ estmaster start node ノードサーバ設定後、proxy

    passを調整して管理画面からアクセスできるようにする http://job.j-sen.jp.search.cgi.naoto-watanabe.local.livesense.jp/master_ui
  17. ෇ଐͷΫϩʔϥʔͰΫϩʔϧ͢Δલ४උ $ mkdir /home/website/search.job.j-sen.jp $ cd /home/website/search.job.j-sen.jp $ mkdir index

    $ cd index/ $ estwaver init index
  18. ෇ଐͷΫϩʔϥʔͰΫϩʔϧ͢Δલ४උ $ vim index/_conf # seed documents (weight and URL)

    seed: 1.5|http://job.j-sen.jp/jobpedia/index.htm # maximum depth of recursion maxdepth: 2 # allowing regular expressions of URLs to be visited allowrx: ^http://job.j-sen.jp/ # preferred language (0:English, 1:Japanese, 2:Chinese, 3:Korean, 4:misc)¬ language: 1
  19. Ϋϩʔϧ $ estwaver crawl -revcont index/ 2013-07-16T04:22:58Z INFO DB-EVENT: status:

    name=index//_index dnum=1313 wnum=82142 fsiz=26025846 crnum=0 csiz=0 dknum=0 2013-07-16T04:22:58Z INFO crawling started (revcont) 2013-07-16T04:22:58Z INFO fetching: 0: http://job.j-sen.jp/jobpedia/ index.htm 2013-07-16T04:22:58Z INFO seeding: 1.500: http://job.j-sen.jp/jobpedia/ index.htm 2013-07-16T04:22:58Z INFO waiting for threads: 0 2013-07-16T04:22:58Z INFO waiting for threads: 0 2013-07-16T04:22:58Z INFO crawling finished 2013-07-16T04:22:58Z INFO DB-EVENT: closing: name=index//_index dnum=1313 wnum=82142 fsiz=26025846 crnum=0 csiz=0 dknum=0 2013-07-16T04:22:58Z INFO finished successfully
  20. Ϋϩʔϧ݁Ռ http://job.j-sen.jp.search.cgi.naoto-watanabe.local.livesense.jp/node/node/search_ui

  21. Hyper Estraierには、検索のプログラムも用意されています。

  22. ϦϯΫʹαΠτ಺ݕࡧΛ࡞ͬͯΈͨ

  23. 1)1͔Βͷ)ZQFSFTUSBJFSͷར༻ 4FSWJDFT@)ZQFS&TUSBJFSͬͯͷ͕͋Γ·͢ https://github.com/rsky/Services_HyperEstraier

  24. 無理矢理実装してみました

  25. ͜Ε http://job.j-sen.jp.search.naoto-watanabe.local.livesense.jp/src/examples/

  26. ͜Ε http://job.j-sen.jp.search.naoto-watanabe.local.livesense.jp/src/examples/

  27. ࣮૷ͯ͠Έͯ •  クローラーはあまり希望したような情報を取得できていな かった。(別途自作のクローラーを使った方がよさげ) •  インデックスの再生成によくバグが出る •  検索速度は高速 •  もう少し時間に余裕を持ってやれば良かった

    •  サイトに組み込むのは簡単(今回のものは100行程度)
  28. ໝ૝ •  ユーザーは問い合わせより先に検索をしてくれるので、CS の負荷が減る! •  検索クエリを保持しておくことで、ユーザーが何を必要とし ているのかがわかる!

  29. ·ͱΊ •  ಋೖ·ͰͦΜͳʹ࣌ؒ͸͔͔Βͳ͍ •  Ϋϩʔϥʔ΍શจݕࡧΤϯδϯͷਫ਼౓·Ͱ֬ೝ͢Δ࣌ؒ ͕ͳ͔ͬͨ •  )ZQFSFTUSBJFSͩͱΠϯσοΫε͕ංେԽͦ͠͏ •  'FTTͷํ΋ࢼͯ͠Έ͍ͨ