JP2013131218A - 人物間の関係の分析および表示 - Google Patents

人物間の関係の分析および表示 Download PDF

Info

Publication number
JP2013131218A
JP2013131218A JP2012274420A JP2012274420A JP2013131218A JP 2013131218 A JP2013131218 A JP 2013131218A JP 2012274420 A JP2012274420 A JP 2012274420A JP 2012274420 A JP2012274420 A JP 2012274420A JP 2013131218 A JP2013131218 A JP 2013131218A
Authority
JP
Japan
Prior art keywords
relationship
person
persons
relational database
join
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.)
Pending
Application number
JP2012274420A
Other languages
English (en)
Inventor
Soshin Alexey
アレクセイ・ソシン
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.)
SAP Portals Israel Ltd
Original Assignee
SAP Portals Israel Ltd
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 SAP Portals Israel Ltd filed Critical SAP Portals Israel Ltd
Publication of JP2013131218A publication Critical patent/JP2013131218A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】データベースにおいて、エンティティ間の分離の度合いに応じて人物間の関係の表示を提供すること。
【解決手段】人物間の関係を分析および表示するためのコンピュータ実施方法は、コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、リレーショナルデータベースにおいてユーザ入力に基づき、人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、ユーザ入力に応じた人物間の関係の表示を行なうステップであって、この表示が、リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップとを含む。
【選択図】図1

Description

本文書は、人物間の関係を分析および表示することに関する。
多くのコンピュータシステムには、抽象的なものと実在のものとの両方のエンティティを表す情報が記憶される。一部の組織では、ほんの数例を挙げると、生産、取引、ビジネスパートナー、および人員に関する情報を管理するために、コンピュータネットワークにおける企業向けの業務システムが稼働している。このシステムは、例えば、製品、セールスドキュメント、顧客または従業員だけでなく、このような任意のエンティティ間の関係に対応し、それらを表すデータベースオブジェクトを記憶している場合がある。さらに、データベース情報は、必要に応じて最新の情報で更新される。
しかし、エンティティからなるデータベースでは、存在し得るいかなる人物間関係の概要も与えられない。またこのようなエンティティは、例えば任意の2つのエンティティが同じ人物に対する関係を有するかどうかなどの、それら2つのエンティティ間の分離の度合いも示さない。さらに一部のアルゴリズムでは、関係に関するグラフのノードと同じだけ多くのクエリが必要となる。
第1の態様では、人物間の関係を分析および表示するためのコンピュータ実施方法は、コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、リレーショナルデータベースにおいてユーザ入力に基づき、人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、ユーザ入力に応じた人物間の関係の表示を行なうステップであって、この表示が、リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップとを含む。
第2の態様では、コンピュータプログラム製品は、コンピュータ可読記憶媒体に実体的に具体化されており、人物間の関係を分析および表示するための方法を、プロセッサによって実行される場合に実行する命令を含む。この方法は、コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、リレーショナルデータベースにおいてユーザ入力に基づき、人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、ユーザ入力に応じた人物間の関係の表示を行なうステップであって、この表示が、リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップとを含む。
第3の態様では、システムは、1つまたは複数のプロセッサと、コンピュータ可読記憶媒体に実体的に具体化されており、人物間の関係を分析および表示するための方法を、プロセッサによって実行される場合に実行する命令を含むコンピュータプログラム製品とを含む。この方法は、コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、リレーショナルデータベースにおいてユーザ入力に基づき、人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、ユーザ入力に応じた人物間の関係の表示を行なうステップであって、この表示が、リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップとを含む。
実施形態は、次の特徴のいずれか、またはすべてを含むことができる。リレーショナルデータベースのクエリは、少なくとも1つの列における人物を指定する任意の関係における第1のジョインと、第1のジョインにおける関係で指定された任意の人物における第2のジョインと、第2のジョインにおける人物のいずれかを指定する関係における、少なくとも第1のレフトジョインと、第1のレフトジョインにおける関係で指定された任意の人物における、少なくとも第2のレフトジョインとを含み、リレーショナルデータベースのクエリは、最大数のステップが達せられるまでレフトジョインを実行し続ける。
リレーショナルデータベースのクエリは、関係テーブルを含むリレーショナルデータベースに対して実行され、関係テーブルは、それぞれの関係に対して、関係のソースのための第1の列と、関係のターゲットのための第2の列とを含み、リレーショナルデータベースのクエリは、第1の列が人物を示し、さらに第2の列が人物を示す場合に関係を選択する。
ユーザ入力は、別の人物を特定し、この特定された他の人物を含む、人物に関する人物間の関係に属する人物を探し出す。
リレーショナルデータベースのクエリは、人物およびつながりに関する情報をユーザがアップロードするオンデマンドシステムにおいて実行され、オンデマンドシステムは、ユーザ入力を受信した後に、人物間の関係の表示をユーザに対して行なう。
ユーザ入力は、ステップの最大数を指定する。
方法は、人物間の関係の表示として、ソーシャルグラフを生成するステップをさらに含む。
実施形態は、以下の利点のいずれか、またはすべてを提供することができる。例えば重みまたは優先順位付けを計算するために、組織のデータを分析することができる。例えば次に分析に用いられるクラスターを特定するために、単一のアルゴリズムを実行することができる。ソーシャルネットワークのグラフのための1つまたは複数のパスを計算することができる。ソーシャルネットワークにおける関係の繰り返しが、高速に、またはより効率的に行なわれ得る。人物からの任意の分離度合いにおける入手可能なすべての関係が決定され、また提供され得る。
1つまたは複数の実施形態における詳細が、添付図面と以下の説明とにおいて明記されている。他の特徴および利点は、明細書、図面、および特許請求の範囲より明白となろう。
人物間の関係を分析および表示するための例示的なアーキテクチャを示す図である。 人物間の関係を分析および表示するための擬似コードの例を示す図である。 人物間の関係を分析および表示するための擬似コードの例を示す図である。 人物間の関係を分析および表示するための例示的なアルゴリズムを示す図である。 人物間の関係を分析および表示するための例示的な別のアルゴリズムを示す図である。 本書で説明されるコンピュータ実施方法に関連して用いることができるコンピューティングシステムのブロック図である。
様々な図面において、同一の参照記号は同一の要素を示す。
この開示では、人物間の関係を分析および表示する例が説明される。いくつかの実施形態では、関係を分析するためのアルゴリズムは、リレーショナルデータベース用の基本クエリ言語で表現されたデータベースクエリとして実現される。人物間の関係の場合には、任意のノードに対する接続数が限られていることと、そのため好適なクエリを実行することによってデータベースを分析することが管理可能なタスクであることとをほぼ常に想定することができる。すなわち、数千以上の登録済みの関係をエンティティ(例えば、従業員)が有する場合でも、クエリエンジンは、データベースにおける関係を即座に調べ、1つまたは複数のステップでサーチを広げることができる。
いくつかの実施形態では、アルゴリズムは、指定された開始エンティティ(例えば、特定の従業員)と、関心のある分離ステップ(separation step)の最大数とに基づいて、開始エンティティに対する関係を有する、多くても最大数のステップにおけるすべてのエンティティをデータベースの中で探し出し、それらを提供することができる。別の例としては、アルゴリズムは、指定された2つのエンティティに基づいて、この2つのエンティティをつなぐ、任意選択で多くても最大数のステップを有する、すべての関係パス(relation path)を見つけることができる。
図1は、人物間の関係を分析および表示するための例示的なアーキテクチャ100を示す。このアーキテクチャ100は、データベースシステム102、サーバシステム104、およびクライアントシステム106のそれぞれのうちの少なくとも1つを含む。システム102〜106のうちの1つまたは複数は、2つ以上の物理的なデバイスを介して分散していてもよい。いくつかの実施形態では、システム102〜106のうちの2つ以上は、同じデバイスに取り付けられていてもよい。これらのシステムは、伝送における任意の好適な接続部、プロトコル、または形態を用いて、互いと、かつ/または、他のコンポーネント(図示せず)と通信することができる。例えば、サーバシステム104とクライアントシステム106は、インターネットなどの1つまたは複数のネットワークを介して接続されていてもよい。クライアントシステム106は、ブラウザ、および/または、少なくとも1つの特別に構成されたプログラムを含むことができ、このプログラムは、サーバシステム104とインタフェースをとることができ、かつ/または、データベースシステム102と直接インタフェースをとることができる。いくつかの実施形態では、クライアント-サーバアーキテクチャを必要としない構成を含む、他の構成が用いられてもよい。
データベースシステム102は、少なくとも1つのリレーショナルデータベース108と、少なくとも1つのクエリエンジン110とを含む。このデータベースシステム102は、例えば、バックエンドシステムの一部と考えられる。クエリエンジンは、限定されないがSQLを含む任意の好適なクエリ言語を用いて、データベース108に対してクエリを実行するように構成されている。このようなクエリは、2例のみを挙げると、前もってクエリエンジンに記憶されて命令に応じて実行されてもよく、または、実行用にリアルタイムでクエリエンジンに提供されてもよい。任意の好適なリレーショナルデータベースを用いることができる。
リレーショナルデータベース108は、ここでは複数のテーブルを含む。ここでは、関係ID、ソースエンティティ、ターゲットエンティティ、および、関係の種類にそれぞれ対応する少なくとも4つのキー(id、ソース、ターゲット、およびtype_id)を含む関係テーブル112が示されている。例えば、関係テーブルにおけるエントリーは、次のように表すことができる。
Figure 2013131218
すなわち、上記のエントリーは、ABC123XYZと呼ばれる関係が、報告するPerson1を、この例におけるデータベースが用いられている組織のPerson2につないでいることを指定している。Person1およびPerson2という用語は、2例のみを挙げると、識別子でもよく、または、それぞれの従業員の名前でもよい。上記の関係の代わりに、またはそれに加えて、他の関係を用いることができる。関係テーブル112は、定義されたそれぞれの関係に対して1つのエントリーを含むことになる。いくつかの実施形態では、1つまたは複数の他の列が関係テーブルに含まれ得る。例えば、1つもしくは複数の日または時間を用いて、関係の有効期間を指定することができる。
リレーショナルデータベース108は、エンティティID、および、そのエンティティの表示名にそれぞれ対応する少なくとも2つのキー(id、およびdisplay_name)を有するエンティティテーブル114を含む。例えば、関係テーブルのエントリーは、次のように表すことができる。
Figure 2013131218
すなわち、上記のエントリーは、Person2と呼ばれるエンティティが「Alexey Soshin」と表示される必要があることを指定している。いくつかの実施形態では、エンティティテーブル114は、人物のプロフィールおよび/または人物の写真などの、それぞれのエンティティに関するより多くの情報を指定するために、より多くの列を含む。
サーバシステム104は、1つまたは複数のサービスを提供し、それらのサービスをユーザに対してアクセス可能にする。いくつかの実施形態では、アプリケーションは、サーバシステムで実行されるプログラムとして実装される。例えば、組織の業務におけるいくつかの側面を管理するために、1つまたは複数のエンタープライズリソースプランニング(ERP)のプログラムを稼働させることができる。
クライアントシステム106は、サーバシステム104および/またはデータベースシステム102にアクセスする1人または複数の個別のユーザによって用いられる。ユーザは、ほんの数例を挙げると、システムから情報を取り出し、新しい情報をシステムに記憶させ、かつ/または、既存の情報を操作することができる。いくつかの実施形態では、クライアントシステム106は、1つまたは複数のパーソナルコンピュータ、ハンドヘルドコンピュータ、スマートフォン、または、任意の他の好適な種類のデバイスを用いて実装される。ユーザは、クライアントシステム106を用いて入力を生成し、その入力によって、示される人物に関する、人物間の関係の表示が要求される。またこの入力は、最終的にはデータベースシステム102で受信される。入力は、例えば、開始エンティティを特定し、ステップの最大数を指定することができる。
クライアントシステム106は、グラフィカルユーザインタフェース(GUI)116を用いて、1つまたは複数の方法で関係分析の結果を提供することができる。すなわち、データベースシステム102が、人物間の関係における表示をまずサーバシステム104に提供し、次にサーバシステム104が、クライアントシステムに対して対応する伝送を行なうことができる。いくつかの実施形態では、クライアントシステム106は、サーバシステム104で実行される1つまたは複数のアプリケーションにおけるデフォルトのGUIを用いる。例えば、いくつかの企業向けのアプリケーション用にSAP AGから提供されているデフォルトのGUIを用いることができる。いくつかの実施形態では、指定されるGUIは、データベースシステム102とのインタフェースをとるために書かれており、特に、人物間の関係を分析するためのアルゴリズムを実行するデータベースクエリを起動するために書かれている。指定されるこのようなGUIは、データベースシステム102から任意の好適な形式で情報を取り出すことができる。例えば、情報は、XMLコードを用いて、かつ/または、(JSONとして知られている)JavaScript(登録商標)オブジェクトノーテイションによって提供することができる。
いくつかの実施形態では、GUI116は、テーブルの形式で結果を提供する。さらに、分析で探し出された人物の名前または他の識別子を示すテーブル118Aが表示されてもよい。
例えば、「reportsTo」関係を介して「Alexey Soshin」に間接的につながっている人物にユーザが関心をもっていると想定されたい。特に、このユーザは、Alexey Soshinから正確に2ステップだけ離れた人物だけに関心をもっており、例えば3ステップ以上離れた人物、したがってAlexey Soshinをあまり知らない可能性のある人物には関心をもっていない。また、分離ステップの最大数につながる照会を制限することによって、多くなりすぎる結果を回避することもできる。リレーショナルデータベース102に対してデータベースクエリが実行されると、テーブル118Aは、次の抜粋部分に示されているような情報を含むことができる。
Figure 2013131218
すなわち、テーブル118Aは、ここでは、それぞれのステップがAlexey Soshinと別の人物との関係を表すステップの結果をリストとして示している。名前の第1列は、ここでは、すべてのステップに対してAlexey Soshinを挙げているが、これは、この開始エンティティがクエリ全体に共通しているためである。いくつかの実施形態では、この情報は表示されないか、または取り出された他の名前と異なるように表示される。
名前の第2列は、ここでは、Alexey Soshinも指定されている「reportsTo」関係が見出された人物を挙げている。特に、クエリが広く表現されている場合には、これは、Alexey Soshinに報告する人物と、Alexey Soshinが報告する人物との両方を含むことになる。他の場合には、これらのカテゴリーのうちの一方だけが含まれる。上記のテーブルは、テーブル118Aの抜粋のみを示しているため、名前の第2列は、ここではそれぞれのエントリーにおいて同じ名前-「Ohad Yassin」-を示しているが、1つまたは複数の他の名前が他のエントリーに現れる場合がある。
名前の第3列は、ここでは、第2列における対応する人物も指定されている「reportsTo」関係が見出された人物を挙げている。同様に、これは、「reportsTo」関係における両方の方向、またはそれらの一方のみを広く含むことができる。
いくつかの実施形態では、GUI116は、1つまたは複数の結果をグラフィカルな形態で提供する。例えば、ソーシャルグラフ(social graph)118Bおよび/またはソーシャルグラフ118Cを表示することができる。ソーシャルグラフは、特定されたエンティティに相当する1つまたは複数のノード120と、特定された関係に相当する1つまたは複数のエッジ(edge)122とを示すことができる。例えば、1つまたは複数のノード120は、対応するエンティティの写真または他の図を提供することができる。
ソーシャルグラフ118Bは、2ステップに限定された関係分析の一部を示す。すなわち、一番左側のノード120は、開始エンティティ(例えば、上の例におけるAlexey Soshin)を表すことができ、真ん中のノードは、指定された関係(例えば、「reportsTo」関係)を開始エンティティに対して有する人物を表すことができ、一番右側のノードは、真ん中の人物に関する特定された関係を表すことができる。
同様に、ソーシャルグラフ118Cは、ノード120をつなぐ特定されたエッジ122の一部またはすべてを表すことができる。いくつかの実施形態では、ソーシャルグラフ118Bにおけるそれぞれのエッジ122は、一方のエンティティから別のエンティティへのパスを表す。例えば、クエリは、多くても2ステップの分離を要するエッジ122の人物だけが表示されるように制限される。
データベースシステム102で用いられるアルゴリズムは、いかなる特定の実装も必要としない。アルゴリズムは、むしろ、リレーショナルデータベースの基本的なデータベースクエリ言語(例えば、SQL)で書かれる。このことは、重要な利点を与え得る。例えば、データが本来はオラクルデータベースで受信され、そこで何らかの関係分析が行なわれる場合、同じアルゴリズムは、同様に、または、代わりに、インストールされたSQLクエリプログラムを有するラップトップコンピュータ上で用いられ、同じデータに対して同じ結果を得ることができる。すなわち、この状況では、すべてのロジックは、例えばサーバまたは他の場所における特別にコード化されたロジックによってではなく、データベースコアによって処理される。このため、分析が異なる状況で行なわれる必要がある場合でも、アルゴリズムを異なる言語で実装する必要はない。さらに、関係のグラフにおけるノード数にかかわらず実行されることになる単一のクエリだけが必要となる。
関係分析は、オンデマンド環境で行なわれてもよい。いくつかの実施形態では、アーキテクチャ100は、限定されないがソーシャルネットワークの検出を含むオンデマンドサービスを提供するために用いられる。例えば、ユーザは、クライアントシステム106を用いて、人物と、人物間のつながりとに関する情報をアップロードすることができる。次に、データベースシステム102は、リレーショナルデータベースのクエリを実行することができる。さらに、結果として得られる人物間関係の表示は、例えば上の例におけるラインに沿ってユーザに提供され得る。
アルゴリズムの一部またはすべては、インメモリ技術を用いて実行されてもよい。例えば、リレーショナルデータベース108がエンティティ間の関係をすでに記憶しており、そのデータベースにおいて1つまたは複数の論理積がとられてもよい。それによって、(場合によっては複数の繰り返しによって)グループを結合した結果のみが出力される。いくつかの実施形態では、SAP AGより入手可能なIn-Memory Computing Engineが必要となり、このエンジンには、例えば一実施形態では、同様にSAP AG製のHANAとして知られているHigh Performance Analytical Applianceが用いられる。
図2A〜図2Bは、人物間の関係を分析および表示するための擬似コード200の例を示す。202では、開始オブジェクトe0における関係r0が見出される。この例では、「reportsTo」関係におけるすべての方向がクエリに含まれている。204では、現在特定されているエンティティに対して関係がレフトジョイン(left join)され、一方206では、現在特定されている関係に対してエンティティがレフトジョインされる。すなわち、擬似コード202の使用においては、ジョイン操作をサポートするリレーショナルデータベースが必要となる。
208では、アルゴリズムがすでに繰り返したすべてのエンティティが除外される。このことは、例えば、2つのエンティティが互いに相互の関係を有する際に問題を回避することができる。
図3は、人物間の関係を分析および表示するための例示的なアルゴリズム300を示す。例えば、このアルゴリズム300は、エンティティ間における2ステップの分離が求められていることを意味するパラメータ=2を擬似コード200(図2)が有する状況に対応している。302では、開始エンティティの「reportsTo」関係が選択される。304では、選択された関係におけるエンティティが選択される。306では、選択されたエンティティにおける関係が選択される。308では、選択された関係におけるエンティティが選択される。この例では、「Alexey Soshin」が開始エンティティである。
図4は、人物間の関係を分析および表示するための例示的な別のアルゴリズム400を示す。このアルゴリズム400におけるいくつかの側面は、アルゴリズム300(図3)のものと類似している。しかし、アルゴリズム400は、402において、特定されたすべての関係に対して「Meni Tito」がターゲットエンティティである必要があることを指定している。したがって、アルゴリズム400は、この例では2ステップの分離を有する関係である、指定された2つのエンティティ間のパスを探し出そうとする。さらに、このアルゴリズムによって、単なる「reportsTo」関係ではない、すべての種類の関係がカバーされる。これは、クエリに対して任意のtype_idを指定することによって404および406で指示される。
図5は、汎用コンピュータシステム500の概略図である。このシステム500は、一実施形態による、先に説明されたコンピュータ実施方法のいずれかに関連して説明された操作のために用いることができる。システム500は、プロセッサ510、メモリ520、記憶デバイス530、および、入力/出力デバイス540を含む。コンポーネント510、520、530、および540のそれぞれは、システムバス550によって相互接続されている。プロセッサ510は、システム500の中で実行するための命令を処理することができる。一実施形態では、プロセッサ510は、シングルスレッドのプロセッサである。別の実施形態では、プロセッサ510は、マルチスレッドのプロセッサである。プロセッサ510は、入力/出力デバイス540におけるユーザインタフェース用のグラフィカル情報を表示するために、メモリ520または記憶デバイス530に記憶された命令を処理することができる。
メモリ520は、システム500の内部で情報を記憶する。いくつかの実施形態では、メモリ520は、コンピュータ可読媒体である。メモリ520は、いくつかの実施形態では揮発性のメモリユニットであり、他の実施形態では不揮発性のメモリユニットである。
記憶デバイス530は、システム500に大容量記憶を提供することができる。一実施形態では、記憶デバイス530はコンピュータ可読媒体である。様々な別の実施形態では、記憶デバイス530は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイスでもよい。
入力/出力デバイス540は、システム500に入力/出力動作を提供する。一実施形態では、入力/出力デバイス540は、キーボードおよび/またはポインティングデバイスを含む。別の実施形態では、入力/出力デバイス540は、グラフィカルユーザインタフェースを表示するためのディスプレイユニットを含む。
説明された特徴は、デジタル電子回路で実装されてもよく、または、コンピュータのハードウェア、ファームウェア、ソフトウェア、もしくはそれらの組み合わせで実装されてもよい。装置は、プログラマブルプロセッサによる実行のために機械可読記憶デバイスなどの情報担体(information carrier)の中で実体的に具体化されたコンピュータプログラム製品によって実現することができ、方法ステップは、命令からなるプログラムを実行するプログラマブルプロセッサによって実行され、入力データを操作して出力を生成することによって、説明された実施形態における機能を実施することができる。説明された機能は、データ記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータと命令を受信し、またそれらにデータと命令を送信するために接続された少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行可能な1つまたは複数のコンピュータプログラムにおいて有利に実現され得る。コンピュータプログラムは、コンピュータで直接的または間接的に用いられて特定の動作を行なうか、または特定の結果をもたらすことができる一組の命令である。コンピュータプログラムは、コンパイラ型言語またはインタープリタ型言語を含む、任意の形態のプログラム言語で書かれていてもよく、スタンドアローンプログラムもしくはモジュール、コンポーネント、サブルーチン、または、コンピューティング環境で用いるのに適した他のユニットを含む、任意の形態で導入することができる。
命令からなるプログラムを実行するのに好適なプロセッサには、例として、汎用マイクロプロセッサおよび特殊用途マイクロプロセッサの両方と、単一プロセッサ、または、任意の種類のコンピュータにおける複数のプロセッサのうちの1つとが含まれる。プロセッサは、一般に、読み出し専用メモリ、またはランダムアクセスメモリ、またはその両方から命令とデータを受信することになる。コンピュータの基本素子は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリとである。また、コンピュータは、一般に、データファイルを記憶するための1つまたは複数の大容量記憶デバイスを含むか、またはそれらと通信するために動作可能に接続されることになる。このようなデバイスには、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、および光学ディスクが含まれる。コンピュータプログラムの命令とデータを実体的に具体化するのに適した記憶デバイスには、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイスを例として含む不揮発性メモリと、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスクと、光磁気ディスクと、CD-ROMおよびDVD-ROMディスクとからなるすべての形態が含まれる。プロセッサおよびメモリは、ASIC(特定用途向け集積回路)で補われてもよく、またはASICの中に組み込まれていてもよい。
ユーザとの対話を可能とするために、特徴は、ユーザに情報を表示するためのCRT(ブラウン管)またはLCD(液晶ディスプレイ)などのディスプレイデバイスと、キーボードと、ユーザがコンピュータに入力を与えることができる、マウスまたはトラックボールなどのポインティングデバイスとを有するコンピュータによって実現することができる。
特徴は、データサーバなどのバックエンドコンポーネントを含むコンピュータシステム、または、アプリケーションサーバもしくはインターネットサーバなどのミドルウェアコンポーネントを含むコンピュータシステム、または、グラフィカルユーザインタフェースもしくはインターネットブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネントを含むコンピュータシステム、または、それらの任意の組み合わせで実現することができる。システムにおけるコンポーネントは、任意の形態を介して、または、通信ネットワークなどのデジタルデータ通信の媒体を介して接続することができる。通信ネットワークの例には、例えばLANと、WANと、コンピュータおよびネットワークが形成するインターネットとが含まれる。
コンピュータシステムは、クライアントとサーバを含むことができる。クライアントとサーバは、一般には互いに遠くに離れており、通常は、説明されたいずれかのネットワークを介して相互に動作する。クライアントとサーバの関係は、それぞれのコンピュータ上で動作する、互いにクライアント-サーバの関係を有するコンピュータプログラムによって生まれる。
複数の実施形態が説明された。しかし、本開示の趣旨と範囲から逸脱することなく様々な変更がなされ得ることが理解されるであろう。したがって、他の実施形態は、添付の特許請求の範囲に含まれる。
100 例示的なアーキテクチャ
102 データベースシステム
104 サーバシステム
106 クライアントシステム
108 リレーショナルデータベース
110 クエリエンジン
112 関係テーブル
114 エンティティテーブル
116 グラフィカルユーザインタフェース
118A テーブル
118B,118C ソーシャルグラフ
120 ノード
122 エッジ

Claims (20)

  1. コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、
    リレーショナルデータベースにおいて前記ユーザ入力に基づき、前記人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、前記リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、
    前記ユーザ入力に応じた人物間の関係の表示を行なうステップであって、前記表示が、前記リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップと
    を含む、人物間の関係を分析および表示するためのコンピュータ実施方法。
  2. 前記リレーショナルデータベースのクエリが、
    少なくとも1つの列における人物を指定する任意の関係における第1のジョインと、
    前記第1のジョインにおける関係で指定された任意の人物における第2のジョインと、
    前記第2のジョインにおける人物のいずれかを指定する関係における、少なくとも第1のレフトジョインと、
    前記第1のレフトジョインにおける関係で指定された任意の人物における少なくとも第2のレフトジョインと
    を含み、
    前記リレーショナルデータベースのクエリが、最大数のステップが達せられるまでレフトジョインを実行し続ける、請求項1に記載のコンピュータ実施方法。
  3. 前記リレーショナルデータベースのクエリが、関係テーブルを含むリレーショナルデータベースに対して実行され、前記関係テーブルが、それぞれの関係に対して、関係のソースのための第1の列と、関係のターゲットのための第2の列とを含み、前記リレーショナルデータベースのクエリが、前記第1の列が人物を示し、さらに前記第2の列が人物を示す場合に関係を選択する、請求項2に記載のコンピュータ実施方法。
  4. 前記ユーザ入力が、別の人物を特定し、また、前記特定された別の人物を含む、人物に関する人物間の関係に属する人物を探し出す、請求項2に記載のコンピュータ実施方法。
  5. 前記リレーショナルデータベースのクエリが、人物およびつながりに関する情報をユーザがアップロードするオンデマンドシステムにおいて実行され、前記オンデマンドシステムが、ユーザ入力を受信した後に、人物間の関係の表示をユーザに対して行なう、請求項1に記載のコンピュータ実施方法。
  6. 前記ユーザ入力が、ステップの最大数を指定する、請求項1に記載のコンピュータ実施方法。
  7. 人物間の関係の表示として、ソーシャルグラフを生成するステップをさらに含む、請求項1に記載のコンピュータ実施方法。
  8. コンピュータ可読記憶媒体に実体的に具体化されており、人物間の関係を分析および表示するための方法を、プロセッサによって実行される場合に実行する命令を含むコンピュータプログラムであって、
    前記方法が、
    コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、
    リレーショナルデータベースにおいて前記ユーザ入力に基づき、前記人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、前記リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、
    前記ユーザ入力に応じた人物間の関係の表示を行なうステップであって、前記表示が、前記リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップと
    を含む、コンピュータプログラム。
  9. 前記リレーショナルデータベースのクエリが、
    少なくとも1つの列における人物を指定する任意の関係における第1のジョインと、
    前記第1のジョインにおける関係で指定された任意の人物における第2のジョインと、
    前記第2のジョインにおける人物のいずれかを指定する関係における、少なくとも第1のレフトジョインと、
    前記第1のレフトジョインにおける関係で指定された任意の人物における、少なくとも第2のレフトジョインと
    を含み、
    前記リレーショナルデータベースのクエリが、最大数のステップが達せられるまでレフトジョインを実行し続ける、請求項8に記載のコンピュータプログラム。
  10. 前記リレーショナルデータベースのクエリが、関係テーブルを含むリレーショナルデータベースに対して実行され、前記関係テーブルが、それぞれの関係に対して、関係のソースのための第1の列と、関係のターゲットのための第2の列とを含み、前記リレーショナルデータベースのクエリが、前記第1の列が人物を示し、さらに前記第2の列が人物を示す場合に関係を選択する、請求項9に記載のコンピュータプログラム。
  11. 前記ユーザ入力が、別の人物を特定し、また、前記特定された別の人物を含む、人物に関する人物間の関係に属する人物を探し出す、請求項9に記載のコンピュータプログラム。
  12. 前記リレーショナルデータベースのクエリが、人物およびつながりに関する情報をユーザがアップロードするオンデマンドシステムにおいて実行され、前記オンデマンドシステムが、ユーザ入力を受信した後に、人物間の関係の表示をユーザに対して行なう、請求項8に記載のコンピュータプログラム。
  13. 前記ユーザ入力が、ステップの最大数を指定する、請求項8に記載のコンピュータプログラム。
  14. 人物間の関係の表示として、ソーシャルグラフを生成するステップをさらに含む、請求項8に記載のコンピュータプログラム。
  15. 1つまたは複数のプロセッサと、
    コンピュータ可読記憶媒体に実体的に具体化されており、人物間の関係を分析および表示するための方法を、プロセッサによって実行される場合に実行する命令を含むコンピュータプログラムと
    を含むシステムであって、
    前記方法が、
    コンピュータシステムにおいて、ある人物に関する人物間の関係の表示を要求するユーザ入力を受信するステップと、
    リレーショナルデータベースにおいて前記ユーザ入力に基づき、前記人物を含む関係を選択し、選択された関係のいずれかに含まれる他の人物を選択するリレーショナルデータベースのクエリを実行するステップであって、前記リレーショナルデータベースのクエリが、ステップの最大数まで、選択される他の人物のそれぞれに対して実行される、ステップと、
    前記ユーザ入力に応じた人物間の関係の表示を行なうステップであって、前記表示が、前記リレーショナルデータベースのクエリによって選択された人物を少なくとも示す、ステップと
    を含む、システム。
  16. 前記リレーショナルデータベースのクエリが、
    少なくとも1つの列における人物を指定する任意の関係における第1のジョインと、
    前記第1のジョインにおける関係で指定された任意の人物における第2のジョインと、
    前記第2のジョインにおける人物のいずれかを指定する関係における、少なくとも第1のレフトジョインと、
    前記第1のレフトジョインにおける関係で指定された任意の人物における、少なくとも第2のレフトジョインと
    を含み、
    前記リレーショナルデータベースのクエリが、最大数のステップが達せられるまでレフトジョインを実行し続ける、請求項15に記載のシステム。
  17. 前記リレーショナルデータベースのクエリが、関係テーブルを含むリレーショナルデータベースに対して実行され、前記関係テーブルが、それぞれの関係に対して、関係のソースのための第1の列と、関係のターゲットのための第2の列とを含み、前記リレーショナルデータベースのクエリが、前記第1の列が人物を示し、さらに前記第2の列が人物を示す場合に関係を選択する、請求項16に記載のシステム。
  18. 前記ユーザ入力が、別の人物を特定し、また、前記特定された別の人物を含む、人物に関する人物間の関係に属する人物を探し出す、請求項16に記載のシステム。
  19. 前記リレーショナルデータベースのクエリが、人物およびつながりに関する情報をユーザがアップロードするオンデマンドシステムにおいて実行され、前記オンデマンドシステムが、ユーザ入力を受信した後に、人物間の関係の表示をユーザに対して行なう、請求項15に記載のシステム。
  20. 前記方法が、人物間の関係の表示として、ソーシャルグラフを生成するステップをさらに含む、請求項15に記載のシステム。
JP2012274420A 2011-12-20 2012-12-17 人物間の関係の分析および表示 Pending JP2013131218A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/331,703 US8943042B2 (en) 2011-12-20 2011-12-20 Analyzing and representing interpersonal relations
US13/331,703 2011-12-20

Publications (1)

Publication Number Publication Date
JP2013131218A true JP2013131218A (ja) 2013-07-04

Family

ID=47594205

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012274420A Pending JP2013131218A (ja) 2011-12-20 2012-12-17 人物間の関係の分析および表示

Country Status (4)

Country Link
US (1) US8943042B2 (ja)
EP (1) EP2608128A1 (ja)
JP (1) JP2013131218A (ja)
CN (1) CN103177066B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10417263B2 (en) * 2011-06-03 2019-09-17 Robert Mack Method and apparatus for implementing a set of integrated data systems
CN104050239B (zh) * 2014-05-27 2017-04-12 重庆爱思网安信息技术有限公司 多个对象之间的相关性匹配分析方法
CN104239423B (zh) * 2014-08-22 2017-12-26 北京盛世光明软件股份有限公司 一种人脉关系距离获取方法及系统
US9652220B2 (en) 2015-05-11 2017-05-16 Sap Portals Israel Ltd. Zero down-time deployment of new application versions
US9378303B1 (en) * 2015-09-18 2016-06-28 Linkedin Corporation Representing compound relationships in a graph database
CN106383879A (zh) * 2016-09-13 2017-02-08 深圳市华傲数据技术有限公司 政务数据的处理方法及系统
CN108197903A (zh) * 2018-02-02 2018-06-22 金蝶软件(中国)有限公司 一种企业中的关系信息处理方法及装置
CN109584094B (zh) * 2018-11-23 2021-09-03 中国运载火箭技术研究院 一种人际路径快速定位系统、方法及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030217069A1 (en) * 2002-05-10 2003-11-20 International Business Machines Corporation Method for schema mapping and data transformation
US20050075917A1 (en) * 2003-10-07 2005-04-07 International Business Machines Corporation Relationship management system
JP2005521953A (ja) * 2002-03-28 2005-07-21 ライオン バイオサイエンス アクチェンゲゼルシャフト リレーショナルデータベースをクエリーする方法および装置
JP2007282226A (ja) * 2006-03-31 2007-10-25 Ntt Docomo Inc クエリを配布する方法および装置
US20100153471A1 (en) * 2008-12-15 2010-06-17 Microsoft Corporation Creating ad hoc relationships between entities
JP2011108042A (ja) * 2009-11-18 2011-06-02 Ricoh Co Ltd 人脈検索装置、人脈検索方法、及び人脈検索プログラム
CN102087655A (zh) * 2009-12-08 2011-06-08 张玉峰 一种能体现人际关系网的网站系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701460A (en) * 1996-05-23 1997-12-23 Microsoft Corporation Intelligent joining system for a relational database
US7039639B2 (en) * 1999-03-31 2006-05-02 International Business Machines Corporation Optimization of system performance based on communication relationship
US7016910B2 (en) * 1999-12-30 2006-03-21 Decode Genetics Ehf. Indexing, rewriting and efficient querying of relations referencing semistructured data
US20030187813A1 (en) * 2002-03-26 2003-10-02 Goldman Neal D. System and method for identifying relationship paths to a target entity
WO2004084028A2 (en) * 2003-03-14 2004-09-30 Goldman, Sachs & Co. Link analysis mapping program risk management
US7426522B2 (en) * 2003-09-23 2008-09-16 International Business Machines Corporation Object oriented query path expression to relational outer join translator method, system, article of manufacture, and computer program product
US7979384B2 (en) * 2003-11-06 2011-07-12 Oracle International Corporation Analytic enhancements to model clause in structured query language (SQL)
US8135691B2 (en) * 2004-10-08 2012-03-13 International Business Machines Corporation Determining database relationships through query monitoring
US8671091B2 (en) * 2006-08-02 2014-03-11 Hewlett-Packard Development Company, L.P. Optimizing snowflake schema queries
CN101286905A (zh) * 2007-04-12 2008-10-15 深圳华飚科技有限公司 社会网络在线展示服务系统
US20090228830A1 (en) * 2008-02-20 2009-09-10 Herz J C System and Method for Data Analysis and Presentation
WO2009116049A2 (en) * 2008-03-20 2009-09-24 Vizi Labs Relationship mapping employing multi-dimensional context including facial recognition
US20110022581A1 (en) * 2009-07-27 2011-01-27 Rama Krishna Korlapati Derived statistics for query optimization
CN102043820A (zh) * 2009-10-26 2011-05-04 鸿富锦精密工业(深圳)有限公司 人脉关系分析系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005521953A (ja) * 2002-03-28 2005-07-21 ライオン バイオサイエンス アクチェンゲゼルシャフト リレーショナルデータベースをクエリーする方法および装置
US20030217069A1 (en) * 2002-05-10 2003-11-20 International Business Machines Corporation Method for schema mapping and data transformation
US20050075917A1 (en) * 2003-10-07 2005-04-07 International Business Machines Corporation Relationship management system
JP2007282226A (ja) * 2006-03-31 2007-10-25 Ntt Docomo Inc クエリを配布する方法および装置
US20100153471A1 (en) * 2008-12-15 2010-06-17 Microsoft Corporation Creating ad hoc relationships between entities
JP2011108042A (ja) * 2009-11-18 2011-06-02 Ricoh Co Ltd 人脈検索装置、人脈検索方法、及び人脈検索プログラム
CN102087655A (zh) * 2009-12-08 2011-06-08 张玉峰 一种能体现人际关系网的网站系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
渡辺 俊史: "使って覚えるデータベースの常識", 日経ソフトウエア, vol. 第11巻 第6号, JPN6016007947, 24 April 2008 (2008-04-24), JP, pages p.158−165 *

Also Published As

Publication number Publication date
US20130159280A1 (en) 2013-06-20
EP2608128A1 (en) 2013-06-26
CN103177066A (zh) 2013-06-26
US8943042B2 (en) 2015-01-27
CN103177066B (zh) 2018-01-02

Similar Documents

Publication Publication Date Title
US11269476B2 (en) Concurrent display of search results from differing time-based search queries executed across event data
US11269875B2 (en) System and method of data wrangling
JP2013131218A (ja) 人物間の関係の分析および表示
US20140330821A1 (en) Recommending context based actions for data visualizations
JP6434154B2 (ja) トランザクションアクセスパターンに基づいた結合関係の識別
US11544246B2 (en) Partition level operation with concurrent activities
US10599654B2 (en) Method and system for determining unique events from a stream of events
CN111046237A (zh) 用户行为数据处理方法、装置、电子设备及可读介质
US10795894B2 (en) Hybrid facet counting using different sampling rates
US20150379112A1 (en) Creating an on-line job function ontology
US9792355B2 (en) Searches for similar documents
US20160092506A1 (en) Generating suggested structured queries
US20230153300A1 (en) Building cross table index in relational database
US20140136274A1 (en) Providing multiple level process intelligence and the ability to transition between levels
US20150170067A1 (en) Determining analysis recommendations based on data analysis context
US10394761B1 (en) Systems and methods for analyzing and storing network relationships
US20170161359A1 (en) Pattern-driven data generator
US11829380B2 (en) Ontological mapping of data
Nagireddy Job recommendation system with NoSQL databases: Neo4j, MongoDB, DynamoDB, Cassandra and their critical comparison
US20200293530A1 (en) Data schema discovery with query optimization

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150417

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160912

A603 Late request for extension of time limit during examination

Free format text: JAPANESE INTERMEDIATE CODE: A603

Effective date: 20161216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170515