SlideShare a Scribd company logo
Enviar búsqueda
Cargar
Iniciar sesión
Registrarse
社内ドキュメント検索システム構築のノウハウ
Denunciar
Shinsuke Sugaya
Seguir
Director of Business Development Department at N2SM, Inc.
23 de Apr de 2019
•
0 recomendaciones
•
11,427 vistas
1
de
27
社内ドキュメント検索システム構築のノウハウ
23 de Apr de 2019
•
0 recomendaciones
•
11,427 vistas
Descargar ahora
Descargar para leer sin conexión
Denunciar
Tecnología
企業内検索システムを作る際に遭遇するような課題を紹介します。
Shinsuke Sugaya
Seguir
Director of Business Development Department at N2SM, Inc.
Recomendados
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
Shinsuke Sugaya
19K vistas
•
31 diapositivas
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
52.1K vistas
•
30 diapositivas
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Takahiko Ito
1.3K vistas
•
27 diapositivas
Fess/Elasticsearchを使った業務で使える?全文検索への道
Shinsuke Sugaya
11.8K vistas
•
77 diapositivas
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
Kouhei Sutou
8.9K vistas
•
97 diapositivas
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
172.2K vistas
•
16 diapositivas
Más contenido relacionado
La actualidad más candente
Pythonによる黒魔術入門
大樹 小倉
44.2K vistas
•
35 diapositivas
Elasticsearchベースの全文検索システムFess
Shinsuke Sugaya
7.6K vistas
•
28 diapositivas
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
23.1K vistas
•
40 diapositivas
新人研修資料 向き合うエンジニア
akira6592
1.5K vistas
•
41 diapositivas
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
2.5K vistas
•
53 diapositivas
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
59.7K vistas
•
45 diapositivas
La actualidad más candente
(20)
Pythonによる黒魔術入門
大樹 小倉
•
44.2K vistas
Elasticsearchベースの全文検索システムFess
Shinsuke Sugaya
•
7.6K vistas
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
•
23.1K vistas
新人研修資料 向き合うエンジニア
akira6592
•
1.5K vistas
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
•
2.5K vistas
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
•
59.7K vistas
マイクロサービス 4つの分割アプローチ
増田 亨
•
41K vistas
Redisの特徴と活用方法について
Yuji Otani
•
100.6K vistas
TLS, HTTP/2演習
shigeki_ohtsu
•
13K vistas
グラフ構造のデータモデルをPower BIで可視化してみた
CData Software Japan
•
9.1K vistas
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
•
13.2K vistas
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
•
14.5K vistas
グラフデータベース入門
Masaya Dake
•
20.8K vistas
グルーミングしながら進めるプロダクト開発
Takafumi ONAKA
•
11.6K vistas
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
•
70.4K vistas
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
•
21K vistas
(2017.6.9) Neo4jの可視化ライブラリまとめ
Mitsutoshi Kiuchi
•
9.4K vistas
PostgreSQLアーキテクチャ入門
Uptime Technologies LLC (JP)
•
10.7K vistas
グラフデータベース Neptune 使ってみた
Yoshiyasu SAEKI
•
3.9K vistas
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
•
23.1K vistas
Similar a 社内ドキュメント検索システム構築のノウハウ
SyncThought/代表取締役社長 海野氏
loftwork
562 vistas
•
4 diapositivas
Microsoft Search @O365JPFUK
HiroakiNagao
234 vistas
•
12 diapositivas
オープンソースカンファレンスBi勉強会20141018
Hisashi Nakayama
3.3K vistas
•
15 diapositivas
エッジヘビーコンピューティングと機械学習
Preferred Networks
14.9K vistas
•
53 diapositivas
DataEngConf NYC’18 セッションサマリー #1
gree_tech
8.1K vistas
•
63 diapositivas
[Gree] DataEngConf NYC’18 セッションサマリー #1
Takashi Suzuki
123 vistas
•
63 diapositivas
Similar a 社内ドキュメント検索システム構築のノウハウ
(20)
SyncThought/代表取締役社長 海野氏
loftwork
•
562 vistas
Microsoft Search @O365JPFUK
HiroakiNagao
•
234 vistas
オープンソースカンファレンスBi勉強会20141018
Hisashi Nakayama
•
3.3K vistas
エッジヘビーコンピューティングと機械学習
Preferred Networks
•
14.9K vistas
DataEngConf NYC’18 セッションサマリー #1
gree_tech
•
8.1K vistas
[Gree] DataEngConf NYC’18 セッションサマリー #1
Takashi Suzuki
•
123 vistas
シラサギ紹介20161119
Naokazu Nohara
•
1.4K vistas
導入時に知っておきたいHtml5+css3の基本
Takeharu Baba
•
1.8K vistas
Ai の最新動向と今熱い chat bot による業務効率化
Katsuhiro Aizawa
•
688 vistas
White paper ecommercesearch_japanto_psale30_interface
隼人 橋川
•
12 vistas
システム高速化に使えるJSON関連ライブラリ
iRidge, Inc.
•
388 vistas
.NET用アプリケーション フレームワーク “Open 棟梁”のオープンソース化について
Daisuke Nishino
•
2.9K vistas
20110804 広報が考えるべきkgi、kpiとその施策 nims
loftwork
•
3.8K vistas
Php on windows vol.2 - session.1 - 公開用
hirookun
•
899 vistas
141027 シックスアパート様セミナー資料
Masaki Suzuki
•
923 vistas
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Ai Hirano
•
758 vistas
20180922 jazug8 cosmosdb_search
Kazuhiro Wada
•
460 vistas
Prd001 イノベーションを生み出す組織へ!
Tech Summit 2016
•
534 vistas
マルチクラウドで分析基盤を構築してみた Supership201612
Supership株式会社
•
1.9K vistas
オープンデータを利用した企業分析ツール"Buffett-Code"について
Shu (shoe116)
•
1.1K vistas
Más de Shinsuke Sugaya
LastaFluteでKotlinをはじめよう
Shinsuke Sugaya
2.1K vistas
•
49 diapositivas
PredictionIOでSparkMLを使った開発方法
Shinsuke Sugaya
1.1K vistas
•
20 diapositivas
PredictionIOのPython対応計画
Shinsuke Sugaya
687 vistas
•
27 diapositivas
PredictionIO構築入門
Shinsuke Sugaya
797 vistas
•
27 diapositivas
ESFluteによるElasticsearchでのO/Rマッパーを用いた開発
Shinsuke Sugaya
2.7K vistas
•
73 diapositivas
LastaFluteに移行したFessとElasticsearch+ESFluteによるDBFlute環境
Shinsuke Sugaya
6.9K vistas
•
55 diapositivas
Más de Shinsuke Sugaya
(16)
LastaFluteでKotlinをはじめよう
Shinsuke Sugaya
•
2.1K vistas
PredictionIOでSparkMLを使った開発方法
Shinsuke Sugaya
•
1.1K vistas
PredictionIOのPython対応計画
Shinsuke Sugaya
•
687 vistas
PredictionIO構築入門
Shinsuke Sugaya
•
797 vistas
ESFluteによるElasticsearchでのO/Rマッパーを用いた開発
Shinsuke Sugaya
•
2.7K vistas
LastaFluteに移行したFessとElasticsearch+ESFluteによるDBFlute環境
Shinsuke Sugaya
•
6.9K vistas
Elasticsearchで作る形態素解析サーバ
Shinsuke Sugaya
•
7K vistas
ElasticsearchとTasteプラグインで作るレコメンドシステム
Shinsuke Sugaya
•
5.2K vistas
Elasticsearchプラグインの作り方
Shinsuke Sugaya
•
14.7K vistas
Elasticsearch Authプラグインでアクセスコントロール
Shinsuke Sugaya
•
10.9K vistas
DBFlute Mavenプラグインを用いてCRUD作成
Shinsuke Sugaya
•
2.2K vistas
DBFluteを用いて開発されている全文検索システムFess
Shinsuke Sugaya
•
7.2K vistas
elasticsearchプラグイン入門
Shinsuke Sugaya
•
6.6K vistas
Solrベースの全文検索サーバ Fess
Shinsuke Sugaya
•
4.7K vistas
Sc2009autumn s2robot
Shinsuke Sugaya
•
2.7K vistas
オフィスに1台!全文検索Fess
Shinsuke Sugaya
•
2.9K vistas
Último
GraphQLはどんな時に使うか
Yutaka Tachibana
137 vistas
•
37 diapositivas
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
NTT DATA Technology & Innovation
321 vistas
•
44 diapositivas
CatBoost on GPU のひみつ
Takuji Tahara
982 vistas
•
30 diapositivas
インフラチームとCCoEの関係.pptx
ssuser5c7ee4
72 vistas
•
18 diapositivas
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
NTT DATA Technology & Innovation
32 vistas
•
44 diapositivas
磁石内臓イヤリングによる磁力変化を利用したジェスチャ識別
sugiuralab
90 vistas
•
1 diapositiva
Último
(13)
GraphQLはどんな時に使うか
Yutaka Tachibana
•
137 vistas
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
NTT DATA Technology & Innovation
•
321 vistas
CatBoost on GPU のひみつ
Takuji Tahara
•
982 vistas
インフラチームとCCoEの関係.pptx
ssuser5c7ee4
•
72 vistas
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
NTT DATA Technology & Innovation
•
32 vistas
磁石内臓イヤリングによる磁力変化を利用したジェスチャ識別
sugiuralab
•
90 vistas
MLOps Course Slides_JP(配布用).pdf
Yuya Yamamoto
•
245 vistas
ヒアラブルデバイスにおける音漏れ信号を用いた空中ジェスチャ認識
sugiuralab
•
83 vistas
拡散する画像生成.pdf
NTTDOCOMO-ServiceInnovation
•
226 vistas
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
•
113 vistas
画像生成AIの問題点
iPride Co., Ltd.
•
127 vistas
遠征ドルヲタのための便利サイトを作ってみた
Kenta Fujimoto
•
91 vistas
指側面を入力インタフェース化するリング型デバイス
sugiuralab
•
5 vistas
社内ドキュメント検索システム構築のノウハウ
1.
社内ドキュメント検索システム構築のノウハウ Search Engineering Tech
Talk 2019 Spring
2.
Search Engineering Tech
Talk 2019 Spring ■ 名前: 菅谷信介 ■ 仕事 ➔ 検索やAIに関する開発や技術コンサルティング ■ オープンソース活動 ➔ Fess, Apache PredictionIO, DBFlute関連,... ■ IT Search+で連載中 ➔ 「簡単導入! OSS全文検索サーバFess入門」 自己紹介 2
3.
Search Engineering Tech
Talk 2019 Spring 今回は 検索エンジンの中身的な話ではなく 企業内検索における検索システムの話 3
4.
Search Engineering Tech
Talk 2019 Spring 企業内検索とは 4
5.
Search Engineering Tech
Talk 2019 Spring ■ 企業内の様々な情報を検索するシステム 企業内検索(エンタープライズサーチ) 5 検索システム利用者 社内(外)サイト 業務システム (クラウドサービスも含む) 検索 クロール ファイルサーバ 複数のデータソースを対象として横断検索を実現する
6.
Search Engineering Tech
Talk 2019 Spring Fessで学んだ 企業内検索を作るための話 6
7.
Search Engineering Tech
Talk 2019 Spring Fessとは 7
8.
Search Engineering Tech
Talk 2019 Spring 8 Fessとは ■ オープンソースの全文検索システム ➔5分で構築できるくらい簡単に利用可能 ■ Apacheライセンスで提供 ■ Javaベースのアプリケーションサーバ ■ Elasticsearchを検索エンジンとして利用 ■ 様々な検索シーンで利用可能 ■ 現在の最新バージョンは12.6 ➔今年で開発10年目! https://fess.codelibs.org/
9.
Search Engineering Tech
Talk 2019 Spring 9 デモ環境: https://search.n2sm.co.jp/ 検索画面 PC版 スマホ版
10.
Search Engineering Tech
Talk 2019 Spring 10 管理画面 adminユーザーでログイン
11.
Search Engineering Tech
Talk 2019 Spring 11 検索分野での立ち位置 検索関連の知識なくても利用可能(すぐに使える) 検索関連の知識が必要(開発が必要) 検索システム ➔ Fess、商用検索システム 検索サーバ+クローラ ➔ Hyper Estraier、Namazu、Nutchなど 検索サーバ ➔ Solr、Elasticsearch、groongaなど 検索ライブラリ ➔ Luceneなど
12.
Search Engineering Tech
Talk 2019 Spring 企業内検索を 構築するときの課題 12
13.
Search Engineering Tech
Talk 2019 Spring ■ クロール対象の大規模化 ■ セキュア検索 ■ シングルサインオン ■ 業務システムとの連携 ■ ファイルの種類 よくでる課題 13
14.
Search Engineering Tech
Talk 2019 Spring ■ クロール対象のファイル数の増加 ➔数千万ファイル以上の案件が増えた ■ クラスタにして分散検索 ➔Elasticsearchで実現できる(運用ナレッジは必要) ➔できるだけ運用リスクを減らす ■ クロールする方法も工夫が必要 ➔通常のファイルシステムのクロールでは無理 ➔更新ファイルリストを生成しクロール クロール対象の大規模化 14 Fess データストアクロール 更新されたファイルの ファイルパス一覧 ファイルサーバなど 更新されたファイルだけ クロールする
15.
Search Engineering Tech
Talk 2019 Spring 15 セキュア検索(ロール検索) ■ 認証状態により検索結果を出し分ける ➔ログインしているユーザー情報を利用する ➔AD連携して認証情報を取得するなど ■ クロール時に権限情報を付加する ➔Sambaクロールの場合はファイルの権限を利用する 営業部 技術部 Fess 部門別や役職別に検索結果を 出し分けることが可能 営業資料 検索条件に 部署を追加 ドキュメントに 部署を追加
16.
Search Engineering Tech
Talk 2019 Spring ■ 検索システムにも自動でログインする ➔Windows統合認証 ➔リバースプロキシ型認証 ➔OpenID Connectなど ■ Active DirectoryだとWindows統合認証 ➔今後はAzureADでOpenID Connectと増えるかも シングルサイオン 16 利用者 Fess認証サーバ 利用者 Fess認証サーバ Windows統合認証 OpenID Connect リバースプロキシ型
17.
Search Engineering Tech
Talk 2019 Spring ■ いろいろな業務システムがある ■ とはいえ、データはデータベースにある ➔SQLで取得してインデックスすれば良い ➔JDBCドライバがあればだいたい何とかなる 業務システムとの連携 17 Fess データストアクロール DBサーバ SQLのSELECT文 1行1ドキュメントとして 加工してインデックスする
18.
Search Engineering Tech
Talk 2019 Spring ■ 検索するためにはテキスト化が必要 ■ MS Office: POI ■ PDF: PDFBox ■ DocuWork: IFilter or xdw2text ■ 一太郎: IFilter (消えつつある気がする…) ■ AutoCAD: libdxfrw ■ その他もろもろ: Tika ➔Tikaはいろいろなことをいい感じにテキスト化する ➔場合によっては微調整は必要 ファイルの種類 18
19.
Search Engineering Tech
Talk 2019 Spring その他の細々とした課題 19
20.
Search Engineering Tech
Talk 2019 Spring 20 ■ http://〜の検索結果ページでfile://〜のリンクが機 能しない ➔セキュリティポリシーの設定で有効な場合もある? ■ 対応方法としては… ➔WebDAVでhttp://〜等でアクセス可能にする ➔Fessではプロキシとして対象ファイルを返却 file://〜問題
21.
Search Engineering Tech
Talk 2019 Spring 21 ■ zipファイル爆弾 ➔展開すると数Gのファイルになる ➔展開時には展開後のサイズの考慮が必要 ➔Tikaは対策をしている ■ excelファイル爆弾 ➔何でもExcelにコピペする人がいる… ➔無駄な単語が膨大にあり、Analyzerで高負荷に… ➔Fessは単語の切り捨てや重複除去対応での対策 〜爆弾ファイル
22.
Search Engineering Tech
Talk 2019 Spring 22 ■ PDFのフォーマットにも複数のバージョン ■ テキスト抽出ならJavaだとPDFBoxとか ■ PDFBoxは古いバージョンで文字化けする ➔古いバージョンなので気にする必要はない ■ その他ではOCRのPDFとかの場合 ➔無駄なスペースが入るので、独別な処理が必要 PDF文字化け
23.
Search Engineering Tech
Talk 2019 Spring 23 ■ クリック数やLike数をドキュメントに保持する ■ クリック数は検索結果クリック時に集計 ➔リンクを書き換えてリダイレクト ■ 検索状況を集計してレポートする ■ Function Score Queryでスコアに反映する 検索の集計や反映 利用者 Fess 検索結果を表示 検索結果をクリック 検索結果へリダイレクト 検索結果のサイト ここでクリック情報を取得
24.
Search Engineering Tech
Talk 2019 Spring 24 ■ Google Search Applianceが保有する機能なので 普通に要求される場合が多い ■ Analyzerで同義語辞書で対応可能な場合もある ➔リアルタイムな反映が求められると☓ ■ 特定のクエリーのときに登録語を展開する ➔Fessでは実装済み ➔関連コンテンツ的な機能もあったり… 関連クエリー(同義語)
25.
Search Engineering Tech
Talk 2019 Spring 25 ■ クロールとは別に画像生成処理を実行 ■ HTMLであればページ内で指定された画像 ➔metaタグのthumbnailかog:imageなど ➔ページ内のimgタグで正方形に近い画像など ➔PhantomJSなどでがんばる必要はない ■ PDFであればImageMagickのconvertコマンド ■ MS Officeはunoconvとconvertの合せ技 サムネイル画像の表示
26.
Search Engineering Tech
Talk 2019 Spring まとめ 26
27.
Search Engineering Tech
Talk 2019 Spring ■ 企業内検索を作る際にはいろいろと課題がある ■ 今後はクラウドの対象も増えそう ■ Fessは数々の課題を乗り越えてきた! ➔ 何か作るならFessをベースに考えると良いはず まとめ 27