ウチダスペクトラム株式会社 Product Management Office ナレッジセンター機能解説と設計概念 ウチダスペクトラム株式会社 Product Management Office
集合知形成フレームワーク(ナレッジセンター 概念図) 組織 【検索結果に過去の利用状況を提示】 付加情報(Collabo)付き検索結果 タグ、コメント、投票 【エンタープライズレコメンド】 関連キーワード、関連ドキュメント一覧 ドキュメント参照ユーザー一覧 キーワード利用ユーザー一覧 【ユーザーレコメンド】 【監査】 操作履歴の表示 【プロファイリング】 ユーザー、スペース、ドキュメント、キーワード 検索する ドキュメント参照する 作業履歴 ナレッジコンテンツ タグ 投票 コメント ドキュメントメタデータ 登録 タグをつける コメントをつける 投票する ナレッジログ 検索 検索ログ 参照ログ ログイン・ログアウトログ etc 検索手順を保存する ブックマークする ナレッジオブジェクト お気に入りサーチ お気に入りドキュメント お気に入りタグ サーチヒストリ タグヒストリ メッセージ QA 【個人の利用履歴の管理】 個人スペース 【検索手段の簡単作成・共有】 共有スペース データソース 検索エンジン File Server ドキュメントメタデータの取得 Web Site 自動タグ 【コンテンツの自動分類】 自動タグ データベース Lotus/Notes
ナレッジオブジェクト 検索をベースとした「集合知の形成」を積極的に取り入れていくことが、情報活用方法を考える上で重要なポイントとなります。InSightでは、ユーザーのつけたタグや、ユーザーが行った検索の条件、特定の検索結果のブックマークなどを「ナレッジオブジェクト」として保存し、分析・再利用ができる「集合知の形成」を実現しています。 以下の種類のナレッジオブジェクトをサポートします。 種別 概要 お気に入りサーチ 使用した検索条件を保存し、再利用を可能にします。お気に入りサーチを作成すると、よく使用する条件を毎回設定する必要がなく、簡単に複雑な条件の検索をおこなうことができます。 お気に入りドキュメント よく参照するドキュメントのリンク情報を保存します。 お気に入りタグ よく使用するマスターデータを保存して、検索で再利用することができます。 メッセージ 指定した条件で、新着ドキュメントをお知らせします。 サーチヒストリ 検索で使用したキーワードをフィールド別に保存します。 タグヒストリ タグ付けとして使用した値を保存します。
ナレッジオブジェクトの登録 Widget操作 ナレッジオブジェクトの登録(作成)は、Widgetの操作およびアイテムのD&Dにより、個人スペースに登録されます。 アイテムのD&D
コラボレーション ● スペース ナレッジオブジェクトは、スペースと呼ばれる管理領域で管理されます。 スペースには、個人スペースと共有スペースがあり、ナレッジオブジェクトを作成すると、個人スペースに保存されます。 個人スペースで管理しているオブジェクトを共有スペースへD&Dすることで、オブジェクトを特定のグループ、組織に公開することができます。 スペースは、ユーザーフォルダを作成することができ、オブジェクトを階層管理することが可能となっています。 フォルダを作成し、 階層管理が可能。 登録 共有 【検索】 ナレッジオブジェクト 個人スペース 共有スペース スペースは、必要なユーザー、グループごとに、複数作成することが可能 ナレッジオブジェクト
レコメンド機能 ユーザーが実行した検索や指定したドキュメントに対して、関連する情報を表示します。 種別 説明 検索履歴 下記のレコメンドを表示します。 【キーワード】 サーチバーで検索したキーワードで、過去に利用した追加キーワードを表示します。 【エンタープライズユニット名、エンタープライズグループ名、InSightグループ名、アクションユーザー名】 サーチバーで検索したキーワードを、過去に利用した組織、グループ名、ユーザー名を表示します。 参照履歴 サーチバーで検索したキーワードの検索結果で、過去にダウンロードされたことのある ドキュメントの一覧を表示します。 ドキュメント参照履歴 検索結果のドキュメントから、過去に参照したユーザー名の一覧を表示します。
ナレッジメタデータ&ナレッジコンテンツ ナレッジオブジェクト、ログデータに加えて、コンテンツに付与されたナレッジメタデータをInSightのストレージに保存します。 【ナレッジメタデータ】 閲覧 (ユーザーが閲覧した履歴) 投票 (そのドキュメントの投票数) お気に入りドキュメント(ドキュメントのお気に入りドキュメントへの登録数) ユーザータグ (フリーテキストタグ) エンタープライズタグ (マスターを使用したタグ) コメント(フリーテキストでのコメント) これらのコンテンツのメタデータと関連するナレッジメタデータの格納領域をナレッジコンテンツと呼びます。 タグ お気に入り ドキュメント 検索結果ウィジェット 閲覧 投票 コメント ドキュメント タイトル・要約・更新日時 etc ナレッジ コンテンツ
自動タグ 自動タグ付けは、実際のコンテンツに手を入れることなく、点在するドキュメントに 共通の意味付けをおこなうことで、「見える化」が図れ、再発掘をサポートします。 【拠点・共有フォルダ 1】 【拠点・共有フォルダ 3】 拠点ごとにフォルダ階層が異なり、ファイル名などのルールもないため、一貫した検索は難しい。 【拠点・共有フォルダ 2】 【検索用インデックス】 【研究テーマ別】 サーチエンジン 【製品別】 【ドキュメント種別】 事前に定義したルールにもとづき、 仮想グルーピングをおこなう。 タグ付けにより、検索の絞込みが可能。またタグやプロパティを可視化することで、「見える化」の実現し、活用を促進する。
仮想統合フレームワークを利用した検索インデックス作成機能 仮想データ統合フレームワーク 柔軟なパイプライン処理 クローラー データ プロセッシング サーチフェデレーション メタデータ マッピング Notes Connector JDBC Connector INDEX チェーン データ Enterprise Crawler Internet Service File Crawler タグマスター コンテンツ セット インターネットサービスを利用可能な フェデレーションサーチ
UpdateProcessorChain 自動タグ付けの概念 対象となるファイルの中身などからマッピングするタグデータをデザインします。 ファイルのクロール処理の過程で、プロパティや中身からコンテンツに対してメタデータを自動付与します。 UpdateProcessorChain Solr UpdateHandler ファイルの読み込み Solr Index ファイルクローラ Processor Other ・・・ Processor G2 Custom ・・・ Processor Other 1.ファイルを解析 2.コンテンツと関連するマスタ参照 Title テスト計画書 MimeType application/msword URL \\tokyodev\dev1\testplan.doc 研究テーママスタ 3.メタデータ付与 素材・技術マスタ 製品種別 冷蔵庫 部門 開発1部 Insight G2 DB 属性の追加
自動タグ付け機能 概要 プロパティ フォルダマッピング 本文抽出 3.1 フリーキーワード 3.2 特定位置テキスト抽出 自動タグ付けは、ユーザーの要件やコンテンツの管理状況などから、様々なソリューションがありますが、下記に代表的な手法を示します。 以下に、自動タグ付けの代表的なパターンを記します。 プロパティ 著者、タイトルなどのファイルに含まれるプロパティをタグとして利用する。プロパティの値をそのまま利用することも可能だが、そこに含まれる文字列から辞書、ルールに基づいたゆらぎの補正、マッピングによるタグ付けをおこなうことも可能。 フォルダマッピング ファイルが格納されているフォルダとタグのマッピングをおこない、ファイルにタグ付けを行う。複数の異なるフォルダ階層をもった共有フォルダ(サーバー)に対して、同じタグをマッピングすることも可能。 本文抽出 ファイルの本文情報から、タグパターンの解析を行い、一致するタグ付けを行う。本文の解析には、下記のパターンがある。 3.1 フリーキーワード 特定のキーワード(複数可)の存在有無や正規表現での適合チェックをおこない、適合する場合、マッピングされているタグ付けをおこなう。 3.2 特定位置テキスト抽出 Excelのセルや、ヘッダ/フッダなど文書の特定の位置をターゲットとして、テキストの抽出を行いタグ付けを行う。 ※ 基本的には、ユーザー要件に応じて、クロール処理もしくは、UpdateProcessorにカスタマイズが必要となります。
自動タグ パターン1) プロパティによる自動タグ 自動タグ パターン1) プロパティによる自動タグ 文書のファイルに含まれるプロパティをタグとして利用します。 プロパティに含まれる文字列にゆらぎがある場合は、辞書や一定のルールを定義することで、統一したタグとして登録することもできます。 【ドキュメントに格納されているプロパティ】 【検索インデックス】 プロパティ名 値 タイトル テスト計画書 分類項目 テストプランニング 件名 ドラム耐久テスト 作成者 Toshiaki Nakagawa ゆらぎ補正 ドキュメント種別 製品種別 テスト計画 洗濯機 【製品種別キーワード・マッピング】 キーワード 製品種別 ドラム、糸くずフィルター、パルセーター 洗濯機 製氷機、冷媒循環回路 冷蔵庫 プロパティ情報を取得して キーワードを検索 該当の製品種別を タグとしてインデックスに格納
自動タグ パターン2) フォルダマッピング ファイルが格納されているフォルダ構造をもとにして、タグを決定して、自動的にマッピングを 自動タグ パターン2) フォルダマッピング ファイルが格納されているフォルダ構造をもとにして、タグを決定して、自動的にマッピングを おこないます。 階層の異なるフォルダでも、それぞれにマッピングデータを保持することで 共通のタグ付けをすることが可能 部品マスター フォルダ ー タグ マッピングマスター 部門マスタ
自動タグ パターン3ー1) 本文抽出(フリーキーワード) 自動タグ パターン3ー1) 本文抽出(フリーキーワード) 本文に1つ以上の該当する単語が存在する場合、マスターで定義されたタグを自動的に付与します。 【検索インデックス】 本文テキストの抽出 BODY 研究テーマ 本文 水流による洗浄効果 プロパティ情報を取得してキーワードを検索 【研究テーマキーワード・マッピング】 キーワード QueryType 研究テーマ ドラム、 パルセーター 、水流* AND 水流による洗浄効果 ドラム、回転式、渦巻き式* OR 回転ドラム式洗濯機 【様々な検索手法を考慮】 【カスタマイズポイント】 複数のキーワードを指定して、AND/OR キーワードを正規表現で指定して、あいまい検索 ノーマライズ(大文字小文字、全角半角)検索 UpdateProcessor
自動タグ パターン3ー2) 本文抽出(特定位置テキスト抽出) 自動タグ パターン3ー2) 本文抽出(特定位置テキスト抽出) 本文の特定の位置や領域に存在する文字列から、マスターで定義されたタグを自動的に付与します。 【検索インデックス】 BODY 種別 本文 部品調達管理票 ユーザーマニュアル 【様々な検索手法を提供】 マッピングテーブルに指定された位置にある文字列を比較対象とする。 位置の例は、Excelのセル、ページ番号(シート)、ヘッダ/フッダなどテキストを特定できる領域となる。 【種別キーワード・マッピング】 キーワード 検索種別 文書種別 位置 種別 部品調達先 AND xlsx B3 部品調達管理票 ユーザー マニュアル OR docx head ユーザーマニュアル
ナレッジセンターの構成 ナレッジセンターは、ナレッジログとナレッジコンテンツの2種類のインデックスで構成されています。 ナレッジセンター 検索、検索… これ、タグ付しとこう ログアウト…と。 絞込み検索して… お気に入り登録しておこう。 ログイン 検索 タグ付け コメント追加 投票 ・・・etc 閲覧情報 タグ付されたタグ情報 コメント情報 投票情報 ブックマーク情報 コメント入れておこう ナレッジセンター InSight内部に Solr Indexを保持 ナレッジログ ナレッジコンテンツ 主に操作ログ 主にメタデータ情報
ナレッジログとは ナレッジログとは以下のような操作のログです。 サーチログ サーチバー等からの検索や、ナビゲーションからの絞込みやデータチェインなどのログ 実行日時、実行ユーザー、検索条件などの情報を保持しています。 リファレンスログ ドキュメントの閲覧のログ 閲覧日時、実行ユーザー、閲覧ドキュメントパスなどの情報を保持しています。 タギングログ エンタープライズタグやユーザタグのタグ操作や、コメントや投票の操作ログ タギング日時、実行ユーザー、付加/削除されたメタタグ、付加/削除されたドキュメントパスなどの情報を保持しています。 ログイン/ログアウトログ ログイン・ログアウトのログ ログイン・ログアウト日時、実行ユーザーなどの情報を保持しています。 ナレッジオブジェクト アクションログ 個人/共有スペースのナレッジオブジェクトの操作やお気に入りドキュメントの操作ログ 操作日時、実行ユーザー、操作対象となるナレッジオブジェクト情報などを保持しています。
ナレッジログの登録(1) ナレッジログをキューに溜め、バッチ処理でナレッジログにインデックスする場合の登録の流れ ① ② ③ 例)検索時 ①検索を実行 ②ナレッジログをキューに保存(※) ③InSightの内部バッチである LogCommiterバッチが、指定された スケジュールに基づき実行 ④未登録のナレッジログが有る場合は キューからインデックスに登録して commitする ① ② ③ LogCommitter バッチ KC Queue ナレッジログ インデックス ④ (※)Log4jの設定で、キューを利用する設定の場合
ナレッジログの登録(2) ナレッジログをファイルに溜め、バッチ処理でナレッジログにインデックスする場合の登録の流れ ① ② ③ 例)検索時 ①検索を実行 ②ナレッジログをファイルに保存(※) ③InSightの内部バッチである LogFeederバッチが、指定された スケジュールに基づき実行 ④未登録のナレッジログが有る場合は Feedされたログ情報からインデックスに 登録してcommitする ① ログフォルダ ② ③ LogFeeder バッチ ナレッジログ インデックス ④ (※)Log4jの設定で、ファイル保存を利用する設定の場合
ナレッジコンテンツとは 閲覧 閲覧日時、閲覧ユーザー、閲覧回数、閲覧したドキュメント情報など ナレッジコンテンツとは以下のようなナレッジメタデータ情報です。 LWSにインデックスするナレッジメタデータ情報のバックアップでもあります。 閲覧 閲覧日時、閲覧ユーザー、閲覧回数、閲覧したドキュメント情報など お気に入りドキュメント お気に入りドキュメント登録日時、登録ユーザー、登録件数、登録したドキュメント情報など タギングログ エンタープライズタグやユーザタグの登録日時、登録ユーザー、登録件数、登録したエンタープライズタグやユーザタグ、登録したドキュメント情報など 投票 投票日時、投票ユーザー、投票件数、投票したドキュメント情報など コメント コメント登録日時、登録ユーザー、登録件数、登録したコメント、登録したドキュメント情報など
ナレッジコンテンツの登録 ナレッジコンテンツの登録の流れ ① ② ナレッジログ InSight DB インデックス ③ 例)投票時 ①投票をクリック ②データベースに ナレッジメタデータ情報を登録 ③InSightの内部バッチである KCMetadataUpdateバッチが、 指定された スケジュールに基づき 実行 ④更新データが有る場合は インデックスに登録してcommitする ① メタデータ情報 操作ログ ② ナレッジログ インデックス InSight DB 更新データ有り ③ KCMetadataUpdater ④ LWS Knowledge Contents Index
ナレッジセンターの構成 ナレッジセンターは、デフォルトの設定ではInSightと同一サーバー上に構築されます。 ・logdataフォルダとdataフォルダは insightConfig_Local.xmlで、インデックスを 保存するフォルダパスを指定します。 InSighのログ (kc.log) dataフォルダ ナレッジ コンテンツ logdataフォルダ 利用頻度が高いInSightと同一サーバー上に ナレッジセンターがある場合、次第にナレッジセンターの インデックスが肥大してInSightサーバー自体の負荷が 高くなることがあります。 ナレッジログ
ナレッジセンターを外部サーバーに構築 InSightの利用頻度の高い場合は、ナレッジセンターを外部サーバーに構築して ナレッジセンターによる負荷分散することが可能です。 InSighのログ (kc.log) ナレッジの検索・ナレッジメタデータの更新 ログのフィード dataフォルダ logdataフォルダ ナレッジ コンテンツ ナレッジセンター専用 Webアプリケーション ナレッジログ ※ナレッジセンター用サーバは、複数台でも構成することも可能です。
データ量設計例 利用想定ユーザー数3500人(1日当りの平均利用者数:60%) 1人当たりの利用想定数:50action (ナレッジコンテンツ:10ドキュメント)の場合 InSighのログ (kc.log) 1actionあたりの増加量を1KB = 1日あたりの増加量:約105MB(1×50action ×2,100人) = 1月あたりの増加量:約 2.3GB(約170MB×22日) logdataフォルダ ナレッジログ 1actionあたり2.5KB増加 = 1日あたりの増加量:約262MB(2.5×50action ×2,100人) = 1月あたりの増加量:約 5.7GB(約262MB×22日) dataフォルダ 1ドキュメントあたり60KB増加 ナレッジ コンテンツ = 1日あたりの増加量:約1.2GB(60×10ドキュメント ×2,100人) = 1月あたりの増加量:約 26GB(約2GB×22日) ※ ※ 新規ドキュメントのタグ付のみ増加します。既にナレッジコンテンツに格納されているドキュメントに対する操作は、アップデートとなり増加対象とはなりません。 注意) 1actionあたりの増加量は、検索条件の量に依存します。 また、1ドキュメントあたりの増加量は、メタデータ情報をタギングするドキュメントに依存します
ナレッジセンター運用にかかわるバッチ(1) ナレッジセンターにデータを登録する際に必要となるバッチ バッチ名 概要 LogCommitter ナレッジログデータをキューに溜めて利用する場合に必要となるバッチです。 このバッチを実行すると、ログ情報がナレッジログに反映されます。 ナレッジログの増加量が少ない場合に向いています。 LogFeeder ナレッジログデータをファイルに保存して利用する場合に必要となるバッチです。 ナレッジログの増加量が多い場合に向いています。 また、万が一ナレッジログのインデックスが破損しても、ファイルから全て復旧が可能です。 KCMetadataUpdater ナレッジメタデータ情報をナレッジコンテンツに登録 および 検索エンジンへの登録に必要となるバッチです。 検索エンジンへの登録があるので、実行間隔は検索エンジン側のCommitのタイミングを考慮する必要があります。
ナレッジセンター運用にかかわるバッチ(2) ナレッジセンターを運用する上で、必要となるバッチ バッチ名 概要 LogDeleter ナレッジログの削除用バッチです。 設定された条件に従ってナレッジログを削除します。 例)起動日より1年前 KCIndexOptimizer ナレッジログ、ナレッジコンテンツそれぞれに設定が必要となります。 Optimize実行のタイミングは、インデックス更新後を目安にしてください。 また、インデックスが大きくなるとオプティマイズに時間が掛ります。 HooSlaveReplicator ナレッジセンターを外部サーバーで構築する場合に必要となるバッチです。 外部に構築したナレッジセンターの死活管理を行います。
バックアップとリカバリ バックアップ リカバリ ナレッジログ ナレッジログのバックアップは、2種類あります。 いずれかの方法でバックアップを行ってください。 ナレッジログのインデックスを定期的にバックアップする (Tomcatを停止してコピーする) kc.logファイルを保管しておく ナレッジコンテンツのバックアップ ナレッジコンテンツのインデックスを定期的にバックアップする (Tomcatを停止してコピー) リカバリ ナレッジログ バックアップしたナレッジログのインデックスに差し替える (Tomcatを停止してコピーする) kc.logファイルを利用して、LogFeederバッチで再作成する (リポジトリファイルを削除後、Tomcatを起動すると再作成されます) ナレッジコンテンツ バックアップしたナレッジコンテンツのインデックスに差し替える (Tomcatを停止してコピー)
ご清聴いただき、ありがとうございました。