IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ モルゲンロット株式会社の特許一覧

特開2023-114189分散処理システム及び分散処理制御サーバ
<>
  • 特開-分散処理システム及び分散処理制御サーバ 図1
  • 特開-分散処理システム及び分散処理制御サーバ 図2
  • 特開-分散処理システム及び分散処理制御サーバ 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023114189
(43)【公開日】2023-08-17
(54)【発明の名称】分散処理システム及び分散処理制御サーバ
(51)【国際特許分類】
   G06F 9/50 20060101AFI20230809BHJP
【FI】
G06F9/50 150Z
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022016396
(22)【出願日】2022-02-04
(71)【出願人】
【識別番号】520074413
【氏名又は名称】モルゲンロット株式会社
(74)【代理人】
【識別番号】100188662
【弁理士】
【氏名又は名称】浅見 浩二
(74)【代理人】
【識別番号】100177895
【弁理士】
【氏名又は名称】山田 一範
(72)【発明者】
【氏名】井上 博隆
(57)【要約】
【課題】計算処理サーバに対する電力供給が不安定となったとしても安定かつ高効率に分散処理を実現すること。
【解決手段】分散処理制御サーバは、クライアント端末からの計算要求の内容を表す計算要求情報を取得し、発電量情報通知手段からの発電量情報(発電量の予測値であってもよい)を取得し、少なくとも計算要求情報と発電量情報とに基づいて、複数の計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定し、少なくとも計算タスクが割り当てられた計算処理サーバに対して計算に必要な計算用データを転送し、決定された計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得るようにし、計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定し、変更条件が満たされた場合に、当該変更条件が定める規則に従って計算タスク割り当てを変更するようにした。
【選択図】図2
【特許請求の範囲】
【請求項1】
計算要求の主体としてのクライアント端末と、計算処理を担う複数の計算処理サーバと、前記計算処理サーバに対する電力供給量(電力供給量の予測値であってもよい)を通知する電力供給量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、
前記分散処理制御サーバは、
前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、
前記電力供給量情報通知手段からの前記電力供給量情報を取得する電力供給量情報取得部と、
少なくとも前記計算要求情報と前記電力供給量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、
少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、
決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、
前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、
前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部と
を備える分散処理システム。
【請求項2】
計算要求の主体としてのクライアント端末と、計算処理の主体であって自然エネルギー発電である発電手段からの電力によって稼働する少なくとも1以上の計算処理サーバを含む複数の計算処理サーバと、前記計算処理サーバに対して電力を供給する前記発電手段の発電量情報(発電量の予測値であってもよい)を通知する発電量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、
前記分散処理制御サーバは、
前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、
前記発電量情報通知手段からの前記発電量情報を取得する発電量情報取得部と、
少なくとも前記計算要求情報と前記発電量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、
少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、
決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、
前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、
前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部と
を備える分散処理システム。
【請求項3】
前記変更条件判定部は、それぞれの前記計算処理サーバ毎に、前記発電手段の所定期間毎の発電量の変化から予想される次の期間での予想発電量に対して、現在割り当てられた計算タスクの同時演算量の実現に必要な必要電力量の割合が所定の範囲内にあるか否かを判定して、予想発電量に対する必要電力量の割合が所定の範囲内を逸脱した場合に前記変更条件が満たされたと判定するものとし、
前記計算タスク割り当て変更部は、前記変更条件が満たされた場合に、前記予想発電量に対する必要電力量の割合が所定の範囲内に収まるように、当該計算処理サーバに対して割り当てる計算タスク量を含め、複数の前記計算処理サーバそれぞれの計算タスク割り当てを変更する
請求項2記載の分散処理システム。
【請求項4】
前記分散処理制御サーバは、それぞれの前記発電手段が自然エネルギー発電のみで発電する構成であるか、系統電力からの電力供給のみの構成であるか、自然エネルギー発電と系統電力とを複合的に使用可能な構成であるか、の何れであるかを予め記憶しており、
前記計算タスク割り当て決定部は、前記計算要求情報において、系統電力の使用を許容している場合、及び/又は、計算速度を最優先として計算することを要求している場合には、系統電力からの電力供給を受けた前記計算処理サーバについても選択肢の対象として計算タスク割り当てを決定する
請求項2記載の分散処理システム。
【請求項5】
前記分散処理制御サーバは、所定の消費電力調整主体からの消費電力調整要求を受信するものとし、
前記計算タスク割り当て決定部は、前記消費電力調整要求に基づいて各前記計算処理サーバにおける電力消費量を想定して、その想定した電力消費量となるように各前記計算処理サーバに対して計算タスクを割り当てる
請求項2記載の分散処理システム。
【請求項6】
前記発電手段は、余剰電力を充電するための蓄電池の構成を備えているものとし、
前記分散処理制御サーバは、前記蓄電池の充電状況の情報についても前記発電量情報と併せて取得するものとし、
前記計算タスク割り当て決定部は、前記蓄電池の充電状況の情報も加味して複数の前記計算処理サーバに対する計算タスク割り当てを決定する
請求項2記載の分散処理システム。
【請求項7】
前記分散処理制御サーバは、前記計算処理サーバの何れかにおいて計算余力がある場合に実行するための換金用計算タスクを予め登録しており、
前記計算タスク割り当て決定部は、前記計算要求情報に基づく計算タスクを分散処理して実行してもなお計算余力がある場合に、計算余力のある前記計算処理サーバに対して前記換金用計算タスクを割り当てる
請求項2記載の分散処理システム。
【請求項8】
計算要求の主体としてのクライアント端末と、計算処理の主体であって自然エネルギー発電である発電手段からの電力によって稼働する少なくとも1以上の計算処理サーバを含む複数の計算処理サーバと、前記計算処理サーバに対して電力を供給する前記発電手段の発電量情報(発電量の予測値であってもよい)を通知する発電量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムにおける分散処理制御サーバであって、
前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、
前記発電量情報通知手段からの前記発電量情報を取得する発電量情報取得部と、
少なくとも前記計算要求情報と前記発電量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、
少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、
決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、
前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、
前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部と
を備える分散処理制御サーバ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、供給される電力の状況に合わせて計算タスクを複数の計算処理サーバに対して割り当てて分散処理を実行する分散処理システム及び分散処理制御サーバに関するものである。
【背景技術】
【0002】
従来、多量の計算要求を複数の計算処理サーバによって分散して計算する分散処理が行われてきた。分散処理を実行することで同時並行して複数の計算タスクを処理することが可能となるため、計算結果を得るまでの時間を短縮することが可能となる。
【0003】
例えば、特許文献1には、複数のサーバ装置に要求メッセージを振り分ける負荷分散が行われているときにそれら複数のサーバ装置が保持するデータを更新したいという要求に応えるために、一部のサーバ装置をマスタサーバとして動作させ、他のサーバ装置をキャッシュサーバとして動作させる手法を採用する場合において、サーバ装置のデータの同期を効率化するための技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2020-095340号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、複数の計算処理サーバにはそれぞれ様々な手段によって電力が供給されているが、計算処理サーバの環境によっては計算処理の途中で電力供給が不安定になる状況が起こり得る。計算タスクが割り当てられた計算処理サーバに対する電力供給が不安定になると、その計算処理サーバでの計算処理が予定通りに進まなくなってしまうため、最終的な計算結果の取得までに要する時間が想定通りとならずに遅延が生じるおそれがあった。
【0006】
また、近年、SDGs(Sustainable Development Goals:持続可能な開発目標)という取り組みが注目されており、SDGsの目標の一つには、自然エネルギーの活用によって温室効果ガスの排出を減らすという目標も含まれているため、計算処理サーバを稼働させるための電力についても自然エネルギーを活用することがある。しかし、自然エネルギー発電は、天候や季節の影響を受けるため、電力供給が不安定になることがある。このような不安定な電力に依存した計算処理サーバに分散処理の計算タスクを割り当てていると、電力供給が不安定となったタイミングで計算リソースが急激に低下してしまい、想定していた処理時間において計算を完了することができず、結果として、全体の計算処理の完了が遅れるという問題があった。
【0007】
本発明は、上記問題点に鑑みなされたものであり、計算処理サーバに対する電力供給が不安定となったとしても安定かつ高効率に分散処理を実現可能な分散処理システム及び分散処理制御サーバを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る分散処理システムは、計算要求の主体としてのクライアント端末と、計算処理を担う複数の計算処理サーバと、前記計算処理サーバに対する電力供給量(電力供給量の予測値であってもよい)を通知する電力供給量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、前記分散処理制御サーバは、前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、前記電力供給量情報通知手段からの前記電力供給量情報を取得する電力供給量情報取得部と、少なくとも前記計算要求情報と前記電力供給量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部とを備えることを特徴とする。
【0009】
本発明に係る分散処理システムは、計算要求の主体としてのクライアント端末と、計算処理の主体であって自然エネルギー発電である発電手段からの電力によって稼働する少なくとも1以上の計算処理サーバを含む複数の計算処理サーバと、前記計算処理サーバに対して電力を供給する前記発電手段の発電量情報(発電量の予測値であってもよい)を通知する発電量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、前記分散処理制御サーバは、前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、前記発電量情報通知手段からの前記発電量情報を取得する発電量情報取得部と、少なくとも前記計算要求情報と前記発電量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部とを備えることを特徴とする。
【0010】
また、本発明に係る分散処理システムは、さらに、前記変更条件判定部は、それぞれの前記計算処理サーバ毎に、前記発電手段の所定期間毎の発電量の変化から予想される次の期間での予想発電量に対して、現在割り当てられた計算タスクの同時演算量の実現に必要な必要電力量の割合が所定の範囲内にあるか否かを判定して、予想発電量に対する必要電力量の割合が所定の範囲内を逸脱した場合に前記変更条件が満たされたと判定するものとし、前記計算タスク割り当て変更部は、前記変更条件が満たされた場合に、前記予想発電量に対する必要電力量の割合が所定の範囲内に収まるように、当該計算処理サーバに対して割り当てる計算タスク量を含め、複数の前記計算処理サーバそれぞれの計算タスク割り当てを変更することを特徴とする。
【0011】
また、本発明に係る分散処理システムは、さらに、前記分散処理制御サーバは、それぞれの前記発電手段が自然エネルギー発電のみで発電する構成であるか、系統電力からの電力供給のみの構成であるか、自然エネルギー発電と系統電力とを複合的に使用可能な構成であるか、の何れであるかを予め記憶しており、前記計算タスク割り当て決定部は、前記計算要求情報において、系統電力の使用を許容している場合、及び/又は、計算速度を最優先として計算することを要求している場合には、系統電力からの電力供給を受けた前記計算処理サーバについても選択肢の対象として計算タスク割り当てを決定することを特徴とする。
【0012】
また、本発明に係る分散処理システムは、さらに、前記分散処理制御サーバは、所定の消費電力調整主体からの消費電力調整要求を受信するものとし、前記計算タスク割り当て決定部は、前記消費電力調整要求に基づいて各前記計算処理サーバにおける電力消費量を想定して、その想定した電力消費量となるように各前記計算処理サーバに対して計算タスクを割り当てることを特徴とする。
【0013】
また、本発明に係る分散処理システムは、さらに、前記発電手段は、余剰電力を充電するための蓄電池の構成を備えているものとし、前記分散処理制御サーバは、前記蓄電池の充電状況の情報についても前記発電量情報と併せて取得するものとし、前記計算タスク割り当て決定部は、前記蓄電池の充電状況の情報も加味して複数の前記計算処理サーバに対する計算タスク割り当てを決定することを特徴とする。
【0014】
また、本発明に係る分散処理システムは、さらに、前記分散処理制御サーバは、前記計算処理サーバの何れかにおいて計算余力がある場合に実行するための換金用計算タスクを予め登録しており、前記計算タスク割り当て決定部は、前記計算要求情報に基づく計算タスクを分散処理して実行してもなお計算余力がある場合に、計算余力のある前記計算処理サーバに対して前記換金用計算タスクを割り当てることを特徴とする。
【0015】
本発明に係る分散処理制御サーバは、計算要求の主体としてのクライアント端末と、計算処理の主体であって自然エネルギー発電である発電手段からの電力によって稼働する少なくとも1以上の計算処理サーバを含む複数の計算処理サーバと、前記計算処理サーバに対して電力を供給する前記発電手段の発電量情報(発電量の予測値であってもよい)を通知する発電量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムにおける分散処理制御サーバであって、前記クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、前記発電量情報通知手段からの前記発電量情報を取得する発電量情報取得部と、少なくとも前記計算要求情報と前記発電量情報とに基づいて、複数の前記計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、少なくとも計算タスクが割り当てられた前記計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、前記計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、前記変更条件が満たされた場合に、当該変更条件が定める規則に従って前記計算タスク割り当てを変更する計算タスク割り当て変更部とを備えることを特徴とする。
【発明の効果】
【0016】
本発明によれば、計算処理サーバに対する電力供給が不安定となったとしても安定かつ高効率に分散処理を実現することが可能となる。
【図面の簡単な説明】
【0017】
図1】本発明に係る分散処理システム100を実現するためのシステム全体の構成を表したブロック図である。
図2】本発明に係る分散処理システム100における分散処理制御サーバ10の構成の一例を表した説明図である。
図3】本発明に係る分散処理制御サーバ10における分散処理の流れを表したフローチャート図である。
【発明を実施するための形態】
【0018】
[第1の実施の形態]
以下、図面を参照しながら、第1の実施の形態に係る分散処理システムの例について説明する。図1は、本発明に係る分散処理システムを実現するためのシステム全体の構成を表したブロック図である。図1に示すように、分散処理システム100を実現するためのシステム全体の構成は、分散処理制御サーバ10と、クライアント端末201~20m(以下、単にクライアント端末20と表現する場合がある)と、計算処理サーバ301~30n(以下、単に計算処理サーバ30と表現する場合がある)とが、通信ネットワーク40を介して相互に接続可能に構成されている。また、計算処理サーバ301~30nのそれぞれには、発電手段501~50nが接続されており、各発電手段501~50nの発電量情報を分散処理制御サーバ10に通知するための発電量情報通知手段601~60nを備えている。
【0019】
分散処理制御サーバ10は、クライアント端末201~20mの何れかからの計算要求を複数の計算処理サーバ301~30nに対して計算タスクを割り当てて分散して計算を実行する分散処理を制御するための構成である。
【0020】
クライアント端末201~20mは、分散処理システム100に対する計算要求主体側が備える端末装置であり、分散処理システム100に対して計算要求情報を送信して、最終的な計算結果を受信する。ここで、計算要求情報とは、分散処理システム100に対して要求する計算を実行するために必要な情報のことをいう。具体的には、計算の種類など付随的な情報や、計算に用いる計算データの情報などが含まれる。また、計算要求情報には、計算を実行する際の条件を指定する内容を含むようにしてもよい。例えば、速度を最優先で計算することを条件として指定することも考えられるし、速度は落ちることは許容して安価であることを条件として指定することも考えられる。また、自然エネルギー発電からの電力で稼働する計算処理サーバ30のみを用いて計算を実行することを条件として指定することも考えられるし、系統電力で稼働する計算処理サーバ30のみを用いて計算を実行することを条件として指定することも考えられるし、自然エネルギー発電からの電力と系統電力からの電力を複合的に使用することを許容することを条件として指定することも考えられる。なお、図1の例では、クライアント端末201~20mが通信ネットワーク40を介して直接分散処理制御サーバ10と接続するものとしているが、これはあくまで一例であり、他の装置を介在させた上で計算要求情報を分散処理制御サーバ10に送信する構成としてもよい。例えば、計算要求の内容毎に個別の専用のサービス管理サーバを設けて、クライアント端末20と分散処理制御サーバ10との間に介在させるようにしてもよい。サービス管理サーバは、例えば、レンダリング、シミュレーション、機械学習など、提供するサービスごとに設けられるサービス管理用のサーバが考えられる。
【0021】
計算処理サーバ301~30nは、分散処理制御サーバ10から割り当てられた計算タスクに基づいて計算処理を実行して、計算結果を分散処理制御サーバ10に送信する機能を備えたサーバ装置である。ここで、複数の計算処理サーバ301~30nは、それぞれが異なる地点に設けられることを想定しており、例えば、異なる国に設置されるものであってもよい。また、複数の計算処理サーバ301~30nは、均一な処理能力を備えているわけではなく、同時実行可能な計算量や計算処理速度などそれぞれが異なる計算能力に基づいて演算することを想定している。そのため、分散処理制御サーバ10において、複数の計算処理サーバ301~30nそれぞれの計算能力(計算リソース)を表す情報を予め取得して登録しておくことが好ましい。
【0022】
発電手段501~50nは、複数の計算処理サーバ301~30nに対して電力供給を行う手段である。ここで、発電手段501~50nとしては、例えば、太陽光発電、風力発電、水力発電、バイオマス発電などの自然エネルギー発電が考えられ、また、複数の発電手段が組み合わされることも考えられる。分散処理制御サーバ10では、複数の計算処理サーバ301~30nのそれぞれが、どのような発電手段501~50nから電力供給を受けているかの情報を予め登録しておく。また、複数の計算処理サーバ301~30nのそれぞれについて、自然エネルギー発電などの発電手段が単独で接続されているのか、発電量が不足している時や電力が不安定な時に系統電力からの電力供給を受け得る構成となっているか否かの情報についても、予め登録しておく。
【0023】
発電量情報通知手段601~60nはそれぞれ、対応する発電手段501~50nにおける予め設定した所定期間での発電量情報を取得して分散処理制御サーバ10に通知する機能を有する。発電手段501~50nの発電量情報を取得して通知可能であればどのような手段であってもよい。なお、発電量情報通知手段601~60nが通知する情報は、過去の発電量の情報に限らず、未来に関する発電量の予測値であってもよい。発電量の予測手法については様々な手法を採用し得る。予測単位はどのような単位であってもよいが、例えば、30分単位での発電量の予測値を通知するようにする構成が考えられる。また、発電量の予測値の一形態として発電計画値を通知する構成であってもよい。
【0024】
なお、分散処理システム100を構成する分散処理制御サーバ10や計算処理サーバ301~30nは、専用マシンとして設計した装置であってもよいが、一般的なサーバ装置によって実現可能なものであるものとする。この場合に、分散処理制御サーバ10や計算処理サーバ301~30nは、一般的なコンピュータやサーバ装置が通常備えているであろうCPU(Central Processing Unit:中央演算処理装置)、GPU(Graphics Processing Unit:画像処理装置)、メモリ、ハードディスクドライブ等のストレージを具備しているものとする(図示省略)。また、これらの一般的なサーバ装置を本例の分散処理制御サーバ10として機能させるためにプログラムよって各種処理が実行されることは言うまでもない。
【0025】
図2は、本発明に係る分散処理システム100における分散処理制御サーバ10の構成の一例を表した説明図である。この図2に示すように、分散処理制御サーバ10は、計算要求情報取得部11と、発電量情報取得部12と、計算タスク割り当て決定部13と、計算用データ転送部14と、分散処理実行部15と、変更条件判定部16と、計算タスク割り当て変更部17と、記憶部18とを少なくとも備えている。
【0026】
計算要求情報取得部11は、クライアント端末からの計算要求の内容を表す計算要求情報を取得する機能を有する。取得した計算要求情報は、計算タスクの割り当てを決定するために利用される。
【0027】
発電量情報取得部12は、発電量情報通知手段からの前記発電量情報を取得する機能を有する。取得した発電量情報は、対応する計算処理サーバ30において処理可能な計算量を算出するために用いられる。
【0028】
計算タスク割り当て決定部13は、少なくとも計算要求情報と発電量情報とに基づいて、複数の計算処理サーバ301~30nの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する機能を有する。計算タスクの割り当てについては、様々なアルゴリズムを適用可能であるが、先ず、少なくとも計算要求情報に基づいて必要な計算量を把握する必要がある。他方で、発電量情報に基づいて複数の計算処理サーバ301~30nのそれぞれの計算能力(計算リソース)を算出する。これにより、計算処理サーバ301~30nのそれぞれに対してどの程度の計算タスクを割り当て可能であるかを判定する。そして、所定のアルゴリズムに基づいて、複数の計算処理サーバ301~30nの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する。
【0029】
計算用データ転送部14は、少なくとも計算タスクが割り当てられた計算処理サーバ30に対して計算に必要な計算用データを転送する機能を有する。計算タスクが割り当てられた計算処理サーバ30では、計算に用いる計算用データが必要であるため、計算用データを転送する。このとき、直接計算タスクの割り当てが行われていない計算処理サーバに対しても計算用データを転送するようにしてもよい。予め計算用データを取得しておくことで、後述する計算タスク割り当て変更部17において計算タスクの割り当て先として途中で選択された場合に、早期に計算処理に着手することが可能となる。なお、計算用データに関しては、過去の計算と同じデータを用いることも多々あることから、計算用データ転送部14によって計算処理サーバ30に転送された計算用データをキャッシュとして保持して、次の利用機会に再度の転送を受けずにキャッシュに保持された計算用データを利用して計算を行うようにしてもよい。
【0030】
特定の計算処理に必要な計算用データは、分散して配置された複数の分散処理サーバに配布されて計算処理が行われるが、その計算用データの移動に関しては、多重のキャッシュ機能とデータ転送実行を最適化することで、色々なネットワークのコネクティビティ環境に装置が置かれていても、効率よく計算処理が行われるシステムを実現する。
【0031】
分散処理実行部15は、決定された前記計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る機能を有する。分散処理実行部15は、計算タスクが割り当てられた計算処理サーバ30に対して計算処理の実行を指示し、各計算処理サーバ30での計算結果を順次取得する。
【0032】
変更条件判定部16は、計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する機能を有する。計算タスク割り当てに関する所定の変更条件はどのようなものであってもよい。例えば、計算タスクを割り当てた計算処理サーバ30の一部が想定した計算量を消化できていないことや、より高速に計算可能な他の計算処理サーバ30の計算余力に空きができたことなど、様々な変更条件を設定することが可能である。特に、自然エネルギー発電の不安定さに基づく計算能力の変動に対して変更条件を設定することで、発電量が急激に低減した場合などに対応可能となる。
【0033】
計算タスク割り当て変更部17は、変更条件が満たされた場合に、当該変更条件が定める規則に従って計算タスク割り当てを変更する機能を有する。変更条件が満たされた場合には、変更条件の対象となった計算処理サーバ30に対する割り当て量の少なくとも一部を他の計算処理サーバ30に割り当てるように変更する。計算タスクの割り当ての変更後は、分散処理実行部15からの実行指示に基づいて各計算処理サーバ30にて計算が実行される。
【0034】
記憶部18は、分散処理制御サーバ10において行われる様々な処理で必要なデータ及び処理の結果として得られたデータを記憶させる機能を有する。
【0035】
次に、本発明に係る分散処理制御サーバ10における分散処理の流れについて説明を行う。図3は、本発明に係る分散処理制御サーバ10における分散処理の流れを表したフローチャート図である。この図3に示すように、分散処理制御サーバ10における分散処理は、分散処理制御サーバ10において計算要求情報を取得することによって開始される(ステップS101)。次に、分散処理制御サーバ10は、複数の分散処理サーバ301~30nそれぞれの発電量情報を取得する(ステップS102)。次に、分散処理制御サーバ10は、少なくとも計算要求情報と発電量情報とに基づいて、計算タスク割り当てを決定する(ステップS103)。次に、分散処理制御サーバ10は、計算を担う計算処理サーバ30に対して計算用データを転送する(ステップS104)。次に、分散処理制御サーバ10は、分散処理による計算を実行する(ステップS105)。次に、分散処理制御サーバ10は、全ての計算が完了したか否かを判定する(ステップS106)。全ての計算が完了していない場合(S106-N)、分散処理制御サーバ10は、計算タスク割り当てについての変更条件が充足されたか否かを判定する(ステップS107)。変更条件が充足されていない場合には、分散処理制御サーバ10は、全ての計算が終わるか変更条件が充足されるかの何れかのタイミングまで、ステップS106とS107を繰り返す。変更条件が充足された場合、分散処理制御サーバ10は、計算タスクの割り当てを変更して(ステップS108)、ステップS104へ移行する。その後、全ての計算が終わるまでの間に変更条件が充足された場合には、分散処理制御サーバ10は、計算タスクの割り当てを都度変更する(ステップS108)。そして、分散処理制御サーバ10は、全ての計算が完了した場合に(S106-Y)、分散処理を終了する。
【0036】
以上のように、本例による分散処理システムによれば、計算要求の主体としてのクライアント端末と、計算処理の主体であって自然エネルギー発電である発電手段からの電力によって稼働する少なくとも1以上の計算処理サーバを含む複数の計算処理サーバと、計算処理サーバに対して電力を供給する発電手段の発電量情報(発電量の予測値であってもよい)を通知する発電量情報通知手段と、複数の計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、分散処理制御サーバは、クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、発電量情報通知手段からの発電量情報を取得する発電量情報取得部と、少なくとも計算要求情報と発電量情報とに基づいて、複数の計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、少なくとも計算タスクが割り当てられた計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、決定された計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、変更条件が満たされた場合に、当該変更条件が定める規則に従って計算タスク割り当てを変更する計算タスク割り当て変更部とを備えるようにしたので、計算処理サーバの一部において自然エネルギー発電の不安定さに基づく計算能力の変動が生じたとしても、その状況を変更条件で判定して計算タスク割り当てを変更して対処できるため、自然エネルギー発電である発電手段からの電力によって稼働する計算処理サーバであっても安定かつ高効率に分散処理を実現することが可能となる。
【0037】
すなわち、計算機能を使いレンダリング、シミュレーション、機械学習などの各種処理に必要な計算処理を行うために、分散して配置された多数の分散処理サーバに処理を最適に分散して計算タスクの割り当てを行う。計算タスクの割り当ては、計算処理を実施する目的にあわせた条件、例えば、処理時間の重要度、コスト優先度、自然エネルギーの使用率などと、各計算力を持った装置の属性、例えば処理能力、メモリ容量、ネットワークコネクティビティ―、稼働する電力のコストやグリーンエネルギーの比率など、から構成される評価式により割り当ての評価を行い、割り当てとそのスケジューリングを決定することが可能となる。そして、計算処理サーバの計算能力に変化が生じた場合等、計算タスクの割り当ての変更条件が満たされた場合には、適宜割り当てを変更して適宜最適な割り当てにて分散処理を継続することが可能となる。
【0038】
また、発電量情報通知手段からの発電量情報として、発電量の予測値の通知を受ける場合には、予測値に基づいて計算タスクの割り当てを決定することで、予め電力の不安定さを吸収した計算タスクの割り当てを行うことが可能となる。
【0039】
[第2の実施の形態]
第1の実施の形態において、計算タスク割り当てに関する所定の変更条件について説明したが、より詳細な変更条件について説明を行う。具体的には、計算処理サーバ毎に、予想発電量と必要電力量とを比較する変更条件について説明する。
【0040】
変更条件判定部16において、変更条件として、発電手段50の所定期間毎の発電量の変化から予想される次の期間での予想発電量に対して、現在割り当てられた計算タスクの同時演算量の実現に必要な必要電力量の割合が所定の範囲内にあるか否かを判定して、予想発電量に対する必要電力量の割合が所定の範囲内を逸脱した場合に変更条件が満たされたと判定するものとする。
【0041】
予想発電量の予測については、様々な方法が採用可能であるが、例えば、日射量や風速といった天気予測データに基づき発電量を予測する手法や、所定期間毎に発電量情報を取得して発電量情報の変化の傾きから次の期間での予想発電量を推定する手法が考えられる。他方で、当該計算処理サーバ30に対して割り当てられている計算タスクの計算に必要な必要電力量も算出可能である。次の期間において、予想発電量<必要電力量が成立してしまうと、割り当てられた計算タスクの計算に支障が生じるおそれがある。そこで、予想発電量に対する必要電力量の割合が所定の範囲内を逸脱した場合に変更条件が満たされたと判定するようにする。予想発電量に対する必要電力量の割合が所定の範囲については適宜設定可能である。
【0042】
計算タスク割り当て変更部17は、変更条件が満たされた場合に、予想発電量に対する必要電力量の割合が所定の範囲内に収まるように、当該計算処理サーバに対して割り当てる計算タスク量を含め、複数の計算処理サーバ30それぞれの計算タスク割り当てを変更する。
【0043】
以上のように、本例による分散処理システムによれば、変更条件判定部は、それぞれの計算処理サーバ毎に、発電手段の所定期間毎の発電量の変化から予想される次の期間での予想発電量に対して、現在割り当てられた計算タスクの同時演算量の実現に必要な必要電力量の割合が所定の範囲内にあるか否かを判定して、予想発電量に対する必要電力量の割合が所定の範囲内を逸脱した場合に変更条件が満たされたと判定するものとし、計算タスク割り当て変更部は、変更条件が満たされた場合に、予想発電量に対する必要電力量の割合が所定の範囲内に収まるように、当該計算処理サーバに対して割り当てる計算タスク量を含め、複数の計算処理サーバそれぞれの計算タスク割り当てを変更するようにしたので、計算処理サーバ毎の発電量が予め設定した所定範囲を逸脱して変化した場合に、割り当てを変更することで、より適切な条件下で分散処理を継続することが可能となる。
【0044】
すなわち、ソリューション側での必要電力量を都度調整することができる。これにより、自然エネルギー発電という不安定な電力供給リソースが前提であっても、電力消費側での運用最適化を行うことが可能となる。
【0045】
また、自然エネルギー発電において変化する発電量に合わせて割り当てる計算タスクの量を調整することで、計算能力に対して割り当てられる計算タスクの量を常に一定の状態に保つ調整が可能となる。例えば、計算能力を常に95%以上使用して計算処理を行うような状態を保つことで、発電された電力の無駄をなくすことができる。
【0046】
また、逆潮流出来ない自然エネルギー発電設備において、余剰電力の発生を阻止するために計算量を一時的に増やし、逆潮流の発生が原因のRPRの作動を抑える制御を行うために、この第2の実施の形態を適用することも可能である。
【0047】
[第3の実施の形態]
自然エネルギー発電を用いた発電手段から電力供給を受けた計算処理サーバ30を利用する点が本発明の特徴でもあるが、安定した電力状況で計算処理を実行してほしいというニーズもあるため、それに応えられることが望ましい。
【0048】
そこで、分散処理制御サーバ10において、それぞれの発電手段501~50nが、自然エネルギー発電のみで発電する構成であるか、系統電力からの電力供給のみの構成であるか、自然エネルギー発電と系統電力とを複合的に使用可能な構成であるか、の何れであるかを予め記憶しておく。そして、計算タスク割り当て決定部17は、計算要求情報において、系統電力の使用を許容している場合、及び/又は、計算速度を最優先として計算することを要求している場合には、系統電力からの電力供給を受けた計算処理サーバ30についても選択肢の対象として計算タスク割り当てを決定するようにする。
【0049】
逆に、計算要求情報において、系統電力の使用を許容していない場合、及び/又は、計算速度や安価であることを犠牲にしても自然エネルギー発電からの電力によって計算することを要求している場合には、計算タスク割り当て決定部17は、系統電力からの電力供給を受けた計算処理サーバ30を除外して計算タスク割り当てを決定するようにする。
【0050】
これにより、ユーザの要求に応じた計算処理サーバ30の組み合わせにて分散処理を実行することが可能となる。すなわち、ユーザが許容する場合には、自然エネルギー発電において変化する発電電力と系統からの買電売電を組み合わせて、安定な電力量を実現し、計算処理を行うことが可能となる。
【0051】
[第4の実施の形態]
第1及び第2の実施の形態においては、発電量に対して計算タスクの割り当て量を調整する例について説明を行ったが、電力調整要求に応じて計算タスクの量を調整するようにしてもよい。
【0052】
分散処理制御サーバ10は、所定の消費電力調整主体からの消費電力調整要求を受信する。ここで、消費電力調整主体とは、消費電力を調整することについて役割を担う主体であり、例えば、系統電力を供給する電力会社や、消費電力の調整のために設立された団体などが考えられる。何らかの理由により消費電力を調整する必要が生じた場合に、消費電力調整主体が消費電力調整要求を行うことを想定している。そして、計算タスク割り当て決定部17は、受信した消費電力調整要求に基づいて、各計算処理サーバ30における電力消費量を想定して、その想定した電力消費量となるように各計算処理サーバ30に対して計算タスクを割り当てるようにする。
【0053】
これにより、電力の消費量の調整要求に対して、計算量を調整することで、消費電力を増減させて調整要求に対応することが可能となる。
【0054】
[第5の実施の形態]
第1の実施の形態においては、発電手段50からの電力をそのまま使用する前提で説明を行ったが、蓄電池を併用するようにしてもよい。
【0055】
発電手段501~50nのうちの少なくとも一部は、余剰電力を充電するための蓄電池の構成を備えているものとする。次に、分散処理制御サーバ10は、蓄電池の充電状況の情報についても発電量情報と併せて取得するものとする。そして、計算タスク割り当て決定部17は、蓄電池の充電状況の情報も加味して複数の計算処理サーバ301~30nに対する計算タスク割り当てを決定する。
【0056】
これにより、蓄電池と組み合わせることで、短時間の消費電力調整の機能は蓄電池の充放電によって実現し、蓄電池に十分に電力が充電された場合には、蓄電池からの電力も加味した計算タスク割り当てを実行することで、不安定電源である再エネ電源を計算実行に利用でき、また、安価にデマンドレスポンスや逆潮流防止機能を実現することができる。
【0057】
[第6の実施の形態]
第1乃至第5の実施の形態においては、多量の計算タスクを如何に分散して実行するかについて説明を行ったが、状況によっては、要求のあった計算タスクを複数の計算処理サーバ301~30nに対して全て割り当てたとしてもなお計算余力が残る場合がある。
【0058】
そこで、分散処理制御サーバ10に対して、計算処理サーバ30の何れかにおいて計算余力がある場合に実行するための換金用計算タスクを予め登録しておく。換金用計算タスクとは、仮想通貨に関するデータマイニングなど、処理することで対価が得られる換金可能な計算タスクのことをいう。データマイニングの他にも、計算力がより多くの収益を生む処理(レンダリングやシミュレーションなど)のストックがある場合には、それらを換金用計算タスクとして扱う。そして、計算タスク割り当て決定部17では、計算要求情報に基づく計算タスクを分散処理して実行してもなお計算余力がある場合に、計算余力のある計算処理サーバ30に対して換金用計算タスクを割り当てて実行させるようにする。
【0059】
これにより、計算余力がある場合に換金用計算タスクを実行することで利益を得ることが可能となる。また、換金用計算タスクを実行することで得た金額を用いて計算余力のない状況において系統電力からの電力を購入することで、実質的な電力の平準化を行うことが可能となる。
【0060】
[第7の実施の形態]
第1乃至第6の実施の形態においては、発電手段として自然エネルギー発電を採用した場合の電力の不安定さに対する解決策としての分散処理システムとして説明を行ったが、これに限定されるものではない。どのような原因であったとしても、電力供給が不安定となった計算処理サーバ30においては割り当てられた計算タスクを予定通りに処理できずに遅延が生じるおそれがある。そのため、第1乃至第6の実施の形態で説明した分散処理システムは、理由を問わず電力供給が不安定となった状況において、計算タスクの割り当てを変更することで、電力供給が不安定となった計算処理サーバ30に割り当てる計算タスク量を調整して全体として計算を安定的に処理するための発明としても機能する。
【0061】
すなわち、第7の実施の形態における分散処理システムは、計算要求の主体としてのクライアント端末と、計算処理を担う複数の計算処理サーバと、計算処理サーバに対する電力供給量を通知する電力供給量情報通知手段と、複数の前記計算処理サーバを用いた分散処理を制御する分散処理制御サーバとを備えた分散処理システムであって、分散処理制御サーバは、クライアント端末からの計算要求の内容を表す計算要求情報を取得する計算要求情報取得部と、電力供給量情報通知手段からの電力供給量情報を取得する電力供給量情報取得部と、少なくとも計算要求情報と電力供給量情報とに基づいて、複数の計算処理サーバの何れに対して何れの計算を実行させるかを定める計算タスク割り当てを決定する計算タスク割り当て決定部と、少なくとも計算タスクが割り当てられた計算処理サーバに対して計算に必要な計算用データを転送する計算用データ転送部と、決定された計算タスク割り当てに従って計算の分散処理を実行して順次計算結果を得る分散処理実行部と、計算タスク割り当てに関する所定の変更条件が満たされるか否かを判定する変更条件判定部と、変更条件が満たされた場合に、当該変更条件が定める規則に従って計算タスク割り当てを変更する計算タスク割り当て変更部とを備えるようにすることで、計算処理サーバの一部において電力供給量が不安定となることで計算能力の変動が生じたとしても、その状況を変更条件で判定して計算タスク割り当てを変更して対処できるため、一部の計算処理サーバに対する電力供給が不安定となったとしても、システム全体としては安定かつ高効率に分散処理を実現することが可能となる。
【0062】
[第8の実施の形態]
第1乃至第7の実施の形態においては、計算要求情報に基づいて複数の計算処理サーバ301~30nの何れに対して計算タスクを割り当てるかを決定する構成について説明したが、計算要求情報には、様々な条件指定を含ませることが可能である。
【0063】
計算要求情報に含ませることが可能な条件指定として、例えば、計算処理に要するコスト(費用)の条件が挙げられる。分散処理制御サーバ10において予め各計算処理サーバ301~30nにおける計算コストを把握しておき、計算タスク割り当て決定部13では、計算要求情報に含まれるコストに関する条件指定に基づいて、計算タスクを割り当てる計算処理サーバ30の組み合わせを決定するようにしてもよい。なお、コストの条件指定の方法はどのようなものであってもよい。例えば、想定される計算量の処理に係る費用の平均金額を基準として、平均金額よりも何%高い金額までを許容するといった条件指定や、平均金額よりも何%低い金額までで抑えることを要求する条件指定などが考えられる。また、コストが最安となる組み合わせを要求する条件指定なども考えられる。なお、計算コストを把握する手法としては、供給を受ける時間毎の電力単価などから算出される運用コストやサーバの償却コストなどを加味することが考えられる。
【0064】
また、計算要求情報に含ませることが可能な条件指定として、例えば、計算処理に要する速度(時間)の条件が挙げられる。分散処理制御サーバ10において予め各計算処理サーバ301~30nにおける計算速度を把握しておき、計算タスク割り当て決定部13では、計算要求情報に含まれる速度に関する条件指定に基づいて、計算タスクを割り当てる計算処理サーバ30の組み合わせを決定するようにしてもよい。なお、速度の条件指定の方法はどのようなものであってもよい。例えば、速度の指定に段階(高速、中速、低速ななど)を設けておき、何れの段階での計算を要求するかを指定するといった条件指定が考えられる。
【0065】
また、計算要求情報に含ませることが可能な条件指定として、例えば、発電手段に関する条件が挙げられる。分散処理制御サーバ10において予め各計算処理サーバ301~30nに対して電力を供給している発電手段を把握しておき、計算タスク割り当て決定部13では、計算要求情報に含まれる発電手段に関する条件指定に基づいて、計算タスクを割り当てる計算処理サーバ30の組み合わせを決定するようにしてもよい。具体的には、自然エネルギー発電のみで計算する条件指定、自然エネルギー発電と系統電力を組み合わせて計算することを許容する条件指定、系統電力のみで計算する条件指定などが考えられる。
【0066】
このように、計算要求情報に含ませる条件指定として、コストの条件指定、速度の条件指定、発電手段の条件指定などが考えられ、これらを組み合わせて計算要求を行うことができる点が特徴といえる。例えば、高コストとなることを許容し発電手段にもこだわらないが最速での計算を要求する条件指定もあれば、自然エネルギー発電のみで計算しかつコストが低くなることを要求する条件指定もあり得る。このように、様々な条件指定を計算要求情報に含ませるようにして、その条件指定に基づいて計算処理サーバ30の組み合わせを選択するようにすることで、ユーザの要求に沿った計算処理を提供することが可能となる。
【0067】
なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【0068】
100 分散処理システム
10 分散処理制御サーバ
11 計算要求情報取得部
12 発電量情報取得部(電力供給量情報取得部)
13 計算タスク割り当て決定部
14 計算用データ転送部
15 分散処理実行部
16 変更条件判定部
17 計算タスク割り当て変更部
18 記憶部
20、201~20m クライアント端末
30、301~30n 計算処理サーバ
40 通信ネットワーク
50、501~50n 発電手段
60、601~60n 発電量情報通知手段(電力供給量情報通知手段)
図1
図2
図3