JP2016081494A - 分散コンピューティング環境におけるグラフデータの振り分け方法及び装置 - Google Patents
分散コンピューティング環境におけるグラフデータの振り分け方法及び装置 Download PDFInfo
- Publication number
- JP2016081494A JP2016081494A JP2014254498A JP2014254498A JP2016081494A JP 2016081494 A JP2016081494 A JP 2016081494A JP 2014254498 A JP2014254498 A JP 2014254498A JP 2014254498 A JP2014254498 A JP 2014254498A JP 2016081494 A JP2016081494 A JP 2016081494A
- Authority
- JP
- Japan
- Prior art keywords
- graph data
- partition
- vertex
- computing environment
- distributed computing
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】分散コンピューティング環境におけるグラフデータの振り分け方法及び装置を提供すること。
【解決手段】(a)グラフデータから共通部分グラフを探索するステップと、(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にはグラフデータを整列してパーティションを生成するステップと、(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法。
【選択図】図2
【解決手段】(a)グラフデータから共通部分グラフを探索するステップと、(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にはグラフデータを整列してパーティションを生成するステップと、(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法。
【選択図】図2
Description
本発明は、分散コンピューティング環境におけるグラフデータの振り分け方法及び装置に係り、さらに詳しくは、グラフデータにおける共通部分グラフ(Common Sub−Graph)の存否に応じて共通部分グラフまたは頂点を基準としてパーティションを生成し、各頂点別に処理費用が最小となるパーティションに当該グラフデータを振り分ける分散コンピューティング環境におけるグラフデータの振り分け方法及び装置に関する。
最近のインターネットの発展には目を見張るものがあり、これに伴い、ネチズンにより一日につき数多くのデータが生成されて流通されており、最近、多くの企業、特に、検索エンジン会社とウェブポータルとの間で、このような膨大な量のデータをできる限り多く収集及び蓄積し、収集されたデータのうちできる限り早く意味のある情報を抽出することが企業の競争力になっている。
この理由から、多くの企業は、安価に大規模のクラスターを構築して、大容量の分散管理及び作業分散並列処理技術に取り組んでいる。
すなわち、既存のシングルマシンシステムにおいて処理し難い大容量データの価値に目が向けられ、これを処理するための代案として、分散並列基盤のシステムが様々な分野に取り込まれて活用されている。
一方、大容量のグラフデータを分散コンピューティング環境において処理するためにハッシング方法を利用している。
しかしながら、ハッシング方法は、グラフ構造を考慮せずにデータを振り分け、且つ、異なるサーバーに分散されているデータを検索するためのネットワーク費用が発生するため、グラフデータの分散コンピューティング性能に限界を示している。
本発明の目的は、分散コンピューティング環境において大容量のグラフデータを各サーバーに均等に振り分けることのできる分散コンピューティング環境におけるグラフデータの振り分け方法及び装置を提供するところにある。
本発明の他の目的は、グラフデータの処理費用を予測し、その予測された処理費用に基づいてグラフデータを振り分ける分散コンピューティング環境におけるグラフデータの振り分け方法及び装置を提供するところにある。
上述した目的を達成するために、本発明の一側面によれば、(a)グラフデータから共通部分グラフを探索するステップと、(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にはグラフデータを整列してパーティションを生成するステップと、(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法が提供される。
好ましくは、前記グラフデータは、頂点で表わされるノードと他のノードとが方向性を有するように、または、方向性を有さないように結ぶ幹線であるエッジからなるデータである。
また、好ましくは、前記ステップ(a)は、前記グラフデータの各ノード別の隣接ノードの数及びIDに基づいて共通部分グラフを探索する。
さらに、好ましくは、前記ステップ(b)は、共通部分グラフが存在する場合にその部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合に各ノードを隣接ノード数が多い順に整列し、前記整列されたノードのうち上位ランキングに相当するノードを頂点として選択し、前記選択された頂点を基準としてパーティションを生成する。
さらに、好ましくは、前記ステップ(c)は、各頂点別に、共通部分グラフまたは頂点までの最小ホップの数(H)、頂点の計算関数時間複雑度(T)及び同一ではないパーティションに格納された頂点の隣の隣接頂点の数(M)を計算するステップと、前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用して前記グラフデータの処理費用を計算するステップと、前記計算された処理費用が最小となるパーティションを探索するステップと、前記探索されたパーティションに当該グラフデータを割り当てるステップと、を含む。
さらに、好ましくは、各頂点の隣の隣接頂点が既に割り当てられた頂点である場合、前記計算された処理費用に連結長さ(P)を適用して処理費用を再計算する。
上述した目的を達成するために、本発明の他の側面によれば、(a)グラフデータから共通部分グラフを探索するステップと、(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にグラフデータを整列してパーティションを生成するステップと、(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法を実行するためのプログラムが書き込まれたコンピュータにて読み取り可能な記録媒体が提供される。
上述した目的を達成するために、本発明のさらに他の側面によれば、グラフデータから共通部分グラフを探索する共通部分グラフ探索部と、前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にグラフデータを整列してパーティションを生成するパーティション生成部と、前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるデータ振り分け部と、を備えることを特徴とする分散コンピューティング環境におけるグラフデータの振り分け装置が提供される。
好ましくは、前記共通部分グラフ探索部は、前記グラフデータの各ノード別の隣接ノードの数及びIDに基づいて共通部分グラフを探索する。
また、好ましくは、前記パーティション生成部は、共通部分グラフが存在する場合にその部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合に各ノードを隣接ノード数が多い順に整列し、前記整列されたノードのうち上位ランキングに相当するノードを頂点として選択し、前記選択された頂点を基準としてパーティションを生成する。
さらに、好ましくは、前記データ振り分け部は、各頂点別に、共通部分グラフまたは頂点までの最小ホップの数(H)、頂点の計算関数時間複雑度(T)、同一ではないパーティションに格納された頂点の隣の隣接頂点の数(M)を計算し、前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用して前記グラフデータの処理費用を計算し、前記計算された処理費用が最小となるパーティションを探索し、前記探索されたパーティションに当該グラフデータを割り当てる。
さらに、好ましくは、前記データ振り分け部は、各頂点の隣の隣接頂点が既に割り当てられた頂点である場合、前記計算された処理費用に連結長さ(P)を適用して処理費用を再計算する。
本発明によれば、グラフデータの処理費用を予測し、その予測された処理費用に基づいてグラフデータを振り分けることにより、グラフデータの処理費用を削減することができ、分散グラフデータの処理性能を高度化させることができる他、ビックデータ分析システムの要素技術として活用することができる。
また、共通部分グラフまたは位相の高い基準頂点を中心として連結性を考慮してグラフデータを振り分けるので、地域的な計算量を低減することができ、しかも、データの処理性能を高度化させることができる。
以下、添付図面に基づき、本発明に係る「分散コンピューティング環境におけるグラフデータの振り分け方法及び装置」について詳細に説明する。ここで説明する実施形態は、本発明の技術的思想を当業者に容易に理解させるために提供されるものであり、これらにより本発明が限定されることはない。なお、添付図面に示す事項は、本発明の実施形態を容易に説明するために図式化したものであり、実際に実現される形態とは異なる場合がある。
一方、後述する各構成要素は、本発明を実現するための例に過ぎない。このため、本発明の他の実現に際しては、本発明の思想及び範囲を逸脱しない範囲内において他の構成要素が使用可能である。また、各構成要素は、単にハードウェアまたはソフトウェアの構成のみにより実現されてもよいが、同じ機能を行う様々なハードウェア及びソフトウェアの構成の組み合わせにより実現されてもよい。なお、一つのハードウェアまたはソフトウェアにより2以上の構成要素が一緒に実現されてもよい。
これらに加えて、ある構成要素を「備える」という表現は、「開放型」の表現であり、単に当該構成要素が存在することを示すだけであり、さらなる構成要素を排除するものと理解されてはならない。
本発明におけるグラフデータとは、頂点で表わされるノードと他のノードとが方向性を有するように、または、方向性を有さないように結ぶ幹線であるエッジからなるデータのことを言う。
図1は、本発明の実施形態による分散コンピューティング環境におけるグラフデータの振り分け装置を概略的に示すブロック図である。
図1を参照すると、分散コンピューティング環境におけるグラフデータの振り分け装置100は、共通部分グラフ探索部110と、パーティション生成部120と、データ振り分け部130とを備える。
共通部分グラフ探索部110は、グラフデータから共通部分グラフを探索する。すなわち、共通部分グラフ探索部110は、グラフデータのノードごとに有している隣接ノードの数及びIDを把握して、グラフデータの振り分けの基準となる共通部分グラフを探索する。例えば、共通部分グラフ探索部110は、グラフデータから隣接ノードの数が同じサブグラフを共通部分グラフとして探索する。共通部分グラフは、全体のグラフデータからグラフの構造が同じサブグラフを探索してこれらを併合したものであり、このためには、対象となるサブグラフの各頂点における隣接ノードの数が同じである必要があるため、共通部分グラフ探索部110は、隣接ノードの数が同じサブグラフを共通部分グラフとして探索する。そして、共通部分グラフ探索部110は、データがパーティションに割り当てられるとき、パーティションに格納されるノードを判別するために、または、併合された共通部分グラフの隣の隣接頂点であるかを把握するために、ノードIDを把握する。ここで、共通部分グラフは、再活用可能なグラフである。
パーティション生成部120は、共通部分グラフの存否に応じて共通部分グラフまたは頂点を基準としてパーティションを生成する。
パーティション生成部120は、共通部分グラフが存在する場合にその共通部分グラフを併合して一つのパーティションを生成する。もし、共通部分グラフが存在しなければ、パーティション生成部120は各ノードを隣接ノード数が多い順に整列し、整列されたノードのうち上位ランキングに相当するノードの頂点を基準頂点として選択し、前記選択された基準頂点を基準としてパーティションを生成する。このとき、基準頂点を基準としてパーティションを生成する理由は、データ振り分け部130においてデータを振り分けようとするとき、基準頂点と隣り合う頂点が振り分けられると、これを同じパーティションに格納するためである。
データ振り分け部130は、グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てる。このとき、データ振り分け部130は、各頂点別に処理費用が最小となるパーティションに当該グラフデータを振り分ける。
以下、データ振り分け部130がパーティションを割り当てる方法についてより詳細に説明する。
データ振り分け部130は、各頂点別に、共通部分グラフまたは頂点までの最小ホップの数(H)、頂点の計算関数時間複雑度(T)及び同一ではないパーティションに格納された頂点の隣の隣接頂点の数(M)を計算し、前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用してグラフデータの処理費用を計算する。
このとき、データ振り分け部130は、下記の数式1を用いて、計算関数時間複雑度を計算する。
ここで、O(v)は、各頂点の計算費用であり、データの長さに応じて予め定められた値である。O(pi)は、サーバーに割り当てられたデータの計算費用であり、所定の値である。
データ振り分け部130は、下記の数式2を用いて、隣の隣接頂点の数Mを計算する。
ここで、gはネットワーク通信の遅延時間を示し、Cadjは現在の頂点の隣の隣接頂点のうち他のパーティションに格納される頂点の数を示し、Cpiはpiパーティションにこれまで格納された頂点の隣の隣接頂点のうち他のパーティションに格納される頂点の総数を示す。
データ振り分け部130は、最小ホップの数、計算関数時間複雑度及び隣接頂点の数が求められると、下記の数式3を用いて、当該グラフデータの処理費用を計算する。
ここで、w1、w2、w3は、重み付け値である。
上記の数式3を用いて処理費用を計算した後には、データ振り分け部130は、計算された処理費用が最小となるパーティションを探索する。このとき、頂点の隣の隣接頂点が既に割り当てられた頂点である場合、データ振り分け部130は、計算された処理費用に連結長さPを適用して処理費用を再計算する。ここで、連結長さPは、現在パーティションに格納する頂点Niがグラフデータ上において他の頂点を経て再び出発の頂点Niに戻るまでに経由した頂点の数を意味する。このため、自分に戻る経路がある場合(すなわち、連結長さPが存在する場合)、各サーバー間のネットワーク通信費用がかかり、これによりグラフデータの処理費用が高くなるため、データ振り分け部130は、既に計算された処理費用に連結長さPを適用して処理費用を再計算する。
次いで、データ振り分け部130は、処理費用が最小となるパーティションに当該グラフデータを振り分ける。
一方、共通部分グラフ探索部110、パーティション生成部120及びデータ振り分け部130のそれぞれは、コンピューティング装置上においてプログラムを起動するために必要とされるプロセッサーなどによりそれぞれ実現される。このように、共通部分グラフ探索部110、パーティション生成部120及びデータ振り分け部130は、物理的に独立したそれぞれの構成要素により実現され、一つのプロセッサー内において機能的に区別できるように実現される。
分散コンピューティング環境におけるグラフデータの振り分け装置100が備えるこれらの構成要素は、ハードウェア、ソフトウェアまたはこれらの組み合わせにより実現され、一つのハードウェアまたはソフトウェアにより2以上の構成要素が同時に実現される。
このような分散コンピューティング環境におけるグラフデータの振り分け装置100は、様々な通信規格を用いて他の電子装置と通信を行い、且つ、様々なデータ処理演算を行う電子装置により実現される。例えば、分散コンピューティング環境におけるグラフデータの振り分け装置100はサーバー装置として実現され、このようなサーバー装置に加えて、様々な電子装置として実現される。なお、分散コンピューティング環境におけるグラフデータの振り分け装置100は、単一の電子装置として実現されてもよく、2以上の電子装置が組み合わせられた装置として実現されてもよい。
図2は、本発明の実施形態による分散コンピューティング環境におけるグラフデータの振り分け方法を示す図であり、図3は、本発明の実施形態によるグラフデータの例示図であり、図4は、図3に示すグラフデータを振り分けた例示図である。
図2を参照すると、分散コンピューティング環境におけるグラフデータの振り分け装置100は、グラフデータから共通部分グラフを探索し(ステップS202)、共通部分グラフが存在するか否かを判断する(ステップS204)。すなわち、分散コンピューティング環境におけるグラフデータの振り分け装置100は、グラフデータのノードごとに有している隣接ノードの数及びIDを把握して、グラフデータの振り分けの基準となる共通部分グラフを探索する。
ステップS204における判断の結果、共通部分グラフが存在すれば、分散コンピューティング環境におけるグラフデータの振り分け装置100は、その共通部分グラフを併合する(ステップS206)。
もし、ステップS204における判断の結果、共通部分グラフが存在しなければ、分散コンピューティング環境におけるグラフデータの振り分け装置100は、ノードの位相を基準としてノードを整列して頂点を選択する(ステップS208)。すなわち、分散コンピューティング環境におけるグラフデータの振り分け装置100は、各ノードの隣接ノード数が多い順にノードを整列し、隣接ノード数が最も多い頂点を選択する。
次いで、分散コンピューティング環境におけるグラフデータの振り分け装置100は、共通部分グラフまたは前記選択された頂点別にグループ化してパーティションを生成する(ステップS210)。
次いで、分散コンピューティング環境におけるグラフデータの振り分け装置100は、各頂点別に共通部分グラフまたは頂点までの最小ホップの数H、頂点の計算関数時間複雑度T及び同一ではないパーティションに格納された頂点の隣の隣接頂点の数Mを計算し(ステップS212)、前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用して処理費用が最小となるパーティションを探索する(ステップS214)。
分散コンピューティング環境におけるグラフデータの振り分け装置100は、探索されたパーティションに当該グラフデータを振り分ける(ステップS216)。分散コンピューティング環境におけるグラフデータの振り分け装置100がグラフデータを振り分ける方法について、図3及び図4に基づいて説明する。
図3に示すグラフデータの場合、分散コンピューティング環境におけるグラフデータの振り分け装置100は、グラフデータを検索してAのような共通部分グラフを検索する。分散コンピューティング環境におけるグラフデータの振り分け装置100は、Aの共通部分グラフを併合して図4に示すように一つのパーティションP1を生成する。
共通部分グラフではないノードの場合、分散コンピューティング環境におけるグラフデータの振り分け装置100は、各ノードの隣接ノード数が多い順にノードを整列し、隣接ノード数が最も多い頂点を選択し、その選択された頂点をグループ化してパーティションP2を生成する。
一方、上述した本発明に係る分散コンピューティング環境におけるグラフデータの振り分け方法は、これを起動するためのプログラム、アプリケーション、システムファイルにより実現され、本発明は、このようなプログラムなどが書き込まれたコンピュータにて読み取り可能な記録媒体として実現される。
このような分散コンピューティング環境におけるグラフデータの振り分け方法はプログラムとして作成可能であり、プログラムを構成するコード及びコードセグメントは当該分野におけるプログラマーにより容易に推論可能である。なお、分散コンピューティング環境におけるグラフデータの振り分け方法に関するプログラムは電子装置にて読み取り可能な情報記録媒体に格納され、電子装置により読み取られて起動される。
このように、本発明が属する技術分野における当業者は、本発明がその技術的思想や必須的特徴を変更することなく他の具体的な形態として実施可能であるということが理解できる筈である。よって、上述した実施形態はあらゆる面において例示的なものであり、限定的なものではないと理解されるべきである。本発明の範囲は前記詳細な説明よりは後述する特許請求の範囲によって開示され、特許請求の範囲の意味及び範囲並びにその等価概念から導き出されるあらゆる変更または変形された形態が本発明の範囲に含まれるものと解釈されるべきである。
110:共通部分グラフ探索部
120:パーティション生成部
130:データ振り分け部
120:パーティション生成部
130:データ振り分け部
Claims (12)
- (a)グラフデータから共通部分グラフを探索するステップと、
(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にはグラフデータを整列してパーティションを生成するステップと、
(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、
を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法。 - 前記グラフデータは、頂点で表わされるノードと他のノードとが方向性を有するように、または、方向性を有さないように結ぶ幹線であるエッジからなるデータであることを特徴とする請求項1に記載の分散コンピューティング環境におけるグラフデータの振り分け方法。
- 前記ステップ(a)は、
前記グラフデータの各ノード別の隣接ノードの数及びIDに基づいて共通部分グラフを探索することを特徴とする請求項1に記載の分散コンピューティング環境におけるグラフデータの振り分け方法。 - 前記ステップ(b)は、
共通部分グラフが存在する場合にその部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合に各ノードを隣接ノード数が多い順に整列し、前記整列されたノードのうち上位ランキングに相当するノードを頂点として選択し、前記選択された頂点を基準としてパーティションを生成することを特徴とする請求項1に記載の分散コンピューティング環境におけるグラフデータの振り分け方法。 - 前記ステップ(c)は、
各頂点別に、共通部分グラフまたは頂点までの最小ホップの数(H)、頂点の計算関数時間複雑度(T)及び同一ではないパーティションに格納された頂点の隣の隣接頂点の数(M)を計算するステップと、
前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用して前記グラフデータの処理費用を計算するステップと、
前記計算された処理費用が最小となるパーティションを探索するステップと、
前記探索されたパーティションに当該グラフデータを割り当てるステップと、
を含むことを特徴とする請求項1に記載の分散コンピューティング環境におけるグラフデータの振り分け方法。 - 各頂点の隣の隣接頂点が既に割り当てられた頂点である場合、前記計算された処理費用に連結長さ(P)を適用して処理費用を再計算することを特徴とする分散コンピューティング環境における請求項5に記載のグラフデータの振り分け方法。
- (a)グラフデータから共通部分グラフを探索するステップと、
(b)前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にグラフデータを整列してパーティションを生成するステップと、
(c)前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるステップと、
を含むことを特徴とする分散コンピューティング環境におけるグラフデータの振り分け方法を実行するためのプログラムが書き込まれたコンピュータにて読み取り可能な記録媒体。 - グラフデータから共通部分グラフを探索する共通部分グラフ探索部と、
前記探索の結果、共通部分グラフが存在する場合に部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合にグラフデータを整列してパーティションを生成するパーティション生成部と、
前記グラフデータの処理費用を計算し、前記処理費用が最小となるパーティションに前記グラフデータを割り当てるデータ振り分け部と、
を備えることを特徴とする分散コンピューティング環境におけるグラフデータの振り分け装置。 - 前記共通部分グラフ探索部は、前記グラフデータの各ノード別の隣接ノードの数及びIDに基づいて共通部分グラフを探索することを特徴とする請求項8に記載の分散コンピューティング環境におけるグラフデータの振り分け装置。
- 前記パーティション生成部は、共通部分グラフが存在する場合にその部分グラフを併合してパーティションを生成し、共通部分グラフが存在しない場合に各ノードを隣接ノード数が多い順に整列し、前記整列されたノードのうち上位ランキングに相当するノードを頂点として選択し、前記選択された頂点を基準としてパーティションを生成することを特徴とする請求項8に記載の分散コンピューティング環境におけるグラフデータの振り分け装置。
- 前記データ振り分け部は、各頂点別に、共通部分グラフまたは頂点までの最小ホップの数(H)、頂点の計算関数時間複雑度(T)、同一ではないパーティションに格納された頂点の隣の隣接頂点の数(M)を計算し、前記計算された最小ホップの数、計算関数時間複雑度及び隣接頂点の数のそれぞれに重み付け値を適用して前記グラフデータの処理費用を計算し、前記計算された処理費用が最小となるパーティションを探索し、前記探索されたパーティションに当該グラフデータを割り当てることを特徴とする請求項8に記載の分散コンピューティング環境におけるグラフデータの振り分け装置。
- 前記データ振り分け部は、各頂点の隣の隣接頂点が既に割り当てられた頂点である場合、前記計算された処理費用に連結長さ(P)を適用して処理費用を再計算することを特徴とする請求項11に記載の分散コンピューティング環境におけるグラフデータの振り分け装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140141981 | 2014-10-20 | ||
KR10-2014-0141981 | 2014-10-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016081494A true JP2016081494A (ja) | 2016-05-16 |
Family
ID=55749266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014254498A Pending JP2016081494A (ja) | 2014-10-20 | 2014-12-16 | 分散コンピューティング環境におけるグラフデータの振り分け方法及び装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9934325B2 (ja) |
JP (1) | JP2016081494A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909191A (zh) * | 2018-09-18 | 2020-03-24 | 北京京东金融科技控股有限公司 | 图数据处理方法及装置、存储介质、电子设备 |
CN111737540A (zh) * | 2020-05-27 | 2020-10-02 | 中国科学院计算技术研究所 | 一种应用于分布式计算节点集群的图数据处理方法和介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10437648B2 (en) * | 2016-07-22 | 2019-10-08 | Board Of Regents, The University Of Texas System | Guided load balancing of graph processing workloads on heterogeneous clusters |
CN113779322B (zh) * | 2018-08-27 | 2023-08-01 | 北京百度网讯科技有限公司 | 用于图检索的方法、装置、设备以及计算机可读存储介质 |
DE102019200169A1 (de) * | 2019-01-09 | 2020-07-09 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Ermitteln einer Systemkonfiguration eines verteilten Systems |
CN113643074B (zh) * | 2021-09-24 | 2022-03-11 | 金成技术股份有限公司 | 基于人工智能的钣金结构生产报价快速评估方法及系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5274643A (en) | 1992-12-11 | 1993-12-28 | Stratacom, Inc. | Method for optimizing a network having virtual circuit routing over virtual paths |
US7213012B2 (en) * | 2003-05-09 | 2007-05-01 | Oracle International Corporation | Optimizer dynamic sampling |
US7653009B2 (en) * | 2007-09-10 | 2010-01-26 | Juniper Networks, Inc. | Routing network packets based on electrical power procurement arrangements |
JP2009295013A (ja) | 2008-06-06 | 2009-12-17 | Hitachi Ltd | データベース管理方法、データベース管理装置およびプログラム |
JP5224953B2 (ja) * | 2008-07-17 | 2013-07-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、情報処理方法およびプログラム |
US20100083194A1 (en) * | 2008-09-27 | 2010-04-01 | Yahoo! Inc. | System and method for finding connected components in a large-scale graph |
JP5605571B2 (ja) * | 2008-10-07 | 2014-10-15 | 国立大学法人お茶の水女子大学 | 部分グラフ検出装置、部分グラフ検出方法、プログラム、データのデータ構造、及び情報記憶媒体 |
US8463587B2 (en) * | 2009-07-28 | 2013-06-11 | Synopsys, Inc. | Hierarchical order ranked simulation of electronic circuits |
US8509087B2 (en) * | 2010-05-07 | 2013-08-13 | Cisco Technology, Inc. | Per-graph link cost assignment in layer 2 multipath networks |
US8856060B2 (en) | 2011-03-09 | 2014-10-07 | International Business Machines Corporation | Creating stream processing flows from sets of rules |
JP2013062735A (ja) | 2011-09-14 | 2013-04-04 | Nec Corp | 経路特定装置、経路特定方法、及び、経路特定プログラム |
US8819078B2 (en) * | 2012-07-13 | 2014-08-26 | Hewlett-Packard Development Company, L. P. | Event processing for graph-structured data |
KR101269428B1 (ko) | 2012-07-30 | 2013-05-30 | 한국과학기술정보연구원 | 데이터 분배 시스템 및 방법 |
US9280583B2 (en) | 2012-11-30 | 2016-03-08 | International Business Machines Corporation | Scalable multi-query optimization for SPARQL |
-
2014
- 2014-12-16 JP JP2014254498A patent/JP2016081494A/ja active Pending
- 2014-12-16 US US14/571,476 patent/US9934325B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909191A (zh) * | 2018-09-18 | 2020-03-24 | 北京京东金融科技控股有限公司 | 图数据处理方法及装置、存储介质、电子设备 |
CN111737540A (zh) * | 2020-05-27 | 2020-10-02 | 中国科学院计算技术研究所 | 一种应用于分布式计算节点集群的图数据处理方法和介质 |
CN111737540B (zh) * | 2020-05-27 | 2022-11-29 | 中国科学院计算技术研究所 | 一种应用于分布式计算节点集群的图数据处理方法和介质 |
Also Published As
Publication number | Publication date |
---|---|
US20160110474A1 (en) | 2016-04-21 |
US9934325B2 (en) | 2018-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016081494A (ja) | 分散コンピューティング環境におけるグラフデータの振り分け方法及び装置 | |
CN109840533B (zh) | 一种应用拓扑图识别方法及装置 | |
US8861506B2 (en) | Shortest path determination for large graphs | |
EP2796997B1 (en) | Resource search device and program for same | |
WO2017076296A1 (zh) | 处理图数据的方法和装置 | |
JP2017507572A5 (ja) | ||
EP3076303A1 (en) | Virtual middle box management system, virtual middle box management method, and virtual middle box management program | |
US9141677B2 (en) | Apparatus and method for arranging query | |
Schlag et al. | Scalable edge partitioning | |
Pugliese et al. | Shortest path problem with forbidden paths: The elementary version | |
Gu et al. | Maximizing workflow throughput for streaming applications in distributed environments | |
Glantz et al. | Algorithms for mapping parallel processes onto grid and torus architectures | |
JP2016081496A (ja) | 複合イベント処理のためのイベント構成規則の動的更新システム及び方法 | |
CN114003775A (zh) | 图数据处理、查询方法及其系统 | |
Abdelghany et al. | Parallel all-pairs shortest path algorithm: Network decomposition approach | |
Bae et al. | Label propagation-based parallel graph partitioning for large-scale graph data | |
JP4951636B2 (ja) | ネットワーク設計装置、ネットワーク設計方法、およびプログラム | |
US8762898B1 (en) | Double patterning aware routing without stitching | |
Awari | Parallelization of shortest path algorithm using OpenMP and MPI | |
Kang et al. | Large scale complex network analysis using the hybrid combination of a MapReduce cluster and a highly multithreaded system | |
JP2016081495A (ja) | 高負荷経路に基づく複合イベントの処理装置及びその方法 | |
WO2015154641A1 (zh) | 一种业务并发性预测方法与预测系统 | |
US9519521B2 (en) | Server device, computer-readable storage medium and movement control method | |
Shahin | Using heavy clique base coarsening to enhance virtual network embedding | |
Boryczka et al. | Efficient DPSO neighbourhood for dynamic traveling salesman problem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160328 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160623 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160905 |