(57)【要約】  各解析エンジンにて生成された複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続され、各解析エンジンに対応する各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に各ノードを識別する情報であり同一のノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースと、ノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造のグラフデータ内の各ノードに、各ノードに関連付けられた識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成されるグラフデータ内の各ノードを対応付ける処理を行うデータ処理手段と、を備えた。
2012063451.tif 000002
【特許請求の範囲】
【請求項１】
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続されており、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースを備えると共に、
前記ノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段を備えた、
情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成される前記グラフデータのデータ構造に変換された前記他の解析エンジンにて生成された前記グラフデータを、変換後のデータ構造で前記データベースに保存する、
情報処理装置。
【請求項４】
請求項１乃至３のいずれかに記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータに対する所定のノードの検索要求に応じて、当該所定のノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータ内のノードの検索を行う、
情報処理装置。
【請求項５】
請求項１乃至４のいずれかに記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータに対する所定のノードの削除要求に応じて、当該所定のノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータ内のノードの削除を行う、
【請求項６】
請求項１乃至５のいずれかに記載の情報処理装置であって、
前記所定の解析エンジンと前記他の解析エンジンとは、解析内容が同一である各解析エンジンである、
情報処理装置。
【請求項７】
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置に、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段、
を実現させるためのプログラム。
【請求項８】
請求項７に記載のプログラムであって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
プログラム。
【請求項９】
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置が、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行う、
情報処理方法。
【請求項１０】
請求項９に記載の情報処理方法であって、
前記情報処理装置が、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置にかかり、特に、複数のデータベースが混在したシステムにおけるデータ管理を支援する情報処理装置に関する。
【背景技術】
【０００２】
近年、情報処理技術の発達に伴い、様々なデータの解析を行う解析エンジンの開発が行われている。例えば、動画像データから人間の動線をトレースする位置情報を生成する、静止画像データから人物を特定する、音声データからテキストデータを生成するなど、様々な解析エンジンが存在している。【０００３】
そして、解析エンジンは、解析精度や解析速度の向上のために、常にエンジンの改善が行われる。これに伴い、改善された解析エンジンでは、データベースに蓄積されるデータ構造の変更やデータ自体の追加が行われる場合もある。このような場合、新旧のデータ構造に互換性があれば、データベースにアクセスするために用いられる新旧のアプリケーションから、各データにアクセスすることは可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２５７０８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、新旧の解析エンジンの解析結果であるデータ構造が異なる場合には、旧解析エンジンに対応している旧アプリケーションでは、新しい解析エンジンにて生成されたデータにアクセスすることができない場合がある、という問題が生じる。また、新しいアプリケーションから旧解析エンジンで解析されたデータに対しては、新しいアプリケーションに旧データ構造にアクセスできるようデータ構造の変換ルールを組み込む必要がある。ところが、かかる場合には、データ構造の変換ルールをアプリケーション開発者側が理解する必要があり、アプリケーションの数が多くなると、当該アプリケーションの開発に非常に手間とコストがかかる、という問題が生じる。【０００６】
ここで、関連する技術として、特許文献１に開示のシステムがある。この特許文献１では、複数のデータベースから必要なデータを統合して、論理的なビューを提供する方法を開示している。ところが、特許文献１に開示の技術であっても、データベースを追加、変更する度に、アプリケーション側の旧版のビュー生成ルールを変更し続けなければならず、システム管理者にとって非常に手間とコストがかかる、という問題が生じる。【０００７】
このため、本発明の目的は、上述した課題である、データ構造が異なるデータベースが混在するシステムにおける管理と開発に手間とコストがかかること、を解決することにある。
【課題を解決するための手段】
【０００８】
かかる目的を達成するため、本発明の一形態である情報処理装置は、
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続されている。
そして、情報処理装置は、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースを備えると共に、
前記ノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段を備えた、
という構成をとる。【０００９】
また、本発明の他の形態であるプログラムは、
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置に、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段、
を実現させるためのプログラムである。【００１０】
また、本発明の他の形態である情報処理方法は、
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置が、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行う、
という構成をとる。
【発明の効果】
【００１１】
本発明は、以上のように構成され機能するのでこれによると、データ構造が異なるデータベースが混在するシステムにおけるデータ管理とシステム自体の開発を、容易かつ低コストに実現できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態１における情報処理システムの構成を示すブロック図である。
【図２】図１に開示したグラフ構造定義ＤＢの一例を示す図である。
【図３】図１に開示した情報処理システムにおけるグラフデータ変換の一例を示す図である。
【図４】図１に開示した情報処理システムにおけるグラフデータ変換後の保存の一例を示す図である。
【図５】図１に開示した情報処理システムにおけるグラフデータ変換の一例を示す図である。
【図６】図１に開示した情報処理システムにおけるグラフデータ変換後の保存の一例を示す図である。
【図７】図１に開示した情報処理システムにおけるグラフ検索式生成の一例を示す図である。
【図８】図１に開示した情報処理システムにおけるグラフ検索式生成の一例を示す図である。
【図９】本発明の付記１における情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図８を参照して説明する。図１は、本発明の構成を示す図であり、図２乃至図８は、動作を説明する説明図である。
【００１４】
本発明における情報処理システムは、図１に示すように、複数の解析エンジン３１，３２を搭載し、各解析エンジンで解析された結果をデータベース２０に蓄積すると共に、出力するシステムである。特に、本実施形態では、同一種類のデータの解析を行うが、解析結果として出力するグラフデータのデータ構造が異なる旧バージョンと新バージョンの各解析エンジン３１，３２を備えている。また、これに伴い、旧バージョンの解析エンジン３１の解析結果である旧グラフデータ２１にアクセスして処理を行うための旧アプリケーション４１と、新バージョンの解析エンジン３２の解析結果である新グラフデータ２２に対してアクセスして処理を行うための新アプリケーション４２と、を備えている。
【００１５】
さらに、本実施形態では、新旧のいずれのアプリケーション４１，４２からも、データベース２０に格納された新旧いずれのグラフデータ２１，２２に対してアクセスして処理を行うことを可能とするために、解析エンジン管理装置１０を備えている。
【００１６】
上記解析エンジン管理装置１０（情報処理装置）は、図１に示すように、装備された演算装置にプログラムが組み込まれることで構築された、制御部１１と、グラフデータ変換部１２と、グラフデータ操作部１３と、グラフ検索式生成部１４と、解析エンジン登録部１５と、を備えている。また、解析エンジン管理装置１０は、装備された記憶装置に形成されたグラフ構造定義ＤＢ（データベース）１６を備えている。
【００１７】
上記制御部１１は、解析エンジン管理装置１０の動作を制御するものである。制御部１１は、例えば、各アプリケーション４１，４２からの処理要求を受け付け、グラフデータ変換部１２、グラフデータ操作部１３、グラフ検索式生成部１４にそれぞれ処理指令を発したり、これらからの処理結果を各アプリケーション４１，４２に返す処理を行う。
【００１８】
上記解析エンジン登録部１５は、各解析エンジン３１，３２による解析結果である各グラフデータのデータ構造を表す情報を、グラフ構造定義ＤＢ１６（ノード情報データベース）に登録する機能を有する。なお、解析エンジン登録部１５は、オペレータから手動で入力された各解析エンジン３１，３２に対応する各グラフデータのデータ構造を表す情報を、グラフ構造定義ＤＢ１６に登録してもよく、あるいは、各解析エンジンから出力された各グラフデータのデータ構造を表す情報の入力を受け付けて、グラフ構造定義ＤＢ１６に登録してもよい。
【００１９】
ここで、解析エンジン登録部１５にてグラフ構造定義ＤＢ１６に登録する情報の一例を、図２を参照して説明する。まず、各解析エンジン３１，３２による解析結果である各グラフデータのデータ構造について説明する。本実施形態における各解析エンジン３１，３２は、動画像データから人間の動線をトレースする位置情報を生成する解析エンジンであり、それぞれ解析する内容はほぼ同一であるが、解析結果として出力される各グラフデータのデータ構図が異なる新旧のバージョンが相違した解析エンジン３１，３２である。
【００２０】
例えば、旧バージョンの解析エンジン３１にて生成されるグラフデータ２１は、図２の旧解析エンジン３１内に示すように、グラフデータを構成するノードとして、トップに位置する「動線」、その下位に位置する「人」と「時刻」、「人」の下位に位置する「名前」、が連結されて構成されている。また、新バージョンの解析エンジン３２にて生成されるグラフデータ２２は、図２の新解析エンジン３２内に示すように、グラフデータを構成するノードとして、トップに位置するノードが旧バージョンの「動線」に代わって「人」、その下位に位置する「名前」と「動線」、「動線」の下位に位置する「時刻」と「エリア」、が連結されて構成されている。なお、「エリア」は、新バージョンの解析エンジン３２で追加されたノードである。
【００２１】
そして、上述した各グラフデータのデータ構造が、解析エンジン登録部１５によってグラフ構造定義ＤＢ１６に、図２の符号Ｄ１の「エンジン定義データ」と、符号Ｄ２の「ノードＵＲＩマッピングデータ」に示すように登録される。
【００２２】
上記「エンジン定義データ」Ｄ１は、解析エンジンの種類に応じて一意の「エンジンクラス」と、グラフデータのデータ構造を識別する「スキーマ」と、解析エンジンの旧バージョンのデータ構造を表す「旧バージョン」と、を記憶している。ここでは、いずれの解析エンジンも動線解析を行う種類で同一であるので、「エンジンクラス」にはそれぞれ「動線解析」が記憶されている。また、「スキーマ」には、旧解析エンジン３１に対しては「ds:動線」が記憶され、新解析エンジン３２に対しては「ds:人」が記憶されている。また、「旧バージョン」には、旧解析エンジン３１に対してはなにも記憶されておらず、新解析エンジン３２に対しては「ds:動線」が記憶されている。
【００２３】
上記「ノードＵＲＩマッピングデータ」Ｄ２は、各解析エンジンのデータ構造を識別する「クラス」と、各解析エンジンの各グラフデータ内における各ノードを参照するパス情報である「ノード」と、各ノードを識別する識別情報である「ＵＲＩ」と、を記憶している。
【００２４】
具体的に、図２に示す「ノードＵＲＩマッピングデータ」Ｄ２において上４行部分（Ｄ２１）には、旧解析エンジン３１のグラフデータの情報が記憶されている。つまり、「クラス」の項目にはすべて「ds:動線」という情報が記憶されており、「ノード」の項目には各ノードへのパス情報が記憶されている。例えば、「動線」のノードは、グラフデータ内ではトップに位置するので、「self」という情報が記憶されており、「名前」というノードは、グラフデータ内では「動線」→「人」→「名前」という階層に位置するため「人／名前」という情報が記憶されている。
【００２５】
そして、「ＵＲＩ」の項目には、各「ノード」毎に固有の「ＵＲＩ」が関連付けられて記憶されている。例えば、ノード「時刻」にはＵＲＩ「ＵＲＩ１」、ノード「人」にはＵＲＩ「ＵＲＩ２」、ノード「名前」にはＵＲＩ「ＵＲＩ３」、ノード「動線」にはＵＲＩ「ＵＲＩ４」、がそれぞれ関連付けられて記憶されている。
【００２６】
また、図２に示す「ノードＵＲＩマッピングデータ」Ｄ２において下５行部分（Ｄ２２）には、新解析エンジン３２のグラフデータの情報が記憶されている。つまり、「クラス」の項目にはすべて「ds:人」という情報が記憶されており、「ノード」の項目には各ノードへのパス情報が記憶されている。例えば、「人」のノードは、グラフデータ内ではトップに位置するので、「self」という情報が記憶されており、「時刻」というノードは、グラフデータ内では「人」→「動線」→「時刻」という階層に位置するため「動線／時刻」という情報が記憶されている。
【００２７】
そして、「ＵＲＩ」の項目には、各「ノード」毎に固有の「ＵＲＩ」が関連付けられて記憶されているが、上記旧解析エンジン３１におけるグラフデータ内のノードと同一のノードについては、同一のＵＲＩが関連付けられて記憶されている。例えば、ノード「名前」にはＵＲＩ「ＵＲＩ３」、ノード「動線」にはＵＲＩ「ＵＲＩ４」、ノード「時刻」にはＵＲＩ「ＵＲＩ１」、ノード「人」にはＵＲＩ「ＵＲＩ２」、がそれぞれ関連付けられて記憶されている。但し、ノード「エリア」は、旧解析エンジン３１におけるグラフデータにはないノードであるため、そのＵＲＩは新規の「ＵＲＩ５」が関連付けられている。
【００２８】
そして、上記グラフデータ変換部１２は、上述したグラフ構造定義ＤＢ１６内の情報を用いて、グラフデータの変換を行う。なお、グラフデータ変換部１２は、後述するように実際にデータベース２０内の各グラフデータ２１，２２にアクセスする際には、グラフデータ操作部１３を介して行うが、以下では、グラフデータ変換部１２の機能として説明する。
【００２９】
ここで、図３を参照して、旧解析エンジン３１に対応する旧アプリケーション４１から、新解析エンジン３２にて生成されデータベース２０に格納された新グラフデータ２２にアクセスするときの様子を説明する。なお、図３の例では、新グラフデータとして記憶されている「時刻」が「2010/9/9 10:00」の「人」の情報を、旧アプリケーション４１にて読み出す場合を示している。
【００３０】
グラフデータ変換部１２は、旧アプリケーション４１からの要求に応じて、グラフ構造定義ＤＢ１６内の「パス情報」を参照して新グラフデータ２２の各ノードにアクセスする。この場合には、特に、新グラフデータ２２において「時刻」のノードと、「人」及び「名前」のノードにアクセスする。このとき、アクセスした各ノードの各「ＵＲＩ」も参照する。すると、「時刻」のノードの「ＵＲＩ」として「ＵＲＩ１」を特定でき、「人」と「名前」のノードの「ＵＲＩ」として「ＵＲＩ２」と「ＵＲＩ３」を特定できる。そして、アクセスした新グラフデータ２２の各ノードの情報を、当該各ノードの「ＵＲＩ」と一致する「ＵＲＩ」が関連付けられている旧グラフデータ２１の各ノードの「パス情報」の位置に対応づけて読み出す。
【００３１】
これにより、図３の符号１２ａに示すように、新グラフデータ２２を旧グラフデータ２１のデータ構造に変換することができ、かかるグラフデータ１２ａを旧アプリケーション４１から出力することができる。そして、上記例では、「時刻」が「2010/9/9 10:00」の新グラフデータ２２のみに限定することで、旧アプリケーション４１からの要求に対応できる。
【００３２】
なお、上記グラフデータ変換部１２は、旧アプリケーションからのアップデート要求に応じて、上述した図３に示すように新グラフデータ２２から変換した旧グラフデータ１２ａを、そのまま図４の矢印Ｙ１に示すように旧グラフデータ２１としてデータベース２０に格納することができる。
【００３３】
続いて、図５を参照して、新解析エンジン３２に対応する新アプリケーション４２から、旧解析エンジン３１にて生成されデータベース２０に格納された旧グラフデータ２１にアクセスするときの様子を説明する。なお、図５の例では、旧グラフデータとして記憶されている「時刻」が「2010/9/9 10:00」の「人」の情報を、新アプリケーション４２にて読み出す場合を示している。
【００３４】
グラフデータ変換部１２は、新アプリケーション４２からの要求に応じて、グラフ構造定義ＤＢ１６内の「パス情報」を参照して旧グラフデータ２１の各ノードにアクセスする。この場合には、特に、旧グラフデータ２１において「時刻」のノードと、「人」及び「名前」のノードにアクセスする。このとき、アクセスした各ノードの各「ＵＲＩ」も参照する。すると、「時刻」のノードの「ＵＲＩ」として「ＵＲＩ１」を特定でき、「人」と「名前」のノードの「ＵＲＩ」として「ＵＲＩ２」と「ＵＲＩ３」を特定できる。そして、アクセスした旧グラフデータ２１の各ノードの情報を、当該各ノードの「ＵＲＩ」と一致する「ＵＲＩ」が関連付けられている新グラフデータ２２の各ノードの「パス情報」の位置に対応づけて読み出す。
【００３５】
これにより、図５の符号１２ｂに示すように、旧グラフデータ２１を新グラフデータ２２のデータ構造に変換することができ、かかるグラフデータ１２ｂを新アプリケーションから出力することができる。そして、上記例では、「時刻」が「2010/9/9 10:00」の旧グラフデータ２１のみに限定することで、新アプリケーション４２からの要求に対応できる。
【００３６】
なお、上記グラフデータ変換部１２は、新アプリケーションからのアップデート要求に応じて、上述した図５に示すように旧グラフデータ２１から変換した新グラフデータ１２ｂを、そのまま図６の矢印Ｙ２に示すように新グラフデータ２２としてデータベース２０に格納することができる。
【００３７】
なお、上述したグラフデータのデータ構造を変更するアップデート処理は、任意のタイミングで、データベース２０内に記憶されている全てのグラフデータに対して一括で行ってもよい。例えば、データベース２０に格納されている全ての旧グラフデータ２１を、新グラフデータ２２のデータ構造に変換してもよい。
【００３８】
次に、上記グラフ検索式生成部１４について説明する。グラフ検索式生成部１４は、上述したグラフ構造定義ＤＢ１６内の情報を用いて、新旧グラフデータ２１，２２の検索を行う。なお、グラフ検索式生成部１４は、後述するように実際にデータベース２０内の各グラフデータ２１，２２にアクセスする際には、グラフデータ操作部１３やグラフデータ変換部１２を介して行うが、以下では、グラフ検索式生成部１４の機能として説明する。
【００３９】
ここで、図７を参照して、旧解析エンジン３１に対応する旧アプリケーション４１から、データベース２０に格納されたすべてのグラフデータ２１，２２内の所定の条件を満たすグラフデータを検索するときの様子を説明する。なお、図７の例では、旧アプリケーション４１から、「時刻」が「2010/9/9 10:00」の「人」の情報を、すべてのグラフデータ２１，２２から検索する場合を示している。
【００４０】
グラフデータ検索式生成部１４は、旧アプリケーション４１からの要求に応じて、グラフ構造定義ＤＢ１６内のノードＵＲＩマッピングデータＤ２内から「パス情報」を参照して、まず、旧グラフデータ２１内の各ノードにアクセスする。この場合には、特に、旧グラフデータ２１において「時刻」のノードと、「人」のノードにアクセスして、旧グラフデータ２１内から、「時刻」が「2010/9/9 10:00」の「人」の情報を検索する。
【００４１】
このときさらに、アクセスした旧グラフデータ２１の各ノードの各「ＵＲＩ」も参照する。すると、図７に示すように、「時刻」のノードの「ＵＲＩ」として「ＵＲＩ１」を特定でき、「人」のノードの「ＵＲＩ」として「ＵＲＩ２」を特定できる。そして、この特定した「ＵＲＩ１」と「ＵＲＩ２」と同一のＵＲＩが関連付けられた新グラフデータ２２内のＵＲＩを、図７の点線矢印に示すように特定して、かかる新グラフデータ２２内のＵＲＩも検索対象となるよう検索式を生成する。
【００４２】
その後、生成した検索式に従って、新グラフデータ２２内の該当するＵＲＩに関連付けられたグラフ構造定義ＤＢ１６内の「パス情報」を参照して、新グラフデータ２２内の各ノードにアクセスする。これにより、新グラフデータ２２に対しても、「時刻」のノードと「人」のノードにアクセスすることができ、当該グラフデータ２２内から「時刻」が「2010/9/9 10:00」の「名前」の情報を検索することができる。
【００４３】
なお、検索された新グラフデータ２２は、旧アプリケーション４１でも参照可能なよう、上述したようにグラフデータ変換部１２にて旧グラフデータ２１のデータ構造に変換されて出力されてもよい。
【００４４】
また、図８を参照して、新解析エンジン３２に対応する新アプリケーション４２から、データベース２０に格納されたすべてのグラフデータ２１，２２内の所定の条件を満たすグラフデータを検索するときの様子を説明する。なお、図８の例では、新アプリケーション４２から、「時刻」が「2010/9/9 10:00」の「人」の情報を、すべてのグラフデータ２１，２２から検索する場合を示している。
【００４５】
グラフデータ検索式生成部１４は、新アプリケーション４２からの要求に応じて、グラフ構造定義ＤＢ１６内のノードＵＲＩマッピングデータＤ２内から「パス情報」を参照して、まず、新グラフデータ２２内の各ノードにアクセスする。この場合には、特に、新グラフデータ２２において「時刻」のノードと、「人」のノードにアクセスして、新グラフデータ２２内から、「時刻」が「2010/9/9 10:00」の「人」の情報を検索する。
【００４６】
このときさらに、アクセスした新グラフデータ２２の各ノードの各「ＵＲＩ」も参照する。すると、図８の実線矢印に示すように、「時刻」のノードの「ＵＲＩ」として「ＵＲＩ１」を特定でき、「人」のノードの「ＵＲＩ」として「ＵＲＩ２」を特定できる。そして、この特定した「ＵＲＩ１」と「ＵＲＩ２」と同一のＵＲＩが関連付けられた旧グラフデータ２１内のＵＲＩを、図８の点線矢印に示すように特定して、かかる旧グラフデータ２１内のＵＲＩも検索対象として検索式を生成する。
【００４７】
その後、生成した検索式に従って、旧グラフデータ２１内の該当するＵＲＩに関連付けられたグラフ構造定義ＤＢ１６内の「パス情報」を参照して、旧グラフデータ２１内の各ノードにアクセスする。これにより、旧グラフデータ２１に対しても、「時刻」のノードと「人」のノードにアクセスすることができ、当該グラフデータ２１内から「時刻」が「2010/9/9 10:00」の「名前」の情報を検索することができる。
【００４８】
なお、検索された旧グラフデータ２１は、新アプリケーション４２でも参照可能なよう、上述したようにグラフデータ変換部１２にて新グラフデータ２２のデータ構造に変換されて出力されてもよい。
【００４９】
ここで、上述したように、異なる解析エンジン間における検索式の生成は、解析内容が同一である解析エンジン間で行われる。例えば、上述したように解析内容が同一で、バージョンが異なる解析エンジン間で行われる。なお、これは、グラフ構造定義ＤＢ１６内のエンジン定義データＤ１内の「エンジンクラス」項目のデータが同一である解析エンジン間で行われる。
【００５０】
また、上記グラフデータ操作部１３は、いずれか一方のアプリケーション４１，４２からのデータ削除要求に応じて、データベース２０内の全てのグラフデータ２１，２２の該当ノードのデータを削除する。ここで、旧アプリケーション４１から、あるいは、新アプリケーション４２から、ノード「名前」のデータの削除要求があった場合を説明する。
【００５１】
まず、グラフデータ操作部１３は、旧アプリケーション４１からノード「名前」の削除要求があった場合には、グラフ構造定義ＤＢ１６内の「パス情報」を参照して旧グラフデータ２１のノード「名前」にアクセスして、当該ノード「名前」のデータを削除する。このとき、アクセスしたノード「名前」の「ＵＲＩ」を参照し、「名前」のノードの「ＵＲＩ」として「ＵＲＩ３」を特定する。そして、この「ＵＲＩ３」と一致する「ＵＲＩ３」が関連付けられている新グラフデータ２２のノード「名前」にアクセスして、かかるデータも削除する。
【００５２】
また、グラフデータ操作部１３は、新アプリケーション４２からノード「名前」の削除要求があった場合には、グラフ構造定義ＤＢ１６内の「パス情報」を参照して新グラフデータ２２のノード「名前」にアクセスして、当該ノード「名前」のデータを削除する。このとき、アクセスしたノード「名前」の「ＵＲＩ」を参照し、「名前」のノードの「ＵＲＩ」として「ＵＲＩ３」を特定する。そして、この「ＵＲＩ３」と一致する「ＵＲＩ３」が関連付けられている旧グラフデータ２１のノード「名前」にアクセスして、かかるデータも削除する。
【００５３】
以上のように、本発明によると、新旧の解析エンジンの解析結果であるデータ構造が異なる場合であっても、異なる解析エンジンにて生成された各グラフデータ内の同一であるノードに同一のＵＲＩを関連付けて当該各ノードを対応付けることにより、各解析エンジンに対応している各アプリケーションから、各グラフデータにアクセスすることができる。従って、各アプリケーションにデータ構造の変換ルールを組み込む必要がなく、システム全体におけるデータベースの管理の手間と、開発コストを抑制することができる。
【００５４】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理装置の構成の概略を、図９を参照して説明する。但し、本発明は、以下の構成に限定されない。
【００５５】
（付記１）
各解析エンジン１１１，１１２、にてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベース１２０に接続されており、
前記各解析エンジン１１１，１１２に対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベース１０１を備えると共に、
前記ノード情報データベース１０１に基づいて、所定の解析エンジン１１１にて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジン１１２にて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段１０２を備えた、
情報処理装置１００。
【００５６】
（付記２）
付記１に記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
情報処理装置。
【００５７】
（付記３）
付記２に記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成される前記グラフデータのデータ構造に変換された前記他の解析エンジンにて生成された前記グラフデータを、変換後のデータ構造で前記データベースに保存する、
情報処理装置。
【００５８】
（付記４）
付記１乃至３のいずれかに記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータに対する所定のノードの検索要求に応じて、当該所定のノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータ内のノードの検索を行う、
情報処理装置。
【００５９】
（付記５）
付記１乃至４のいずれかに記載の情報処理装置であって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータに対する所定のノードの削除要求に応じて、当該所定のノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータ内のノードの削除を行う、
【００６０】
（付記６）
付記１乃至５のいずれかに記載の情報処理装置であって、
前記所定の解析エンジンと前記他の解析エンジンとは、解析内容が同一である各解析エンジンである、
情報処理装置。
【００６１】
（付記７）
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置に、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行うデータ処理手段、
を実現させるためのプログラム。
【００６２】
（付記８）
付記７に記載のプログラムであって、
前記データ処理手段は、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
プログラム。
【００６３】
（付記９）
各解析エンジンにてそれぞれ生成された解析結果である複数のノードが連結されたデータ構造を有する各グラフデータが格納されたデータベースに接続された情報処理装置が、
前記各解析エンジンに対応する前記各グラフデータ毎に設定されており、当該各グラフデータ内における各ノードを参照する各パス情報に、当該各パス情報にて参照される前記各ノードを識別する情報であり同一の前記ノードに対して同一の識別情報がそれぞれ関連付けられたノード情報データベースに基づいて、所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに関連付けられた前記識別情報と同一の識別情報が関連付けられた他の解析エンジンにて生成される前記グラフデータ内の各ノードを対応付ける処理を行う、
情報処理方法。
【００６４】
（付記１０）
付記９に記載の情報処理方法であって、
前記情報処理装置が、前記所定の解析エンジンにて生成された所定のデータ構造の前記グラフデータ内の各ノードに、当該各ノードに対応付けられた前記他の解析エンジンにて生成された前記グラフデータの各ノードの情報を当てはめて、前記他の解析エンジンにて生成された前記グラフデータのデータ構造を、前記所定の解析エンジンにて生成された前記グラフデータのデータ構造に変換する、
情報処理方法。
【００６５】
なお、本発明は、日本国にて２０１０年１１月９日に特許出願された特願２０１０−２５０６２９の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【符号の説明】
【００６６】
１０  解析エンジン管理装置
１１  制御部
１２  グラフデータ変換部
１３  グラフデータ操作部
１４  グラフ検索式生成部
１５  解析エンジン登録部
１６  グラフ構造定義ＤＢ
２０  データベース
２１  旧グラフデータ
２２  新グラフデータ
３１  旧解析エンジン
３２  新解析エンジン
４１  旧アプリケーション
４２  新アプリケーション
１００  情報処理装置
１０１  ノード情報データベース
１０２  データ処理手段
１１１  所定の解析エンジン
１１２  他の解析エンジン
１２０  データベース
【図１】
2012063451.tif 000003
【図２】
2012063451.tif 000004
【図３】
2012063451.tif 000005
【図４】
2012063451.tif 000006
【図５】
2012063451.tif 000007
【図６】
2012063451.tif 000008
【図７】
2012063451.tif 000009
【図８】
2012063451.tif 000010
【図９】
2012063451.tif 000011
【国際調査報告】
2012063451.tif 000012
2012063451.tif 000013
2012063451.tif 000014
2012063451.tif 000015