JPWO2010097945A1 - 情報処理装置及び情報処理方法及びプログラム - Google Patents

情報処理装置及び情報処理方法及びプログラム Download PDF

Info

Publication number
JPWO2010097945A1
JPWO2010097945A1 JP2011501427A JP2011501427A JPWO2010097945A1 JP WO2010097945 A1 JPWO2010097945 A1 JP WO2010097945A1 JP 2011501427 A JP2011501427 A JP 2011501427A JP 2011501427 A JP2011501427 A JP 2011501427A JP WO2010097945 A1 JPWO2010097945 A1 JP WO2010097945A1
Authority
JP
Japan
Prior art keywords
node
event
behavior
information
branch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011501427A
Other languages
English (en)
Other versions
JP5318190B2 (ja
Inventor
平井 規郎
規郎 平井
光則 郡
光則 郡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2010097945A1 publication Critical patent/JPWO2010097945A1/ja
Application granted granted Critical
Publication of JP5318190B2 publication Critical patent/JP5318190B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

挙動インデックス103は、ログデータに含まれるイベントの発生経緯を複数ノードの連結で示し、2つ以上の後方のノードに連結する分岐ノード、2つ以上の前方のノードから連結される統合ノードが含まれ、正規表現変換部104がクライアント200からイベントの出現順序が示された検索条件を入力した際に、検索オートマトン保持部105が検索条件に従って状態遷移表106を生成し、ノード種別判定部108が挙動インデックス103の各ノードのノード種別を判定しながら、状態評価部111が各ノードを解析して各ノードの状態を判断し、状態の遷移パターンが状態遷移表106に合致するか否かを判定し、分岐ノードに対しては、分岐ノードから分岐する分岐経路ごとに各ノードを解析し、統合ノードに対しては、統合ノードに合流する上流経路ごとに各ノードを解析する。

Description

本発明は、ログに含まれる順序情報に基づいてイベント等の出現パターンを指定して効率よくかつ高速に検索する方式に関するものである。
情報セキュリティ、ネットワーク監視、設備管理などの分野を中心に収集蓄積されたログデータから情報漏えい、不正アクセス、機器故障などの履歴を監視し情報、ネットワーク、設備の管理を高度化しようとする動きが進んでいる。
そのためには監視対象の履歴データを収集し、一定期間内においてその対象がどのようなふるまいをしたかを追跡する必要がある。
履歴データには監視対象識別ID、タイムスタンプ、イベントなどの動作情報が記録されている。
しかし、これらの情報の構造は発生順序を管理する手段を持たないため一定期間にわたって監視対象を追記するなどの要求に対しては不向きである。
このような課題に対して、たとえば文書検索においては文字列の出現パターンを正規表現で表した検索条件式をこれと等価な検索オートマトンに変換し、生成された状態遷移表から検索する技術がある。
また、グラフ構造で表されるデータ構造について部分グラフを指定してこれを検索する技術がある。
また、これらを融合したものとして階層構造文書であるXML(Extensible Markup Language)文書についてタグを取り出してタグの出現パターンを検索オートマトンとして検索することを可能にする技術がある(たとえば、特許文献1)。
特開2004−126933号公報
しかしながら、XMLなどの文書構造ではタグは必ず開始と終了があり、完全な階層構造を持つものであるため、上記の方法が有効であるが、履歴データでは分岐したあとその情報の終端位置は可変であるため、上記の方法では、非効率的になるという課題がある。
さらに、検索条件式自体が複雑になり、これらをもとに、高速に検索することはきわめて困難であるという課題がある。
本発明は、このような課題を解決することを主な目的の一つとしており、イベントの発生経緯の履歴を複数ノードの連結で表す情報において経路の分岐又は経路の統合が発生した場合に、効率的かつ包括的にイベントの発生経緯を解析することが可能な仕組みを実現することを主な目的とする。
本発明に係る情報処理装置は、
イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を記憶する情報記憶部と、
前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出する情報解析部とを有することを特徴とする。
前記情報処理装置は、更に、
抽出対象イベントと抽出対象イベントの出現順序が示される抽出条件を入力する抽出条件入力部を有し、
前記情報解析部は、
抽出したイベント発生順序のパターンが、前記抽出条件に示されている抽出対象イベントの出現順序に合致する否かを判定することを特徴とする。
前記情報記憶部は、
複数のイベント履歴情報を記憶しており、
前記情報解析部は、
イベント履歴情報ごとにイベント発生順序のパターンを抽出し、前記抽出条件に示されている抽出対象イベントの出現順序に合致しているイベント発生順序のパターンが含まれているイベント履歴情報を抽出することを特徴とする。
前記情報記憶部は、
複数のイベント履歴情報を複数のカテゴリーに分類して記憶し、更に、異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士を対応付けて記憶し、
前記情報解析部は、
特定のカテゴリーに属するイベント履歴情報の各ノードを解析し、解析中の前記特定のカテゴリーのイベント履歴情報が他カテゴリーのイベント履歴情報に対応付けられている場合に、前記特定のカテゴリーのイベント履歴情報に対応付けられている他カテゴリーのイベント履歴情報を抽出し、抽出した他カテゴリーのイベント履歴情報のノードを解析し、2つ以上のカテゴリーに属する2つ以上のイベント履歴情報のノードの組み合わせに基づきイベント発生順序のパターンを1つ以上抽出することを特徴とする。
前記情報記憶部は、
異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士をノード単位で対応付けて記憶し、
前記情報解析部は、
前記特定のカテゴリーに属するイベント履歴情報の各ノードを解析し、解析中のノードが他カテゴリーのイベント履歴情報内のノードに対応付けられている場合に、解析中のノードに対応付けられているノードを抽出し、抽出したノードを解析することを特徴とする。
前記情報解析部は、
抽出した他カテゴリーのイベント履歴情報が更に別のカテゴリーのイベント履歴情報に対応付けられている場合に、当該別のカテゴリーのイベント履歴情報を抽出し、抽出した別のカテゴリーのイベント履歴情報のノードを解析し、3つ以上のカテゴリーに属する3つ以上のイベント履歴情報のノードの組み合わせに基づきイベント発生順序のパターンを1つ以上抽出することを特徴とする。
前記情報記憶部は、
異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士をノード単位で対応付けて記憶し、
前記情報解析部は、
抽出した他カテゴリーのイベント履歴情報のノードを解析し、解析中のノードが別のカテゴリーのイベント履歴情報内のノードに対応付けられている場合に、解析中のノードに対応付けられているノードを抽出し、抽出したノードを解析することを特徴とする。
前記情報解析部は、
前記イベント履歴情報に分岐ノードが含まれている場合は、未解析の分岐経路の中から解析対象とする分岐経路を選択し、選択した分岐経路に含まれる各ノードを前方のノードから順に連結順序に従って解析し、選択した分岐経路に含まれる各ノードの解析が終了した後に、新たな解析対象の分岐経路を選択することを特徴とする。
前記情報解析部は、
前記イベント履歴情報に統合ノードが含まれている場合は、未解析の上流経路の中から解析対象とする上流経路を選択し、選択した上流経路に含まれる各ノードを前方のノードから順に連結順序に従って解析し、選択した上流経路に含まれる各ノードの解析が終了した後に、新たな解析対象の上流経路を選択することを特徴とする。
前記情報解析部は、
統合ノードの全ての上流経路の解析が完了した後に、統合ノードの後方の各ノードの解析を開始することを特徴とする。
前記情報解析部は、
統合ノードの全ての上流経路の解析を行った結果、統合ノードが複数種類のイベントを表していることが判明した際に、統合ノードの後方の各ノードの解析を統合ノードが表すイベントの種類数分繰り返すことを特徴とする。
本発明に係る情報処理方法は、
コンピュータが、
イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を所定の記憶装置から取得し、
前記コンピュータが、
前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出することを特徴とする。
本発明に係るプログラムは、
イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を所定の記憶装置から取得する情報取得処理と、
前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出する情報解析処理とをコンピュータに実行させること特徴とする。
本発明によれば、イベント履歴情報において経路の分岐又は経路の統合が発生した場合に、分岐経路ごとに分岐経路に含まれる各ノードを解析し、また、上流経路ごとに上流経路に含まれる各ノードを解析するため、効率的かつ包括的にイベントの発生経緯を解析することができる。
実施の形態1.
本実施の形態及び以降の実施の形態では、イベントの発生による状態の変化(挙動)をグラフ構造をもつデータモデルとして管理されているデータ構造において、イベントIDと対象IDの出現パターンから生成される検索条件式から等価な検索オートマトンに変換し、このオートマトンが生成する状態遷移表を用いて受理状態かどうかを判断して該当する対象かどうかを判断することにより、従来困難であった挙動の検索において複雑な検索条件式に基づく検索を可能にする仕組みを説明する。
また、挙動において分岐が発生した場合には重複した検索を行うことなく、効率よく検索することができる仕組みを説明する。
さらに、たとえば製造工程の過程で部品が製品に組み込まれることで別の視点で追跡する必要がある場合においては異なる視点での関係を管理することにより、視点を切り替えた追跡を可能にする仕組みを説明する。
以下、本発明を図面に示した実施の形態を説明するが、本発明は図面に示した実施の形態に限定されるものではない。また本発明の実施の説明としては、いくつかのログを例として説明を行うが、本発明は履歴全般において適用することが可能である。
図1に本実施の形態に係わる検索装置100の構成図を示す。
なお、検索装置100は、情報処理装置の例である。
ログを収集する対象は特に限定しないが、たとえばLAN(Local Area Network)などのネットワークに接続されているすべての機器によって収集されたログ101を特定のマシン上に集積できるものとする。
図1では、ログ101は1つとしているが、複数あってもかまわない。
収集されたログ101に対して、挙動データ生成部102が、対象の挙動(ふるまい)を追跡するために適したグラフ構造を持つ挙動インデックス103を生成し、情報記憶部117が挙動インデックス103を記憶する。情報記憶部117は、例えば、検索装置100内のメモリまたは外部記憶装置である。
挙動インデックス103は、詳細は後述するが、イベントの発生経緯の履歴を複数ノードの連結で表す情報である。挙動インデックス103には、一般に、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれる。
また、検索実行ユーザはクライアント200から検索条件式を入力する。
検索条件式は、それが正規表現に一意に変換可能なものであればどのような表現形式であってもかまわない。検索条件式は、抽出対象のイベント(抽出対象イベント)と抽出対象のイベントの出現順序が示される条件式である。検索条件式は、抽出条件の例である。
入力された検索条件式は正規表現変換部104によって正規表現形式に変換される。
正規表現変換部104は、抽出条件入力部の例である。
また、正規表現変換部104によって正規表現形式に変換された検索条件式は、検索オートマトン保持部105によって検索オートマトンに変換され、状態遷移表106が生成され、状態遷移表106が検索装置100内の所定の記憶領域に記憶される。
検索時は、挙動情報抽出部107が挙動インデックス103のデータを読み込み、評価部110で取得した挙動によって遷移する状態を取得し、検索条件式に該当するイベントの発生順序のパターンが挙動インデックス103の中に存在したかどうかを判定し、判定結果を検索結果記憶部113に記憶させる。
クライアント200は、検索結果記憶部113に問い合わせることにより検索結果を利用することが可能である。
本実施の形態及び以降の実施の形態で説明する部分一致検索法式において使用される各方式について、入退室など人間の行動ログから行動パターンを検索する場合を例として具体的に説明する。
正規表現に変換可能な形式で入力された行動パターンを表す検索条件式を正規表現変換部104は正規表現形式に変換する。
たとえば、門Aから入って門Bから出た人を検索するための検索条件式の場合は、当該検索条件式は、メタキャラクタと挙動を表す文字から構成される「(入室)(門A).*(退室)(門B)」などのような正規表現形式に変換される。
検索オートマトン保持部105は、入力された正規表現検索条件式と等価な検索オートマトンに変換し、状態遷移表106を生成する。
状態遷移表とは、挙動情報の入力に対して状態から状態への遷移を記述した表である。
評価部110は、状態評価部111および関係解析部112を含む。
状態評価部111は、生成された状態遷移表106を参照し、挙動インデックス103から挙動情報抽出部107によって抽出され、ノード種別判定部108から出力されたノードの情報(挙動情報)を順番に入力し、各ノードの状態を取得する。
そして、状態評価部111は、各ノードの状態をノード種別判定部108に応答する。
また、状態評価部111は、挙動インデックス103の各ノードの状態から導出される挙動インデックス103におけるイベントの発生順序のパターンが、検索条件式から生成された状態遷移表106の状態遷移のパターンに合致するか否かを判断し、イベントの発生順序のパターンが状態遷移表106の状態遷移のパターンに合致する場合に受理状態となる。
また、状態評価部111は、受理状態を取得すると現在探索中の挙動情報内に、指定した検索条件式に該当するものが存在したことを表す情報として該当する追跡対象(インスタンス)およびどの挙動で受理状態になったかを示すヒット位置を検索結果記憶部113に記憶させる。
また、関係解析部112では、検索条件式に指定されている行動パターンを検索する際に、人、機器、ファイルなどにまたがって検索する必要がある場合に、検索の範囲を切り替えながら検索することを可能にする。
なお、関係解析部112の詳細は、実施の形態4において説明する。
ノード種別判定部108は、挙動情報抽出部107から抽出した挙動に対して分岐する挙動(分岐ノード)であるか、または統合する挙動(統合ノード)であるかを判定する。
挙動が分岐するとは、たとえばファイルを複製したことによって内容が継承され、異なるIDを持つものが複数生成されるような場合のことである。
統合とは、たとえば製造ラインで異なるIDを持つ原料が配合されて異なる1つのIDに統合されるような場合のことである。
統合分岐ノード処理部109では、ノード種別判定部108のノード判定結果に従い、それが統合ノードあるいは分岐ノードである場合にノードの挙動IDやノードの状態を記憶または呼び出し処理を行う。
ここからは、さらに個々の機能について詳細に説明する。
そのためにまず検索装置100において検索対象としている、挙動インデックス103のデータ構造について簡単に説明する。
図2は、検索対象となる挙動インデックス103のデータ管理の構造を示したものである。
メイン201とは、挙動インデックス自体を表す親の構造体であり、挙動インデックス103を識別する。
クラス202は、この挙動インデックス103に存在するカテゴリを表すものであり、たとえばユーザ、場所、ファイル、機器などが該当する。
インスタンス203は、クラス202に属する実体を表すものであり、ユーザクラスであればインスタンスとは個人を一意に識別することが可能なユーザIDのようなものである。
挙動204とは、個々のインスタンスの実際の振る舞いを表すものであり、たとえば「入室後の状態」「退室後の状態」などである。
挙動インデックス103における各挙動204を、以降、挙動ノード又は単にノードとも呼ぶ。
また、挙動インデックス103における矢印205は挙動間の前後関係を表すものであり、「入室前の状態」と「入室後の状態」は「入室」というイベント205によって関係付けられていることになる。
本実施の形態では、個々のイベント情報は後ろ側の挙動ノードの構造体情報に格納される。
挙動インデックス103の挙動ノードは、それぞれ、挙動構造体(図10)に対応付けられている。
詳細は後述するが、挙動構造体には、挙動ノードのイベントの情報が含まれている。
上記の例であれば、「入室後の状態」という挙動ノードの挙動構造体には、「入室」というイベントが示されている。このように、各挙動ノードからはイベントが導かれる。
各挙動ノードが表すイベントは、ログ101のログデータに含まれているイベントである。
そして、挙動インデックス103における各挙動ノードの連結関係、各挙動ノードの挙動構造体に示されるイベントの情報から、ログ101のログデータに示されるイベントの発生経緯の履歴が導かれる。
このように、挙動インデックス103及び挙動構造体は、複数ノードの連結でログデータにおけるイベントの発生経緯を表すものであり、イベント履歴情報に相当する。
図3は、挙動インデックスにおける最も単純な前後関係を表したものであり、あるクラスのあるインスタンスにおいて発生した挙動が発生した順番で単純に関係付けて管理されている。
図3に示すように、前方のノードが1つで、後方のノードが1つの挙動ノードを通常ノードとよぶ。
図4は、階層構造をもつ関係を示す。
インスタンスA401は、ある挙動404の次のイベント408によってインスタンスA401以外の2つのインスタンス(インスタンスB402およびインスタンスC403)を生成している。
このような関係を階層関係とよび、後方のノードが2つ以上である挙動404を分岐ノードとよぶ。
また、イベント408は、分岐イベントとよぶ。
また、分岐ノードから分岐している経路(図4では、ノード405及びそれ以降のノードが連結している経路、ノード406及びそれ以降のノードが連結している経路、ノード407及びそれ以降のノードが連結している経路の3つ経路)を分岐経路とよぶ。
図5は、図4と同様階層関係であるが、統合する場合の階層関係を示す。
インスタンスA501の挙動504、およびインスタンスB502の挙動505はイベント507によってインスタンスC503に統合されている。
このような、前方のノードが2つ以上である挙動506を統合ノードとよぶ。
また、イベント507は統合イベントとよぶ。
また、統合ノード506に合流する経路(図5では、ノード504からノード506への経路、ノード505からノード506への経路の2経路)を上流経路とよぶ。
図6は、クラス間の関係を示す。
挙動インデックス103で管理する関係は一般にインスタンスの単位で管理される。
また、階層関係を持つ場合には異なるインスタンス間での関係が管理される。
これに加えて人、物、機器などを関係付けるためにクラス間での関係を管理する。
ユーザクラス601に属するユーザAは挙動603を発生させたイベント605でファイルクラス602に属するファイルIの挙動604と関係付けられる。
この関係によりユーザクラスからファイルクラスに検索対象範囲を切り替えることが可能になる。
クラスをまたがる検索対象範囲の切り替えについては、実施の形態4で説明する。
次に、挙動インデックス103における各データの構造について述べる。
図7は、メイン201のメイン構造体700を示し、メイン構造体700は、挙動インデックスが管理するクラス数701およびクラス構造体へのポインタを管理するクラス構造体ポインタリスト702をもつ。
クラス構造体ポインタリスト702をたどることにより、メイン構造体700からすべてのクラスを検索することが可能である。
図8は、挙動インデックス103におけるクラス202のクラス構造体800を示す。
クラス構造体800は、クラスを一意に識別するためのクラスID801、このクラスが管理するインスタンス203の個数を管理する、管理しているインスタンス数802、およびこのクラスに属するインスタンスの構造体へのポインタを管理するインスタンス構造体ポインタリスト803をもつ。
インスタンス構造体ポインタリスト803をたどることによりこのクラスに属するすべてのインスタンスを検索することが可能である。
図9は、挙動インデックス103におけるインスタンス203のインスタンス構造体900を示す。
インスタンス構造体900では、インスタンスを一意に識別するインスタンスID901、このインスタンスが属するクラス202へのポインタを管理するクラス構造体へのポインタ902、このインスタンスに属する挙動数を管理する、管理している挙動数903、およびこのインスタンスに属する挙動構造体へのポインタを管理する挙動構造体ポインタリスト904を管理している。
挙動構造体ポインタリスト904をたどることにより、このインスタンスに属するすべての挙動を検索することが可能である。
図10には、挙動インデックス103における挙動204の挙動構造体1000を示す。
挙動構造体1000は、挙動を一意に識別する挙動ID1001、この挙動が属するインスタンスへのポインタを管理するインスタンス構造体へのポインタ1002、この挙動を発生させたイベントを示す一意に識別可能なイベントID1003をもつ。
また、追跡のために必要な挙動間の関係を管理するためのデータとして、1つ後の挙動数1004、1つ後の挙動ID配列1005、1つ前の挙動数1006、1つ前の挙動ID配列1007を管理する。
また、検索範囲を切り替えるためのクラス間の関係を管理するためのデータとして、この挙動と関係するクラスの個数を管理する関連クラス数1008およびそのクラスIDを管理するための関連クラスID1009をもつ。
このデータ構造により関係があるすべての挙動について任意の挙動から任意の挙動まで検索可能である。
なお、図7〜図10に示した各構造体は、挙動インデックス103に対応付けられて情報記憶部117又は他の記憶領域に記憶されている。
本実施の形態に係る検索装置100では、まず、正規表現変換部104がクライアント200からイベントの出現順序が示された検索条件を入力し、検索オートマトン保持部105が検索条件式に従って状態遷移表106を生成する。
そして、挙動情報抽出部107が、挙動インデックス103から解析対象のインスタンスから順次、挙動ノードを連結順序に従って抽出し、ノード種別判定部108が挙動情報抽出部107から抽出された解析対象の挙動ノードが通常ノード、分岐ノード、統合ノードのいずれであるかを判別する。
また、状態評価部111が、各挙動ノードを解析して各挙動ノードの状態(つまり、各挙動ノードが表象しているイベント)を判断し、状態の遷移パターンが状態遷移表106に合致するか否かを判定する。
通常ノードが続いている間は、状態評価部111は、挙動ノードの連結順序に従って各挙動ノードの解析を行う。
ノード種別判定部108が分岐ノードを識別した場合は、挙動情報抽出部107が分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って抽出し、状態評価部111が分岐経路ごとに分岐経路に含まれる各ノードを解析して各ノードの状態を判断する。
より具体的には、統合分岐ノード処理部109が分岐ノード及び分岐経路の各々の情報を分岐統合位置記憶部114、分岐統合状態記憶部115に登録し、状態評価部111による解析が行われていない分岐経路の中から解析対象とする分岐経路を選択し、挙動情報抽出部107が、統合分岐ノード処理部109により選択された分岐経路に含まれる各ノードを前方のノードから順に連結順序に従って抽出する。統合分岐ノード処理部109は、選択した分岐経路に含まれる各ノードに対する状態評価部111の解析が終了した後に、新たな解析対象の分岐経路を選択する。
また、ノード種別判定部108が統合ノードを識別した場合は、挙動情報抽出部107が統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って抽出し、状態評価部111が上流経路ごとに上流経路に含まれる各ノードを解析して各ノードの状態を判断する。
より具体的には、統合分岐ノード処理部109が統合ノード及び合流経路の各々の情報を分岐統合位置記憶部114、分岐統合状態記憶部115に登録し、状態評価部111による解析が行われていない上流経路の中から解析対象とする上流経路を選択し、挙動情報抽出部107が、統合分岐ノード処理部109により選択された上流経路に含まれる各ノードを前方のノードから順に連結順序に従って抽出する。統合分岐ノード処理部109は、選択した上流経路に含まれる各ノードに対する状態評価部111の解析が終了した後に、新たな解析対象の上流経路を選択する。
また、挙動情報抽出部107は、統合ノードの全ての上流経路の解析が完了した後に、統合ノードの後方の各ノードの抽出を開始する。
このように、挙動情報抽出部107、ノード種別判定部108、統合分岐ノード処理部109及び評価部110は、協働して、挙動インデックス103に含まれる各ノードの解析を行っており、挙動情報抽出部107、ノード種別判定部108、統合分岐ノード処理部109及び評価部110は、情報解析部として機能する。
なお、分岐ノードに対する処理の詳細は実施の形態2で説明し、統合ノードに対する処理の詳細は実施の形態3で説明する。
図11は、実施の形態1で説明する人の行動パターンを検索する場合の検索条件式1101、検索条件式から生成される状態遷移図1102、および検索対象となる挙動インデックス1103の例を示す。
状態遷移図1102は、状態遷移表106と等価な情報であり、以下、説明の簡明のため、状態遷移表の代わりに状態遷移図を用いて説明する場合がある。
挙動インデックス1103において、検索対象クラスはユーザであり、ユーザクラスに属するユーザ数は3名である。
ユーザは複製されることも統合されることもないので、分岐ノードまたは統合ノードは持たない。
この例で検索条件式1101に合致するイベント発生順序のパターンが存在するユーザインスタンスはユーザCのみである。
図12は、図11における人の行動パターン検索の処理をフローに表したものである。
ただし、すでに状態遷移表106は生成されているものとする。
ステップ1201では、挙動情報抽出部107が、まず検索対象の挙動インデックス1103から検索対象であるユーザクラスのインスタンスを取得する。
挙動情報抽出部107は、例えば、クライアント200からユーザクラスのインスタンスを取得することを指示され、クライアント200からの指示に従って、ユーザクラスのインスタンスを取得する。
次に、ステップ1202において、挙動情報抽出部107は、取得したユーザインスタンスの検索開始点となる挙動ノードを、取得したユーザインスタンスのインスタンス構造体900(図9)の挙動構造体ポインタリスト904から抽出する。
次に、ステップ1203において、ノード種別判定部108が、挙動情報抽出部107から抽出された挙動ノードの種別(通常ノード、分岐ノード、統合ノード)を判別するとともに、抽出した挙動ノードの情報(たとえば、挙動構造体1000(図10)のイベントID1003)を状態評価部111に入力する。
ノード種別判定部108は、1つ前のノードの数が1つで1つ後のノードの数が1つであれば通常ノードと判定し、1つ後のノードの数が2つ以上であれば分岐ノードと判定し、1つ前のノードの数が2つ以上であれば統合ノードと判定する。
ノード種別判定部108は、挙動情報抽出部107から抽出された挙動ノードの挙動構造体1000(図10)の1つ前の挙動数1006の項目を参照して、1つ前の挙動ノードの数を判断し、1つ後の挙動数1004の項目を参照して、1つ後の挙動ノードの数を判断する。
本実施の形態で説明する挙動インデックス1103では、通常ノードのみなので、分岐ノードに対する処理、統合ノードに対する処理は行われない。分岐ノードに対する処理は実施の形態2で説明し、統合ノードに対する処理は実施の形態3で説明する。
ステップ1204では、状態評価部111が、ノード種別判定部108から入力した情報により、遷移後の状態を取得する。
たとえば、状態評価部111がノード種別判定部108から図11の挙動インデックス1103のユーザAの2つ目の挙動(挙動ID:2)のイベントIDを入力した場合は、状態評価部111は入力したイベントIDから「扉1入室」というイベントを識別することができ、当該挙動(挙動ID:2)の状態が「扉1入室後の状態」と判断する。
次に、状態評価部111は、ステップ1205において、ステップ1204で取得した状態が受理状態かどうかを判断し、受理状態であれば(ステップ1205でYES)、ステップ1206で該当ユーザのIDを記憶領域に記憶させ、次のユーザの検索処理にうつる。このとき状態遷移はリセットする。
受理状態でない場合(ステップ1205でNO)は、挙動情報抽出部107が、ステップ1207で現在検索中のユーザについて終端挙動まで検索したかどうかを判断し、次の挙動が存在する場合(ステップ1207でNO)は、ステップ1202に戻り次の挙動を取得して検索処理を続行する。
一方、ステップ1207で終端挙動まで検索した場合は、ステップ1208で、挙動情報抽出部107が、次の検索対象インスタンスであるユーザが存在するかどうかを判断し、ユーザが存在しない場合は終了し、異なるユーザが存在する場合は状態遷移をリセットし、ステップ1201に戻り新しいユーザを取得して検索処理を開始する。
図13は、図11の実施の形態1における人の行動パターン検索で挙動の動きによって状態がどのように遷移していくかを表したものである。
ノード内の文字は状態遷移図1102における状態を表す。
ユーザA1301は、検索開始の状態「s」から「扉1入室」により状態「p2」に遷移し、「ログイン」では状態は「p2」のままで、「扉2退室」では退室のみに対して「p3」に遷移する。
ユーザB1302は、開始状態「s」から「扉1入室」で状態「p2」に遷移し、「ログイン」「ログアウト」では状態は「p2」のままで、「扉3退室」では退室のみに対して「p3」に遷移する。
ユーザC1303は、開始状態「s」から「扉1入室」で状態「p2」に遷移、「ログイン」では状態は「p2」のまま、「扉1退室」で受理状態に遷移する。
したがって、実施の形態1の図11における行動パターン検索の例ではユーザC1303のみが検索条件式に該当する。
実施の形態2.
本実施の形態では、分岐ノードをもつ挙動インデックス103の検索に適用した例を説明する。検索装置100の構成図は実施の形態1と同様に図1である。
図14は、この実施の形態2で説明するファイルの操作パターンをする場合の検索条件式1401、状態遷移図1402および挙動インデックス1403の一つの例を示す。
検索対象はファイルであり、ファイルクラスに属するインスタンスの数は「ファイルA」、「ファイルB」、「ファイルC」の3つとしている。
ファイルは、コピーイベントなどにより複製されるため分岐ノードを持つ点が特徴であり、統合分岐ノード処理部109が分岐処理を行う。
検索条件式1401では、コピーをした後印刷されたファイルを検索することが示されている。
図14の挙動インデックス1403において、検索条件式1401に合致するイベント発生順序のパターンが存在するファイルインスタンスはファイルBのみである。
図15は、図14におけるファイルの操作パターン検索の処理をフローに表したものである。
ただし、すでに状態遷移表106は生成されているものとする。
また、分岐ノード以外のノードに対する検索処理は実施の形態1と同様であるため、ここでは分岐ノードに関する処理についてのみ説明する。
ステップ1501では、ノード種別判定部108が、取得した挙動の挙動構造体1000(図10)がもつ1つ後の挙動数1004を参照し、2個以上存在する場合は現在処理中の挙動が分岐ノードであると判断する。
分岐ノードである場合は、ステップ1502で、統合分岐ノード処理部109が、分岐ノードの挙動構造体1000の一時変数に必要な情報を格納し、ステップ1503で、統合分岐ノード処理部109が、この挙動情報構造体1000へのポインタを分岐ノードスタック(図17)に格納し、挙動情報抽出部107が次の挙動の検索処理にうつる。
図16は、解析対象の挙動ノードが分岐ノードである場合に、挙動構造体の一時変数に追加される情報を示す。
状態1601は、この分岐ノードのもつ情報を状態評価部111に入力した際に状態評価部111から得られた応答である遷移状態を格納する。
例えば、図14の挙動インデックス1403におけるファイルBの2つ目の挙動ノード(挙動ID:6)であれば、統合分岐ノード処理部109は、「ファイルBの保存後の状態」という応答を状態評価部111から取得し、この「ファイルBの保存後の状態」を状態1601に格納する。
残りの未処理挙動数1602は、状態評価部111がノードの解析を行っていない未解析の分岐経路の数を管理する項目である。
分岐経路の解析が終了する度に、残りの未処理挙動数1602の数が減っていく。
直近に処理したインデックス1603は、次に解析を行う分岐経路を管理する項目である。
より具体的には、直近に処理したインデックス1603は、挙動構造体1000内の「1つ後の挙動ID配列1005」に示される挙動IDの配列における序列(何番目のインデックスか)に基づいて、次に解析を行う挙動ノードを特定する。
たとえば、分岐ノードの1つ後の挙動ノードの数が2つである場合は、これら2つの挙動ノードのIDは、「1つ後の挙動ID配列1005」の0番目のインデックスと1番目のインデックスに格納されている。図14の挙動インデックス1403のファイルBの分岐ノード(挙動ID:6)の例だと、「1つ後の挙動ID配列1005」の0番目のインデックスにID:7が格納され、1番目のインデックスにID:9が格納されている。
そして、「1つ後の挙動ID配列1005」の0番目のインデックスにIDが格納されている挙動ノード(図14の例だと、ID:7のノード)に対する解析の際に、直近に処理したインデックス1603の値が「0」(0番目のインデックス)になる。
そして、0番目のインデックスにIDが格納されている挙動ノードから連鎖する分岐経路の各ノードの解析が終了すると、分岐ノードに戻るが、このときに、直近に処理したインデックス1603の値を参照し、0番目のインデックスの挙動ノードに対する処理が終了していると判断することができ、次に解析の対象とする挙動ノードが1番目のインデックスにIDが格納されている挙動ノード(図14の例だと、ID:9のノード)であると判断することができる。
なお、図16に示す一時変数は生成時は初期化されており、再度分岐ノードに戻ることがなくなった際には初期化される。
図17はスタックのイメージ図である。
スタックには分岐ノードと判定された挙動構造体へのポインタを格納する。
ここでは、汎用的に利用されるポインタリストを使い格納する。
ポインタリストには最後尾1702に新しいポインタを追加する関数、先頭1701のポインタを取り出す関数、最後尾のポインタを取り出す関数、先頭から何番目かを指定して取り出す関数が用意されているものとする。
分岐ノード用のスタックとして用いる場合には、追加時には常に最後尾に追加し、取り出す場合も常に最後尾から取り出すことになる。
次に、分岐ノードに戻って検索する場合の検索方式について説明する。
図18は、ある分岐経路に対する解析を終了した後に分岐ノードに戻って異なる分岐経路について検索する処理のフロー図である。
ステップ1801において、統合分岐ノード処理部109は、スタックとして使用しているポインタリストを参照し分岐ノードである挙動構造体へのポインタが存在するどうかを確認する。このポインタは、図15のステップ1503で接続したポインタである。
存在しなければ現在処理中のインスタンスについての検索処理は終了する。
存在する場合は、ステップ1802において、統合分岐ノード処理部109が、分岐ノードである挙動情報の構造体へのポインタをスタックから取得する。
次に、ステップ1803において、統合分岐ノード処理部109が、分岐ノードである挙動ノードの挙動構造体1000に格納されている一時変数から直近に処理したインデックス1603(図16)をインクリメントし、1つ後の挙動ID配列1005から、インクリメント後のインデックス番号に対応するIDを次の検索対象の挙動ノードのIDとして取得する。
このとき、統合分岐ノード処理部109は、残りの未処理挙動数1602を参照し、この分岐ノードに対して未処理の挙動ノードがなく、検索すべき分岐経路が存在しない場合(ステップ1803でYES)は、一時変数を初期化し、スタックからこの分岐ノードへのポインタを削除する(ステップ1809)。
次に、ステップ1804では、状態評価部111が、分岐ノードの状態を取得し、次のステップ1805で、挙動情報抽出部107が、分岐ノードの1つ後の挙動の挙動構造体を取得する。
次に、ステップ1806において、ノード種別判定部108が、挙動情報抽出部107から抽出された挙動ノードの種別(通常ノード、分岐ノード、統合ノード)を判別するとともに、抽出した挙動ノードの情報(たとえば、挙動構造体1000(図10)のイベントID1003)を状態評価部111に入力する。
そして、状態評価部111は、ステップ1807において、取得した挙動の情報を入力しながら分岐ノード以降の分岐経路の各ノードの解析を継続する。
ノード種別判定部108が、分岐ノードを抽出した場合は、図15に示した処理が行われる。また、統合ノードを抽出した場合は実施の形態3に示す処理が行われる。
ステップ1808において、挙動情報抽出部107が、終端のノードであることを確認すると、再度ステップ1801でスタックを参照する。スタックに分岐ノードが存在する限り同様の検索処理を繰り返す。
また、ステップ1808で終端でない場合は、ステップ1805に戻り、挙動情報抽出部107が、次の挙動の共同構造体を抽出する。
図19は、図14のファイルの検索例を用いてそれぞれの挙動における状態の遷移を示す。
検索条件式として指定したファイル操作パターンに該当するインスタンスは受理状態を示すファイルBのみである。
図20は、分岐ノードを持つ挙動インデックス2000の例を示し、図21は、挙動インデックス2000に対して図14で指定した検索条件式1401を用いて検索した場合の分岐ノードスタック2010の変化と分岐ノードで認識する次の挙動ID2011の変化を示す。
なお、図21の次の挙動ID2011は、説明のために設けた項目であり、検索装置100内で次の挙動ID2011という項目を直接管理している必要はない。
検索装置100では、図16に示す「残りの未処理挙動数1602」の情報と、「直近に処理したインデックス1603」の情報と、図10に示す「1つ後の挙動ID配列1005」の情報から、図21の「次の挙動ID2011」に相当する内容を導出することができる。
図20及び図21において、ステップ2001で、分岐ノードを識別するとスタック(図17)に挙動ID=1の挙動構造体へのポインタを格納する。
この時点では、この分岐ノードに対して検索対象となる次の挙動ID2011はID=2および3である。
ステップ2002では、次の挙動ID=2は削除されるが、まだ挙動ID=3が残っているためスタックから分岐ノードの挙動構造体へのポインタを削除することはしない。
ステップ2002までの処理が完了するとスタック(図17)を参照し、分岐ノードである挙動ID=1を取得する。
挙動ID=1に格納されている次の挙動ID2011はID=3のみであるのでステップ2003にすすむ。
そのとき、次の挙動ID=3は削除され、この時点で次の挙動ID2011が存在しないため、スタックから挙動ID=1の分岐ノードの挙動構造体へのポインタを削除する。
ステップ2004まで処理がすすむと再度分岐ノードを検出し、挙動ID=4を分岐ノードとし、この分岐ノードの挙動構造体へのポインタスタックに格納し、この分岐ノードの次の挙動ID2011としてはID=5および7を格納する。
ステップ2005にすすむ際に、分岐ノードの次の挙動ID=5は削除されるが、7が残っているため分岐ノードの共同構造体へのポインタをスタックから削除することはせず、検索を実行する。
終端ステップ2006の処理を終了するとスタックを参照し、分岐ノードである挙動ID=4を取得する。
次の挙動2011がID=7であるためステップ2007へすすむ。
このとき挙動ID=4の次の挙動IDが存在しなくなるため、スタックから挙動ID=4を削除する。
終端ステップ2008の処理を終了するとスタックを参照するが、このとき分岐ノードは存在しないため、すべての処理を終了する。
このように、本実施の形態によれば、挙動インデックスに分岐ノードが含まれている場合にも、全分岐経路のノードを抽出してノードの解析を行うため、挙動インデックスに含まれているイベント発生順序の全てのパターンを網羅することができ、検索条件式に合致するパターンを効率的に抽出することができる。
実施の形態3.
本実施の形態では、統合ノードをもつ挙動インデックス103の検索に適用した例を説明する。検索装置100の構成図は実施の形態1と同様に図1である。
製造工程ログでは、実施の形態2で説明した分岐とともに原料の配合工程などによる挙動の統合が見られる。
図22は、製造工程ログを例にした検索条件式2101、状態遷移図2102および挙動インデックス2103を示す。
挙動2105は、複数の挙動が統合する統合ノードである。
またルート挙動2104は個々の追跡経路における先頭挙動である。
この例で指定した検索条件式2101に合致するイベント発生順序のパターンが存在する原材料インスタンスは原料Bである。
図23は、統合ノードを含む挙動インデックスに対する検索方式のフロー図である。
なお、統合ノード以外のノードに対する検索処理は実施の形態1及び実施の形態2と同様であるため、ここでは統合ノードに関する処理についてのみ説明する。
ステップ2201では、ノード種別判定部108が、統合ノードかどうかを判定する。
統合ノードかどうかの判定は、挙動構造体における1つ前の挙動数1006が2以上の場合に統合ノードと判断する。
統合ノードである場合は、ステップ2202で、統合分岐ノード処理部109が、統合ノードの挙動構造体1000の一時変数に統合ノードの状態を記憶し、ステップ2203で統合ノード用スタックに統合ノードである挙動構造体へのポインタを格納する。一時変数は図16に示す通りであり、スタックも図17に示す通りである。
ステップ2204において、挙動情報抽出部107が、これまで辿ってきたルートと異なるルートの挙動を取得する。
たとえば、図22の挙動インデックス2103において、ID=5の挙動、ID=6の挙動の順に処理した後に、ノード種別判定部108がID=9の挙動2105を統合ノードと判定した場合に、挙動情報抽出部107は、異なるルートの挙動であるID=7の挙動2104を取得する。
次に、ステップ2205において、挙動情報抽出部107が、個々の親挙動から統合ノードまでを走査し、状態評価部111が統合ノードまでの各挙動の状態を取得するとともに統合ノードでの状態を取得し、また、統合分岐ノード処理部109が、状態評価部111により取得された統合ノードの状態がそれまでに取得された状態と異なる状態であれば、統合ノードの一時変数に格納する。
たとえば、図22の挙動インデックス2103において、ID=7の挙動、ID=8の挙動を経てID=9の挙動に至った際に、このときに状態評価部111により取得されたID=9の挙動の状態(2回目の状態)が、ID=5の挙動、ID=6の挙動を経て取得されたID=9の挙動(1回目の状態)と異なっている場合に、統合分岐ノード処理部109は、2回目の状態を一時変数に格納する。
なお、1回目の状態は、ステップ2202で一時変数に格納されている。
次に、挙動情報抽出部107は、ステップ2206において、更に別のルートがあるか否かを判断し、更に別のルートがある場合は、更にそのルートでの統合ノードまでの検索を実行し、存在しない場合は統合ノード以降(統合ノードの後方のノード)の検索を実行する。
統合ノード以降の検索は、状態評価部111が、統合ノードが一時変数に格納している状態の個数と同じ回数だけ終端まで各ノードの状態を解析し、検索条件式に該当するかどうかを判断する。
図24は、製造ログの挙動インデックス2300の例を示し、図25は、製造ログの挙動インデックス2300を検索した場合の一時変数に格納された状態と統合ノードスタックの変化を表す。
本例は原料A、B、C、D、Eから製品を製造する工程であり、検索条件式は図22の2101と同じである。
挙動2301および挙動2302がこの挙動インデックスにおける統合ノードである。
なお、ノード内の数値は挙動を識別する挙動IDである。
図24の原料Aで経路2306に沿って検索することにより統合ノード2301を検出し、統合ノード2301の挙動構造体へのポインタを統合ノードスタックに格納する。
また、検索の結果統合ノードで得られた状態p0を統合ノードの一時変数に格納する。
統合ノード2301に対して挙動ID=1と異なるルートの挙動として挙動ID=3を取得し、経路2307に沿って統合ノードまで検索し状態p0を取得する。
この状態は経路2306に沿って検索して取得した状態と同じであるため、状態変数には格納しない。
次に、統合ノード2301以降の経路2308に沿って次の統合ノード2302まで検索する。
このとき統合ノードの一時変数に格納されている状態はp0のみであるため、統合ノードの一時変数から状態p0を削除するとともに、統合ノードスタックから統合ノードである挙動ID=5を削除する。
経路2308に沿って統合ノード2302まで検索した結果取得した状態はp1であるため、統合スタックに統合ノード2302である挙動ID=9を格納し、同時に統合ノード2302の一時変数に取得した状態p1を格納する。
統合ノード2302に対してルート挙動2305を取得する。
次に、挙動2305から経路2309に沿って統合ノード2302まで検索し、統合ノード2302で取得した状態p2を統合ノードの一時変数に格納する。ここでは、統合ノード2302の2回目の状態p2が、1回目の状態p1と異なっている例を示している。
この時点で統合ノード2302の一時変数には2つの状態p1、p2が格納されている。
統合ノードまでの検索は終了したので統合ノード2302以降の経路2310に沿って終端まで検索を実行する。
統合ノード2302の状態変数に格納された状態はp1、p2の2種類あるため経路2310は統合ノード2302を始点として2回同じ経路を検索しなければならない。
1回目の検索では状態p1による検索を実行するとともに一時変数からp1を削除する。
2回目の検索では状態p2からの検索を実行するとともに、状態変数p2を削除する。
統合ノード2302の状態変数はすべて削除されたため、統合ノードをスタックから削除する。
スタックを参照して統合ノードが存在しないことを確認し、検索を終了する。
このように、本実施の形態によれば、挙動インデックスに統合ノードが含まれている場合にも、全上流経路のノードを抽出してノードの解析を行うため、挙動インデックスに含まれているイベント発生順序の全てのパターンを網羅することができ、検索条件式に合致するパターンを効率的に抽出することができる。
また、本実施の形態によれば、たとえば製造工程の過程で部品が製品に組み込まれることで別の視点で追跡する必要がある場合においては異なる視点での関係を管理することにより、視点を切り替えた追跡が可能となる。
実施の形態4.
本実施の形態では、特定のクラス(カテゴリー)に属する挙動インデックス(イベント履歴情報)を他のクラスの挙動インデックスに対応付け、あるクラスの挙動インデックスのノードを解析している際に、解析中の挙動インデックスが他クラスの挙動インデックスに対応付けられている場合に、対応付けられている他クラスの挙動インデックスを抽出し、抽出した他クラスの挙動インデックスのノードを解析し、2つ以上のクラスに属する2つ以上の挙動インデックスのノードの組み合わせに基づきイベント発生順序のパターンを1つ以上抽出し、検索条件式との照合を行う例を説明する。
図26は、本実施の形態に係る検索装置100の構成例を示す。
図26では、クラス間関係定義ファイル116が追加されている点が図1との違いである。
また、本実施の形態では、関係解析部112の動作が加わる。
関係解析部112は、検索条件式として指定された行動パターンに従って、人、機器、ファイルなどにまたがって検索する必要がある場合に、クラス間関係定義ファイル116の情報をもとに検索の範囲を切り替えながら検索することを可能にする。
つまり、実施の形態1〜3においては同一クラス内での検索のみを対象としていたが、実施の形態4では異なるクラス間での関係構造を用いた検索方式について説明する。
図27は、実施の形態4に係わる検索条件式2401、状態遷移図2402、挙動インデックス2403である。
図27において、検索条件式2401は、コピーされた後、印刷され、複写機1で複写をされたファイルクラスに属するインスタンスを検索するための検索条件式である。
挙動インデックス2403は、ファイルクラス2404、ユーザクラス2405、機器クラス2406を持つ。
ファイルクラス2404には3つのファイルインスタンス、ユーザクラス2405には2つのユーザインスタンス、機器クラス2406には2つの機器インスタンスが存在する。
なお、四角内数字1〜24は挙動IDを示す。
検索条件式2401の追跡対象クラスはファイルクラス2404であるため、挙動情報抽出部107がファイルクラスに属するインスタンスの始点挙動から発生順に挙動を取得し、ノード種別判定部108がノード種別を判定し、状態評価部111に各ノードの情報を順次入力する。
ファイルクラスのインスタンスの挙動にはコピーイベントと印刷イベントが記録されているが、複写イベントについては記録がない。
したがって、ファイルクラスの範囲での検索では検索条件式2401に該当するインスタンスを取得することはできない。
そこで、印刷イベント発生後の複写イベントについては、関係解析部112が、クラス間関係定義ファイル116のクラス間関係定義を使って検索対象となるクラスをファイルクラス2404からユーザクラス2405に切り替えて検索する。
図27をもとにクラス間関係を使った検索における状態評価部111への入力情報抽出手順を述べる。
まず、クライアント200がクラス間関係定義ファイル116で検索条件式IDごとに検索範囲クラスの切り替えを定義する。
図28に示すクラス間関係定義ファイル116の定義例2501は、図27の検索条件式2401と対応づけて定義するものであり、印刷イベントは、ファイルクラスからユーザクラスに検索範囲を切り替えることが定義されている。
関係解析部112は、定義例2501から挙動の印刷イベントを判断すると現在検索中のクラスがファイルクラスである場合はユーザクラスに視点を切り替え、挙動情報抽出部107は切り替え後のユーザクラスの挙動を挙動インデックスから抽出する。
また、関係解析部112による検索範囲の切り替え時に、ファイルクラスの挙動構造体はクラス間関係スタックに記憶され、切り替え後の検索が終端まで終了すれば、再度スタックから検索クラスを切り替えた時点の挙動を読み込みクラスを切り替えることなく検索を続行する。
たとえば図27において、状態評価部111がファイルクラス2404を対象とした検索で印刷イベント2407を識別するとその時点で、関係解析部112がクラス間関係定義ファイル116の定義に基づき、検索対象クラスをユーザクラス2405に切り替え、挙動情報抽出部107がユーザクラスのユーザAインスタンスの挙動、ユーザBインスタンスの挙動をノードの連結順序に従って抽出し、状態評価部111は、ユーザAのID=11の挙動を得た際、またはユーザBのID=15の挙動を得た際に、ユーザクラス2405の挙動をファイルクラス2404の挙動に連結することができる。
また、インスタンス構造体900に、他クラスで関連するインスタンスのIDを管理する項目(以下、「他クラス関連インスタンスID」と表記する)を設ければ、特定のインスタンスから他クラスの特定のインスタンスに検索範囲を切り替えることができる。
たとえば、図27の挙動インデックス2403において、ファイルIIIインスタンスのインスタンス構造体の他クラス関連インスタンスIDにユーザBインスタンスのインスタンスIDが格納されていれば、ファイルIIIからユーザBに検索範囲を切り替えることができる。
更に、挙動構造体1000に、他クラスで関連する挙動のIDを管理する項目(以下、「他クラス関連挙動ID」と表記する)を設ければ、特定の挙動から他クラスの特定の挙動に検索範囲を切り替えることができる。
たとえば、図27の挙動インデックス2403において、ファイルIIIインスタンスのID=7の挙動の挙動構造体の他クラス関連挙動IDにユーザBインスタンスの挙動ID=15が格納されていれば、矢印2408に示されるように、ファイルIIIのID=7の挙動からユーザBのID=15の挙動に検索範囲を切り替えることができる。
ユーザBでは挙動15の後に発生するイベントが複写イベントであり、この複写イベントは複写機1で処理されたものであれば、検索条件式2401は受理状態となる。
仮に検索対象クラスをユーザクラスに切り替えて検索した後、終端まで受理状態にならない場合は、挙動情報抽出部107は、クラス間関係スタックから記憶した挙動8を取得し、再度8からファイルクラス2404内での検索を実行する。
このとき、クラス間関係スタックから挙動ID=8は削除される。
本例では、2つのクラスを切り替えた例について説明したが切り替え可能なクラス数には制限はなく、いずれもクラス間関係定義ファイル116に定義されていれば可能である。このため、3つ以上のクラスの間で検索範囲を切り替えることも可能である。
つまり、検索範囲をファイルクラスからユーザクラスに切り替え、更に、ユーザクラスから機器クラスに切り替えることも可能である。
また検索のクラス範囲を切り替える場合は検索範囲が膨大になるため、切り替えから一定時間内、あるいは一定挙動数内などで制限を加えることによって範囲を絞ることが可能である。
ここで、以上の実施の形態1〜4で説明した内容をまとめると以下のようになる。
実施の形態1〜4では、履歴データ(ログ)の前後関係を管理し対象ごとの動作(イベント)を発生順に追跡するためのデータ構造を有する履歴追跡型データをイベントの発生パターンに基づいて検索する部分一致検索システムを説明した。
より具体的には、部分一致検索システムが、
動作と対象のIDから構成された検索条件式を記憶して構文解析し、入力された検索条件式と等価な検索オートマトンであって、検索条件式から状態遷移表を生成し、入力された状態とIDから遷移状態テーブルを使用して次に遷移するノードの状態を取得し、すべてのノードに関する状態取得を終了した場合において、前記状態遷移が前記検索条件式に適合することを示す対象のIDを出力するためのノード種別判定部、分岐ノード処理部、統合ノード処理部、評価判定部、関係解析部を含むことを説明した。
また、実施の形態1〜4で説明した部分一致検索システムは、状態遷移表を使用し、入力に対して得られた状態からそれが受理状態かどうかを判断し、受理状態の場合はそのノードのIDを記憶領域に記憶させ、すべてのノードの検索を終了した時点で受理状態を認識した数とヒット位置を返すことを説明した。
また、実施の形態1〜4では、走査したノードの種別を、1つ前のノード数および1つ後のノード数がそれぞれ1の場合に「通常ノード」、1つ前が1、1つ後が2以上の場合を「分岐ノード」、1つ前が2以上、1つ後が1の場合を「統合ノード」に分類し判断する、部分一致検索システムを説明した。
また、実施の形態1〜4で説明した部分一致検索システムでは、ノード種別判定部が、解析中のノードを「分岐ノード」と判定した場合において、分岐ノードにおける1つ後のすべてのノードの情報と前記分岐ノードでの状態をノード情報数分記憶領域に記憶し、分岐ノードより後方の処理については記憶領域から最も最近に保存した分岐ノード情報と状態を記憶領域から取り出し当該ノードから状態遷移を取得することを説明した。
また、実施の形態1〜4で説明した部分一致検索システムでは、ノード種別判定部が、解析中のノードを「統合ノード」と判定した場合において、統合ノードのすべての親ノードを取得し、前記親ノードから統合ノードまでを前記状態遷移表から遷移状態を取得し、親ノード個数分記憶し、異なる状態数に関して統合ノード以降の判定をすることを説明した。
また、実施の形態1〜4で説明した部分一致検索システムでは、関係解析部が事前に定義したクラス間の関係定義を読み込み、検索対象クラスを検索中に切り替えながら検索することを説明した。
最後に、実施の形態1〜4に示した検索装置100のハードウェア構成例について説明する。
図29は、実施の形態1〜4に示す検索装置100のハードウェア資源の一例を示す図である。
なお、図29の構成は、あくまでも検索装置100のハードウェア構成の一例を示すものであり、検索装置100のハードウェア構成は図29に記載の構成に限らず、他の構成であってもよい。
図29において、検索装置100は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
検索装置100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1〜4の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、実施の形態1〜4の説明において、「〜の解析」、「〜の判断」、「〜の判別」、「〜の比較」、「〜の評価」、「〜の抽出」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜4で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1〜4の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜4の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜4の「〜部」の手順や方法をコンピュータに実行させるものである。
このように、実施の形態1〜4に示す検索装置100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
実施の形態1に係わる検索装置の構成例を示した図。 実施の形態1に係わるデータ構造の例を示した図。 実施の形態1に係わる順序関係構造を示した図。 実施の形態1に係わる階層関係構造を示した図。 実施の形態1に係わる階層関係構造を示した図。 実施の形態1に係わるクラス間関係構造を示した図。 実施の形態1に係わる挙動インデックスメイン構造体を示した図。 実施の形態1に係わるクラス構造体を示した図。 実施の形態1に係わるインスタンス構造体を示した図。 実施の形態1に係わる挙動構造体を示した図。 実施の形態1に係わる検索オートマトンおよび挙動インデックスを示した図。 実施の形態1の処理フロー図。 実施の形態1における状態遷移図。 実施の形態2に係わる検索オートマトンおよび挙動インデックスを示した図。 実施の形態2に係わる分岐ノード処理フロー図。 実施の形態2に係わる分岐ノード状態管理変数。 実施の形態2に係わる分岐ノード用スタック。 実施の形態2に係わる分岐ノード以降処理フロー図。 実施の形態2に係わる状態遷移図。 実施の形態2に係わる分岐ノードを含む挙動インデックスを示した図。 実施の形態2に係わるスタックおよび状態管理変数の変化を示した図。 実施の形態3に係わる検索オートマトンおよび挙動インデックスを示した図。 実施の形態3に係わる統合ノード処理フロー図。 実施の形態3に係わる統合ノードを含む挙動インデックスを示した図。 実施の形態3に係わるスタックおよび状態管理変数の変化を示した図。 実施の形態4に係わる検索装置の構成例を示した図。 実施の形態4に係わる検索オートマトンおよび挙動インデックスを示した図。 実施の形態4に係わる検索対象クラス切り替えの定義ファイルを示した図。 実施の形態1〜4に係わる検索装置のハードウェア構成例を示した図。
符号の説明
100 検索装置、101 ログ、102 挙動データ生成部、103 挙動インデックス、104 正規表現変換部、105 検索オートマトン保持部、106 状態遷移表、107 挙動情報抽出部、108 ノード種別判定部、109 統合分岐ノード処理部、110 評価部、111 状態評価部、112 関係解析部、113 検索結果記憶部、114 分岐統合位置記憶部、115 分岐統合状態記憶部、116 クラス間関係定義ファイル、117 情報記憶部、200 クライアント。

Claims (13)

  1. イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を記憶する情報記憶部と、
    前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出する情報解析部とを有することを特徴とする情報処理装置。
  2. 前記情報処理装置は、更に、
    抽出対象イベントと抽出対象イベントの出現順序が示される抽出条件を入力する抽出条件入力部を有し、
    前記情報解析部は、
    抽出したイベント発生順序のパターンが、前記抽出条件に示されている抽出対象イベントの出現順序に合致する否かを判定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記情報記憶部は、
    複数のイベント履歴情報を記憶しており、
    前記情報解析部は、
    イベント履歴情報ごとにイベント発生順序のパターンを抽出し、前記抽出条件に示されている抽出対象イベントの出現順序に合致しているイベント発生順序のパターンが含まれているイベント履歴情報を抽出することを特徴とする請求項2に記載の情報処理装置。
  4. 前記情報記憶部は、
    複数のイベント履歴情報を複数のカテゴリーに分類して記憶し、更に、異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士を対応付けて記憶し、
    前記情報解析部は、
    特定のカテゴリーに属するイベント履歴情報の各ノードを解析し、解析中の前記特定のカテゴリーのイベント履歴情報が他カテゴリーのイベント履歴情報に対応付けられている場合に、前記特定のカテゴリーのイベント履歴情報に対応付けられている他カテゴリーのイベント履歴情報を抽出し、抽出した他カテゴリーのイベント履歴情報のノードを解析し、2つ以上のカテゴリーに属する2つ以上のイベント履歴情報のノードの組み合わせに基づきイベント発生順序のパターンを1つ以上抽出することを特徴とする請求項1に記載の情報処理装置。
  5. 前記情報記憶部は、
    異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士をノード単位で対応付けて記憶し、
    前記情報解析部は、
    前記特定のカテゴリーに属するイベント履歴情報の各ノードを解析し、解析中のノードが他カテゴリーのイベント履歴情報内のノードに対応付けられている場合に、解析中のノードに対応付けられているノードを抽出し、抽出したノードを解析することを特徴とする請求項4に記載の情報処理装置。
  6. 前記情報解析部は、
    抽出した他カテゴリーのイベント履歴情報が更に別のカテゴリーのイベント履歴情報に対応付けられている場合に、当該別のカテゴリーのイベント履歴情報を抽出し、抽出した別のカテゴリーのイベント履歴情報のノードを解析し、3つ以上のカテゴリーに属する3つ以上のイベント履歴情報のノードの組み合わせに基づきイベント発生順序のパターンを1つ以上抽出することを特徴とする請求項4に記載の情報処理装置。
  7. 前記情報記憶部は、
    異なるカテゴリーに属する関連する2つ以上のイベント履歴情報同士をノード単位で対応付けて記憶し、
    前記情報解析部は、
    抽出した他カテゴリーのイベント履歴情報のノードを解析し、解析中のノードが別のカテゴリーのイベント履歴情報内のノードに対応付けられている場合に、解析中のノードに対応付けられているノードを抽出し、抽出したノードを解析することを特徴とする請求項6に記載の情報処理装置。
  8. 前記情報解析部は、
    前記イベント履歴情報に分岐ノードが含まれている場合は、未解析の分岐経路の中から解析対象とする分岐経路を選択し、選択した分岐経路に含まれる各ノードを前方のノードから順に連結順序に従って解析し、選択した分岐経路に含まれる各ノードの解析が終了した後に、新たな解析対象の分岐経路を選択することを特徴とする請求項1に記載の情報処理装置。
  9. 前記情報解析部は、
    前記イベント履歴情報に統合ノードが含まれている場合は、未解析の上流経路の中から解析対象とする上流経路を選択し、選択した上流経路に含まれる各ノードを前方のノードから順に連結順序に従って解析し、選択した上流経路に含まれる各ノードの解析が終了した後に、新たな解析対象の上流経路を選択することを特徴とする請求項1に記載の情報処理装置。
  10. 前記情報解析部は、
    統合ノードの全ての上流経路の解析が完了した後に、統合ノードの後方の各ノードの解析を開始することを特徴とする請求項8に記載の情報処理装置。
  11. 前記情報解析部は、
    統合ノードの全ての上流経路の解析を行った結果、統合ノードが複数種類のイベントを表していることが判明した際に、統合ノードの後方の各ノードの解析を統合ノードが表すイベントの種類数分繰り返すことを特徴とする請求項9に記載の情報処理装置。
  12. コンピュータが、
    イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を所定の記憶装置から取得し、
    前記コンピュータが、
    前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出することを特徴とする情報処理方法。
  13. イベントの発生経緯の履歴を複数ノードの連結で表すイベント履歴情報であって、2つ以上の後方のノードに連結する分岐ノード及び2つ以上の前方のノードから連結される統合ノードの少なくともいずれかが含まれるイベント履歴情報を所定の記憶装置から取得する情報取得処理と、
    前記イベント履歴情報の各ノードを前方のノードから順にノードの連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが分岐ノード及び統合ノードのいずれかに該当するか否かを判定し、解析対象のノードが分岐ノードである場合には、分岐ノードから分岐する分岐経路ごとに分岐経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、解析対象のノードが統合ノードである場合には、統合ノードに合流する上流経路ごとに上流経路に含まれる各ノードを連結順序に従って解析して各ノードが表すイベントを識別し、前記イベント履歴情報からイベント発生順序のパターンを1つ以上抽出する情報解析処理とをコンピュータに実行させること特徴とするプログラム。
JP2011501427A 2009-02-27 2009-02-27 情報処理装置及び情報処理方法及びプログラム Active JP5318190B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/053728 WO2010097945A1 (ja) 2009-02-27 2009-02-27 情報処理装置及び情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2010097945A1 true JPWO2010097945A1 (ja) 2012-08-30
JP5318190B2 JP5318190B2 (ja) 2013-10-16

Family

ID=42665173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011501427A Active JP5318190B2 (ja) 2009-02-27 2009-02-27 情報処理装置及び情報処理方法及びプログラム

Country Status (5)

Country Link
US (1) US20110307488A1 (ja)
JP (1) JP5318190B2 (ja)
KR (1) KR101402556B1 (ja)
CN (1) CN102317940B (ja)
WO (1) WO2010097945A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762297B2 (en) * 2010-05-17 2014-06-24 Microsoft Corporation Dynamic pattern matching over ordered and disordered data streams
CN102298635B (zh) * 2011-09-13 2013-09-04 苏州大学 事件信息融合方法和系统
JP5618381B2 (ja) * 2012-02-16 2014-11-05 日本電信電話株式会社 イベントログの検索方法、その装置及びプログラム
US20140283024A1 (en) * 2013-03-13 2014-09-18 Qualcomm Incorporated Method for efficient behavioral analysis on a mobile station
JP6327234B2 (ja) * 2015-11-06 2018-05-23 横河電機株式会社 イベント解析装置、イベント解析システム、イベント解析方法、およびイベント解析プログラム
CN112198850A (zh) * 2016-11-09 2021-01-08 株式会社东芝 数据收集系统、处理系统以及存储介质
WO2020174565A1 (ja) * 2019-02-26 2020-09-03 日本電気株式会社 情報処理装置、情報処理方法、及びコンピュータ可読媒体
CN110427521B (zh) * 2019-06-28 2022-02-11 西华大学 一种配电网单线图生成系统
CN110413008B (zh) * 2019-07-17 2022-08-12 国核电力规划设计研究院有限公司 固定可调光伏支架角度调整日期的确定方法和装置
CN110968864B (zh) * 2019-11-26 2023-06-09 西安四叶草信息技术有限公司 安全事件的应急响应处理方法及装置
CN111741029B (zh) * 2020-08-25 2020-12-04 北京安帝科技有限公司 一种日志数据的处理方法、处理装置及存储介质
JP7412307B2 (ja) * 2020-08-28 2024-01-12 株式会社日立製作所 作成支援装置、作成支援方法、および作成支援プログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3813837B2 (ja) * 2001-05-25 2006-08-23 株式会社東芝 データ分析装置及びデータ分析方法並びにプログラム
JP2003141173A (ja) * 2001-08-22 2003-05-16 Komatsu Ltd データベース管理システム及びデータベース
US8868544B2 (en) * 2002-04-26 2014-10-21 Oracle International Corporation Using relational structures to create and support a cube within a relational database system
US7447667B2 (en) * 2002-12-11 2008-11-04 International Business Machines Corporation Method and knowledge structures for reasoning about concepts, relations, and rules
US7269597B2 (en) * 2002-12-16 2007-09-11 Accelrys Software, Inc. Chart-ahead method for decision tree construction
US7840696B2 (en) * 2003-07-25 2010-11-23 Broadcom Corporation Apparatus and method for classifier identification
JP4160462B2 (ja) * 2003-08-18 2008-10-01 株式会社東芝 時系列行動パターンを生成して表示する装置およびプログラム
JP4146326B2 (ja) * 2003-10-24 2008-09-10 株式会社東芝 時系列活動データ分析装置、方法及びプログラム
US7197502B2 (en) * 2004-02-18 2007-03-27 Friendly Polynomials, Inc. Machine-implemented activity management system using asynchronously shared activity data objects and journal data items
JP4581446B2 (ja) * 2004-03-22 2010-11-17 ソニー株式会社 情報処理装置および方法、並びにプログラム
WO2006037613A2 (en) * 2004-10-04 2006-04-13 Clearpace Software Limited Method and system for implementing an enhanced database
US20060195880A1 (en) * 2005-02-28 2006-08-31 Fuji Xerox Co., Ltd. Service providing apparatus
JP4992301B2 (ja) * 2006-06-05 2012-08-08 富士通株式会社 検索処理方法及び装置
JP4927448B2 (ja) * 2006-06-09 2012-05-09 株式会社日立製作所 時系列パターン生成システム及び時系列パターン生成方法
JP4157594B2 (ja) * 2006-08-01 2008-10-01 松下電器産業株式会社 地図情報表示装置及びその方法
JP5226401B2 (ja) * 2008-06-25 2013-07-03 インターナショナル・ビジネス・マシーンズ・コーポレーション 文書データの検索を支援する装置及び方法

Also Published As

Publication number Publication date
KR20110122138A (ko) 2011-11-09
WO2010097945A1 (ja) 2010-09-02
US20110307488A1 (en) 2011-12-15
KR101402556B1 (ko) 2014-05-30
JP5318190B2 (ja) 2013-10-16
CN102317940B (zh) 2014-04-23
CN102317940A (zh) 2012-01-11

Similar Documents

Publication Publication Date Title
JP5318190B2 (ja) 情報処理装置及び情報処理方法及びプログラム
CN111602114B (zh) 用于在集成开发环境内提供即时通信信道的系统和方法
US11513793B2 (en) Systems and methods for providing an instant communication channel within integrated development environments
CN110928772B (zh) 一种测试方法及装置
US9542066B2 (en) Window grouping
Li et al. Here's what I did: Sharing and reusing web activity with ActionShot
JP5452030B2 (ja) 統合ログ生成装置及び統合ログ生成プログラム及び記録媒体
CN104205062A (zh) 剖析数据可视化
CN101821764A (zh) 自动操纵web文档集合
CN102239458A (zh) 可视化数据元素之间的关系
JP2011022705A (ja) 証跡管理方法、システム、及びプログラム
CN106371953A (zh) 紧凑二进制事件日志生成
Itkin et al. User-assisted log analysis for quality control of distributed fintech applications
KR101100395B1 (ko) 저작물 보호 시스템 및 방법
JP4989761B2 (ja) イベント履歴記憶装置、イベント履歴追跡装置、イベント履歴記憶方法及びイベント履歴記憶プログラム
AfzaliSeresht et al. An explainable intelligence model for security event analysis
Zhang et al. A bug rule based technique with feedback for classifying bug reports
Yano et al. Labeling feature-oriented software clusters for software visualization application
Gruppi et al. Tell me who your friends are: Using content sharing behavior for news source veracity detection
JP5845961B2 (ja) 情報処理装置及び情報処理プログラム
Reynolds A tableau for bundled CTL
JP2000172665A (ja) ハイパーテキスト解析装置及び方法、ハイパーテキスト解析プログラムを記録した記憶媒体
Ting et al. Identifying web navigation behaviour and patterns automatically from clickstream data
KR100567813B1 (ko) 텐덤 시스템의 트랜잭션 분석 시스템
JP2009211128A (ja) シミュレーション装置及びシミュレーション方法及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130517

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130709

R150 Certificate of patent or registration of utility model

Ref document number: 5318190

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250