JP2009169473A - モジュール配置装置並びにモジュール配置方法並びにプログラム - Google Patents

モジュール配置装置並びにモジュール配置方法並びにプログラム Download PDF

Info

Publication number
JP2009169473A
JP2009169473A JP2008003627A JP2008003627A JP2009169473A JP 2009169473 A JP2009169473 A JP 2009169473A JP 2008003627 A JP2008003627 A JP 2008003627A JP 2008003627 A JP2008003627 A JP 2008003627A JP 2009169473 A JP2009169473 A JP 2009169473A
Authority
JP
Japan
Prior art keywords
module
communication
interest
node
distributed system
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
JP2008003627A
Other languages
English (en)
Inventor
Yutaka Omura
裕 大村
Junichi Yamaoka
順一 山岡
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008003627A priority Critical patent/JP2009169473A/ja
Publication of JP2009169473A publication Critical patent/JP2009169473A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

【課題】分散システムの処理効率を確実に向上させる。
【解決手段】複数のノードとモジュール配置装置150がネットワーク160を介して接続されてなる分散システムにおいて、モジュール配置装置150における通信監視部152は、各注目モジュールの通信を監視し、履歴記憶部154は、通信監視部152の監視結果を履歴として記憶する。利用度算出部156は、履歴記憶部154に記憶された履歴を参照し、各注目モジュールの単位時間当たりの通信量を、通信先のモジュール毎に利用度として算出する。再配置部158は、注目モジュールと、該注目モジュールに対して通信量算出部により算出された各利用度のうちの最も大きい利用度を有する通信先のモジュールとが、同一のノードで稼働するようにモジュールの再配置を行う。
【選択図】図2

Description

本発明は、モジュールの配置、具体的には分散システム上で稼働する複数のモジュールを配置する技術に関する。
ネットワークに接続された複数のノードを利用して複雑な処理を行う分散コンピューティングが利用されている。図7は、典型的な分散コンピュータを行うシステム(以下分散システムという)1の模式図である。
図7に示すように、分散システム1において、ネットワーク50を介して複数のノード(図示の例では、ノード10、ノード20、ノード30、ノード40の4つ)が接続されている。各ノードには1つ以上のモジュールが稼動している。
1つのモジュールは、他のモジュールを呼び出して使うことができ、自分と同一のノードにあるモジュール(以下ローカルモジュールという)については呼出しを直接に行い、他のノードにあるモジュール(以下リモートモジュールという)についてはネットワーク50を介して呼出しを行う。例えば、ノード10には、2つのモジュール(モジュール11とモジュール12)があり、モジュール11にとって、モジュール12はローカルモジュールであり、モジュール21、モジュール31、モジュール41はリモートモジュールである。
このように、分散システム1の各ノードにおけるモジュールは、互いに呼び出して使用することができ、1つのシステムとして協働する。
分散システムは、1つの処理を複数の部分処理に分けてそれぞれのノードに実行させるため、リモートモジュールの呼出しが必ず発生する。リモートモジュールの呼出しが頻繁に起きると、ネットワークの負荷が増加し、分散システムの処理効率を下げてしまうという問題がある。
特許文献1(「0043」、「0044」)には、サービスを共有するシステムにおいて、効率アップを図る手法が開示されている。なお、特許文献1における「サービス」は、本明細書におけるモジュールに該当すると考えられるが、特許文献1の手法の説明に際しては、「サービス」の名称を使う。
この手法は、遠隔地のクライアントが当該サービスを利用した回数をカウントし、カウントした回数が所定の閾値に達したときに、サービスのコピーを当該クライアントに配備する。
この手法を図7に示す分散システム1に利用できると考えられる。例えば、モジュール11によるモジュール21の呼出回数が閾値に達したときに、モジュール21をノード10にコピーする。その後、モジュール21がモジュール11のローカルモジュールになり、モジュール11がモジュール21を呼び出す際に、ネットワークを経由しなくて済む。こうすることにより、ネットワークの負荷の減少ひいてはシステムの処理効率の向上を図る。
特表2004−533687号公報
ところで、ネットワークの負荷の多少は、リモートモジュールの呼出回数にのみ依存するとは限らない。
一方、特許文献1の手法を分散システム1に適用した場合、リモートモジュールをコピーするか否かの判定は、システム管理者などにより設定された呼出回数の閾値に基づき、この閾値に達していなければ、リモートモジュールの当該ノードへのコピーがなされない。例えば、閾値が100に設定されている場合、モジュール11が短時間内でモジュール21の呼出しを50回行って、ネットワークに大きな負担をかけているとしても、モジュール11にとってモジュール21が相変わらずリモートモジュールであり、モジュール11によるモジュール21の呼出しは、引続きネットワークを経由する。このような場合、システムの効率向上を図ることができない。
本発明の一つの態様は、モジュール配置装置である。この装置は、通信量算出部と、再配置部を備える。
通信量算出部は、複数のノードを有する分散システムで稼動する複数のモジュールのうちの各注目モジュールに対して、該注目モジュールの単位時間当たりの通信量を、通信先のモジュール毎に算出する。
再配置部は、注目モジュールと、該注目モジュールに対して通信量算出部により算出された各通信量のうちの最も大きい通信量を有する通信先のモジュールとが、同一のノードで稼働するようにモジュールの再配置を行う。
なお、上記態様の装置を方法やプログラムとして置き換えて表現したものの、本発明の態様としては有効である。
本発明にかかる技術によれば、分散システムの処理効率を確実に向上させることができる。
以下、図面を参照して本発明の実施の形態を説明する。
図1は、本発明の実施の形態にかかる分散システム100を示す。分散システム100は、ノード110、ノード120、ノード130、ノード140、モジュール配置装置150を備え、各ノードとモジュール配置装置150はネットワーク160を介して接続されている。
ノード110にはモジュール111とモジュール112が稼動しており、ノード120にはモジュール121が稼動しており、ノード130にはモジュール131が稼動しており、ノード140にはモジュール141が稼動している。なお、図1において、4つのノードを示しているが、ノードの数、およびそれぞれのノードで稼動するモジュールの数は、図1が示す例に限られるものではない。
モジュール配置装置150は、分散システム100における各ノードで稼動するモジュールの配置を調整するものであり、図2は、その構成を示す。
モジュール配置装置150は、ネットワークインタフェース151、通信監視部152、履歴記憶部154、利用度算出部156、再配置部158を有する。図2において、様々な処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、プロセッサ、メモリ、そのほかの回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
ネットワークインタフェース151は、モジュール配置装置150がネットワーク160に接続するためのインタフェースである。
通信監視部152は、ネットワークインタフェース151を介して、ネットワーク160上に各ノードで稼働するモジュールの通信状況を監視する。本実施の形態において、通信監視部152は、ノード間での移動が許可されたモジュールの通信状況のみを監視するものである。なお、ノード間での移動が許可されていないモジュールは、本実施の形態において、固定フラグが付加されている。また、例として、分散システム100において、固定フラグが付加されていないモジュールは、モジュール112とモジュール121のみである。
通信監視部152は、稼動中のモジュールのうちの、固定フラグが付加されたモジュールに注目し、該モジュールが他のモジュールにより呼び出される度に、呼出しを行ったモジュール、呼出しを行ったモジュールが稼動するノード、呼出時刻、および該呼出しに伴った通信量を取得して、履歴記憶部154に出力して格納させる。なお、以下の説明において、呼出しを行ったモジュールと、呼出しがなされたモジュールをそれぞれ「呼出元モジュール」と「呼出先モジュール」という。
図3は、履歴記憶部154に記憶されたデータの例を示す。図示のように、時刻T1において、ノード110で稼働するモジュール112は、ノード130で稼働するモジュール131により呼び出され、呼出しに伴った両モジュール間の通信量がP1である。なお、モジュール112に対してモジュール131がリモートモジュールであるため、この呼出しに伴った通信はネットワーク160を介したものである。
また、時刻T2において、モジュール112は、同じくノード110で稼働するモジュール111により呼び出され、呼出しに伴った両モジュール間の通信量がP2である。なお、モジュール112に対してモジュール111がローカルモジュールであるため、この呼出しに伴った通信は、ネットワーク160を介さず、分散システム100内部で行われたものである。
図4は、通信監視部152の処理を示すフローチャートである。通信監視部152は、分散システム100におけるいずれかのモジュールが稼動すると(S10)、該モジュールに固定フラグが付加されているか否かを確認する(S20)。固定フラグが付加されたモジュールであれば、通信監視部152は、それについての監視を行わない(S12:Yes)。一方、固定フラグが付加されていないモジュールであれば、通信監視部152は、それの通信を監視すると共に、監視結果を履歴記憶部154に出力する。これにより、履歴記憶部154に格納された履歴の追加がなされる(S16)。
モジュール配置装置150の利用度算出部156は、履歴記憶部154に格納された図3に示す履歴を参照して、モジュール112とモジュール121のそれぞれの単位時間当たりの通信量を、呼出元モジュール毎に算出する。この単位時間当たりの通信量を、以下「利用度」という。
例えば、時刻T1から時刻T5の期間において、モジュール112に対するモジュール131の利用度は、「(P1+P3+P5)/(T5−T1)」であり、モジュール112に対するモジュール111の利用度は「P2/(T5−T1)」である。また、モジュール121に対するモジュール141の利用度が「P4/(T5−T1)」である。この期間において、呼出しを行っていない他のモジュールは、モジュール112とモジュール121の利用度がいずれも0となる。
なお、本実施の形態において、利用度算出部156が現在の時刻からどこまで履歴を遡って参照するかについては、設定可能であり、利用度算出部156は、設定された期間内において、注目モジュール、すなわちモジュール112とモジュール121について、呼出元モジュール毎の利用度を算出する。
再配置部158は、利用度算出部156が算出した利用度に基づいて、注目モジュールと、注目モジュールに対して最大の利用度を有するモジュールとが、同一のノードで稼働するように注目モジュールを移動する。
図3の例を用いて説明する。例えば、時刻T1と時刻T5間に、モジュール112に対して、モジュール121と、モジュール131と、モジュール141の利用度が「0」であるため、モジュール111の利用度がモジュール131の利用度より大きい場合、モジュール111の利用度が最大となる。この場合、モジュール112とモジュール111は同じくノード110で稼働するモジュールであるため、再配置部158は、モジュール112を移動しない。
一方、モジュール131の利用度がモジュール111の利用度より大きい場合、モジュール131の利用度が最大となる。この場合、再配置部158は、モジュール131が稼動するノード130にモジュール112を移動する。
図5は、モジュール112の移動後の分散システム100を示す。図示のように、モジュール112がノード130に移動されている。
図6は、利用度算出部156と再配置部158の処理を示すフローチャートである。利用度算出部156は、履歴記憶部154に格納された履歴を参照して、注目モジュール毎に、各呼出元モジュールの利用度を算出して再配置部158に出力する(S20)。再配置部158は、注目モジュール毎に、該注目モジュールに対する利用度が最も大きい呼出元モジュールを選出して、該呼出元モジュールと、注目モジュールとが同一ノードで稼働するかを確認する(S22、S24)。ノードが異なれば、再配置部158は、当該注目モジュールを、ステップS22において選出した呼出元モジュールが稼動するノードに移動する(S24:No、S26)。一方、ステップS22において選出した呼出元モジュールと、注目モジュールが同一のノードで稼働するものであれば(S22:Yes)、再配置部158は、当該注目モジュールの移動をしない。
このように、本実施の形態の分散システム100において、モジュール配置装置150は、移動が許可された呼出先モジュール毎に、各呼出元モジュールとの単位時間当たりの通信量である利用度を算出し、利用度が最も大きい呼出元モジュールと、当該呼出先モジュールとが異なるノードで稼働する場合に該呼出先モジュールを、利用度が最も大きい呼出元モジュールが稼動するノードに移動する。こうすることによって、ネットワークへの負荷に応じたモジュールの再配置ができるので、システムの処理効率を確実に高めることができる。
また、特許文献1の手法を分散システムに適用した場合に、呼出先モジュールを呼出元モジュールにコピーしている。このような手法では、分散システム上に元の呼出先モジュールと、コピーした呼出先モジュールとが稼動することになり、無駄が多い。それに対して、本実施の形態の分散システム100におけるモジュール配置装置150は、再配置に際して呼出先モジュールを呼出元モジュールのノードに移動するようにしているので、上記無駄を省くことができる。
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、さまざまな変更、増減を加えてもよい。これらの変更、増減が加えられた変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば、本実施の形態において、他のモジュールにより呼び出されるモジュール、すなわち呼出先モジュールのみが移動可能な場合を例にしているが、移動が許可された呼出元モジュールがある分散システムに適用することができる。さらに、この場合、再配置に際して、呼出先モジュールと呼出元モジュールとが同一のノードで稼働するようになればよく、例えば呼出元モジュールを呼出先モジュールのノードに移動するようにしてもよい。
また、本実施の形態において、例として、モジュール112とモジュール131のような一対のモジュールが、片方が呼出先モジュールであり、他方が呼出モジュールであるようになっている。例えば、AモジュールとBモジュールの1対のモジュールは互いに呼出しが生じうるシステムの場合には、AモジュールとBモジュール間の通信は、AモジュールがBモジュールを呼び出すときと、BモジュールがAモジュールを呼び出すときのいずれにも発生する。本発明の技術は、このような場合にも適用することができ、どちらのモジュールの呼出しに起因する通信かに関係なく、AモジュールとBモジュール間の通信を監視し、単位時間当たりの通信量をAモジュールとBモジュールの互いの利用度として算出すればよい。
また、本実施の形態において、モジュール配置装置150は、モジュールが稼動するノードとは別に設けられているが、モジュール配置装置150の機能をいずれかのノードに設け、該ノードによりモジュール配置装置150を兼ねるようにしてもよい。
本発明の実施の形態にかかる分散システムを示す図である。 図1に示す分散システムにおけるモジュール配置装置を示す図である。 図1に示す分散システムにおける履歴記憶部により記憶された履歴の例を示す図である。 図1に示す分散システムにおける通信監視部の処理を示すフローチャートである。 図2に示すモジュール配置装置による再配置後の分散システムを示す図である。 図2に示すモジュール配置装置の処理を示すフローチャートである。 典型的な分散システムの模式図である。
符号の説明
1 分散システム 10 ノード
11 モジュール 12 モジュール
20 ノード 21 モジュール
30 ノード 31 モジュール
40 ノード 41 モジュール
50 ネットワーク 100 分散システム
110 ノード 111 モジュール
112 モジュール 120 ノード
121 モジュール 130 ノード
131 モジュール 140 ノード
141 モジュール 150 モジュール配置装置
151 ネットワークインタフェース 152 通信監視部
154 履歴記憶部 156 利用度算出部
158 再配置部 160 ネットワーク

Claims (6)

  1. 複数のノードを有する分散システムで稼動する複数のモジュールのうちの各注目モジュールに対して、該注目モジュールの単位時間当たりの通信量を、通信先のモジュール毎に算出する通信量算出部と、
    前記注目モジュールと、該注目モジュールに対して前記通信量算出部により算出された各前記通信量のうちの最も大きい通信量を有する前記通信先のモジュールとが、同一のノードで稼働するようにモジュールの再配置を行う再配置部とを備えることを特徴とするモジュール配置装置。
  2. 前記注目モジュールは、移動可能なモジュールであり、
    前記再配置部は、再配置に際して、前記通信先のモジュールが稼動するノードに前記注目モジュールを移動することを特徴とする請求項1に記載のモジュール配置装置。
  3. 複数のノードを有する分散システムで稼動する複数のモジュールのうちの各注目モジュールに対して、該注目モジュールの単位時間当たりの通信量を、通信先のモジュール毎に算出し、
    前記注目モジュールと、該注目モジュールに対して算出された各前記通信量のうちの最も大きい通信量を有する前記通信先のモジュールとが、同一のノードで稼働するようにモジュールの再配置を行うことを特徴とするモジュール配置方法。
  4. 前記注目モジュールは、移動可能なモジュールであり、
    再配置に際して、前記通信先のモジュールが稼動するノードに前記注目モジュールを移動することを特徴とする請求項3に記載のモジュール配置方法。
  5. 複数のノードを有する分散システムで稼動する複数のモジュールのうちの各注目モジュールに対して、該注目モジュールの単位時間当たりの通信量を、通信先のモジュール毎に算出し、
    前記注目モジュールと、該注目モジュールに対して算出された各前記通信量のうちの最も大きい通信量を有する前記通信先のモジュールとが、同一のノードで稼働するようにモジュールの再配置を行う処理をコンピュータに実行せしめることを特徴とするプログラム。
  6. 前記注目モジュールは、移動可能なモジュールであり、
    再配置に際して、前記通信先のモジュールが稼動するノードに前記注目モジュールを移動することをコンピュータに実行せしめることを特徴とする請求項5に記載のプログラム。
JP2008003627A 2008-01-10 2008-01-10 モジュール配置装置並びにモジュール配置方法並びにプログラム Pending JP2009169473A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008003627A JP2009169473A (ja) 2008-01-10 2008-01-10 モジュール配置装置並びにモジュール配置方法並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008003627A JP2009169473A (ja) 2008-01-10 2008-01-10 モジュール配置装置並びにモジュール配置方法並びにプログラム

Publications (1)

Publication Number Publication Date
JP2009169473A true JP2009169473A (ja) 2009-07-30

Family

ID=40970607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008003627A Pending JP2009169473A (ja) 2008-01-10 2008-01-10 モジュール配置装置並びにモジュール配置方法並びにプログラム

Country Status (1)

Country Link
JP (1) JP2009169473A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2013161169A (ja) * 2012-02-02 2013-08-19 Mitsubishi Electric Corp 情報処理装置および情報処理方法およびプログラム
JP2018507499A (ja) * 2015-02-03 2018-03-15 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited サービス管理方法及び装置
JP2021502622A (ja) * 2017-11-09 2021-01-28 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウェア・アプリケーションのデプロイメント構成の動的選択のための方法、コンピュータ・プログラム及びコンピュータ・システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007136021A1 (ja) * 2006-05-24 2007-11-29 Nec Corporation 仮想マシン管理装置、仮想マシン管理方法およびプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007136021A1 (ja) * 2006-05-24 2007-11-29 Nec Corporation 仮想マシン管理装置、仮想マシン管理方法およびプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2013161169A (ja) * 2012-02-02 2013-08-19 Mitsubishi Electric Corp 情報処理装置および情報処理方法およびプログラム
JP2018507499A (ja) * 2015-02-03 2018-03-15 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited サービス管理方法及び装置
US10635454B2 (en) 2015-02-03 2020-04-28 Alibaba Group Holding Limited Service management method and the device
JP2021502622A (ja) * 2017-11-09 2021-01-28 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウェア・アプリケーションのデプロイメント構成の動的選択のための方法、コンピュータ・プログラム及びコンピュータ・システム
JP7257728B2 (ja) 2017-11-09 2023-04-14 インターナショナル・ビジネス・マシーンズ・コーポレーション ソフトウェア・アプリケーションのデプロイメント構成の動的選択のための方法、コンピュータ・プログラム及びコンピュータ・システム

Similar Documents

Publication Publication Date Title
Borgs et al. How to distribute antidote to control epidemics
US9405589B2 (en) System and method of optimization of in-memory data grid placement
EP3836486A1 (en) Service link selection control method and device
CN108206764B (zh) 网络设备配置信息的配置方法、服务器和计算机可读介质
JP2015125454A (ja) プログラム配信装置及びプログラム配信方法、プログラム配信システム、並びにコンピュータ・プログラム
CN103686206A (zh) 一种云环境下的视频转码方法和系统
JP2009169473A (ja) モジュール配置装置並びにモジュール配置方法並びにプログラム
WO2024078347A1 (zh) 加速设备、计算系统及加速方法
CN111988355A (zh) 限流方法、装置、服务器及服务器集群
JP2006252218A (ja) 分散処理システム及びプログラム
JP2009237859A (ja) 仮想マシン管理システム
CN109246720B (zh) 一种确定建立原因的方法和终端
CN110362394B (zh) 任务处理方法及装置、存储介质、电子装置
CN105933271B (zh) 一种基于加密机的数据处理方法及装置
CN111225045B (zh) 一种hive高可用预警方法,设备及计算机可读存储介质
CN109862089B (zh) 数据处理方法、装置、系统、计算机可读存储介质
JP2011095869A (ja) リクエスト情報処理方法および計算機システム
EP3996345A1 (en) Method for configuring priority level, cloud platform, system, computing device, and medium
CN109729008B (zh) 路由选择方法、装置及计算机设备
US11937295B2 (en) Method and device for sending discovery signal
CN108089911A (zh) OpenStack环境中的计算节点的控制方法和装置
US10742499B2 (en) Distributed dynamic sizing and load self-management for a relay infrastructure
US9806936B2 (en) Method, apparatus, and system for controlling a computer device through a mobile terminal
CN110399028A (zh) 一种电源批量操作时防止电涌发生的方法、设备以及介质
JP2010170168A (ja) 流量制御方法およびシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120306

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120626