JP3977765B2 - Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device - Google Patents

Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device Download PDF

Info

Publication number
JP3977765B2
JP3977765B2 JP2003093232A JP2003093232A JP3977765B2 JP 3977765 B2 JP3977765 B2 JP 3977765B2 JP 2003093232 A JP2003093232 A JP 2003093232A JP 2003093232 A JP2003093232 A JP 2003093232A JP 3977765 B2 JP3977765 B2 JP 3977765B2
Authority
JP
Japan
Prior art keywords
resource providing
resource
application
providing terminal
data
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.)
Expired - Fee Related
Application number
JP2003093232A
Other languages
Japanese (ja)
Other versions
JP2004302741A (en
Inventor
忠 松村
央 菅原
政弘 一見
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003093232A priority Critical patent/JP3977765B2/en
Publication of JP2004302741A publication Critical patent/JP2004302741A/en
Application granted granted Critical
Publication of JP3977765B2 publication Critical patent/JP3977765B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は,グリッドコンピューティングを用いたシステムにおけるリソース提供方法およびその監視装置に関し,特に,複雑でかつ膨大な計算処理を必要とするユーザ(顧客)に対してのソリューションとして,グリッドコンピューティング技術を用いて演算処理業者が演算処理を請け負い,またリソース提供者に対して演算のためのリソースの提供料としてポイントを還元し,そのポイントを使用させることにより,ネットワークビジネスの活性化を図る技術に関する。
【0002】
【従来の技術】
バイオ,物理,設計,金融などの分野では,データ解析のため,複雑かつ膨大な量の計算処理を行わなければならない。このような計算処理を必要とする事業者は,処理性能の良いスーパーコンピュータを購入するか,スーパーコンピュータの代わりとして多数のコンピュータを購入するか,あるいはこれらの設備を持つ請負業者に計算処理を委託(アウトソーシング)する必要がある。
【0003】
また,近年,グリッドコンピューティングは,高価なスーパーコンピュータが無くても複雑な計算やプログラムを短期間に実行できる技術として人気を高めている。しかし,この技術を利用したソフトウェアの開発,利用は進んでいるが,ビジネスとして推進しているものは少ない。
【0004】
従来の技術の例として,集中サーバが受け取った電算処理を分散処理できるように小さな処理単位(ユニット)に分割し,ユーザ端末が集中サーバに処理単位(ユニット)の送付を要求して演算処理を実行する分散型処理システムがある(例えば,特許文献1参照)。
【0005】
また,インターネット等を介したネットワーク上には家庭やオフィスの端末が接続され,電子マネーを使用したオンライン取引が行われている。
【0006】
【特許文献1】
特開2001−344199号公報
【0007】
【発明が解決しようとする課題】
複雑でかつ膨大な量の計算処理を行うスーパーコンピュータは,導入,維持コストが非常に高額になる。また,スーパーコンピュータの代替として安価な端末を多数購入し,処理させる場合も同様である。
【0008】
近年,インターネットが普及し,その設備も整備されていることから,月額料金定額制の24時間常時接続で容易にネットワークを介し,家庭やオフィスの端末はいつでも通信が行えるようになってきている。また,端末のプロセッサ処理能力も飛躍的に向上し,記憶媒体の容量も増加している。それは一般向け端末においても同様である。しかしながら,常にその処理能力をすべて使用しているとは限らないのが現状である。また,アプリケーションについても,常に使用しているとは限らない。
【0009】
本発明は,複雑かつ膨大な量の計算処理を必要とする事業者,あるいはそれを請け負う事業者が,インターネットなどのネットワークを介して無数に存在する家庭やオフィスの端末において,その利用率が低い時間帯に演算処理させるグリッドコンピューティング技術を用い,スーパーコンピュータなどの導入/維持コストを削減し,また,そのリソースやアプリケーションの提供料として提供者にポイントを還元し,そのポイントをネットショッピング等で使用可能とすることでリソースと顧客の確保につなげ,総合的な演算処理速度を速め,同時にネットショッピング等のネットワークビジネスの活性化を図ることを目的とする。
【0010】
特に,本発明は,上記グリッドコンピューティング技術を用いるにあたって,リソースを提供する端末に負担をかけずに,実際に使用可能な最適な多数のリソース提供端末を選出することができるシステムを構築することを目的とする。
【0011】
【課題を解決するための手段】
本発明のシステムは,上記課題を達成するため,ネットワークを介して接続されているデータベースを有する主処理装置と,一般家庭やオフィスの端末(以下,この端末をリソース提供端末,この端末の所有者をリソース提供者という)と,リソース提供端末を監視する機能を有し,リソース提供端末と主処理装置との間でデータを送受信する監視装置とから構成される。
【0012】
本システムは,演算処理を行う演算処理業者が,演算処理を必要とするユーザ(顧客)からデータを受け取り,主処理装置が,膨大な量の演算データをリソース提供端末でも処理可能な単位に分割し,その分割された演算データを監視装置経由でリソース提供端末に分配し,リソース提供端末が,演算処理を行った後にその処理結果を監視装置経由で主処理装置に送信し,主処理装置が,演算結果を収集し,その結果をユーザ(顧客)に返すグリッドコンピューティング技術を用いていることを特徴とする。
【0013】
また,リソース提供者が自端末(リソース提供端末)に演算用プログラム(以下,リソース提供端末用アプリケーションという)をダウンロードすることにより,リソース提供者が無意識のうちにすべてバックグラウンドで,演算処理が行われることを特徴とする。
【0014】
また,監視装置は,リソース提供端末から送信されてくるヘルスチェックパケットにより,自装置配下のリソース提供端末のリソース(CPU,メモリ,ハードディスク等)の使用状況を把握し,その収集情報からリソース提供端末のリソース使用率が低い時間帯(リソース利用可能時間)を統計的に算出した後,各リソース提供端末のスケジューリングを行い,リソースに見合ったデータ量の演算データを各リソース提供端末に分配することを特徴とする。
【0015】
また,リソース提供端末にはリソース提供端末用アプリケーションをインストールし,計算定義ファイルあるいはプログラムの一部と演算データとを,監視装置もしくは指定サイトからリソース提供端末用アプリケーションが自動的にダウンロードして演算処理を行うことを特徴とする。
【0016】
また,リソース提供端末用アプリケーションは,それをインストールした端末のCPU,メモリ等のリソースだけではなく,その端末が保持する他のアプリケーションをも提供可能とすることを特徴とする。以下,アプリケーションを提供する端末をアプリケーション提供端末,その所有者をアプリケーション提供者という。また,アプリケーションを使用する端末をアプリケーション使用端末,その所有者をアプリケーション利用者という。
【0017】
また,演算処理業者の装置は,演算処理に使用したリソース提供端末(アプリケーション提供端末,アプリケーション使用端末を含む)のリソース利用回数,リソース利用時間,処理を行ったデータ量,アプリケーション提供回数などを管理し,データベースに保持することで,所定のサービスを受けることのできるポイント数を自動的に計算し,そのポイントをリソース提供者/アプリケーション提供者に還元することを特徴とする。
【0018】
一方で,本システムにおいて,演算処理業者は,プロバイダ,インターネットショップ等(以下,ビジネス提携業者という)と提携し,リソース提供者/アプリケーション提供者は,還元されたポイントでプロバイダ費用の支払いやインターネットショッピングを行うことが可能であり,また,ポイントを電子マネーに換金し,他のインターネットショップ等で自由に使用することができる仕組みを提供することを特徴とする。
【0019】
以上の処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも,ネットワークを通して提供することも可能である。
【0020】
【発明の実施の形態】
以下,本発明の実施の形態について,図を用いて説明する。
【0021】
〔実施の形態1〕
図1は,本発明の実施の形態におけるグリッドコンピューティングによるシステムの構成例を示す図である。本システムは,ユーザ(顧客)から受け取った膨大なデータを一般家庭やオフィスのリソース提供端末3でも処理可能な単位に分割する主処理装置1と,リソース提供端末3を監視する複数の監視装置2と,演算処理を行う複数のリソース提供端末3とが,インターネット等のネットワーク4を介して相互に接続されている。
【0022】
リソース提供端末3は,あらかじめ監視装置2からリソース提供端末用アプリケーションをダウンロードする。そのリソース提供端末用アプリケーションにより,リソース提供者に意識させずに自動的にリソース提供を行うことができる。また,リソース提供端末3は,定期的にヘルスチェックパケットを送信することにより,自らのリソース使用状況を監視装置2に通知する。
【0023】
図2は,本実施の形態における主処理装置による分割/結合処理を示す図である。また,図3は,本実施の形態における主処理装置,監視装置およびリソース提供端末間でのデータの流れを示す図である。
【0024】
主処理装置1は,ユーザ(顧客)から受け取った演算前元データ100を,リソース提供端末3でも処理可能なように分割(データ分割処理)して演算前分割データ101とし,それをブロックごとに演算前データ102として配下の各監視装置2に送信する。このとき,どの監視装置2にどの演算前データ102を送信したかを判別するために,演算前データ102にヘッダを付与する。演算前データ102を受信した監視装置2は,その演算前データ102をリソース提供端末3で処理可能なデータ量の演算前データ103に細分し,各リソース提供端末3に送信する。
【0025】
これを受信したリソース提供端末3は,演算処理を行った後,監視装置2に処理結果の演算後データ104を返却する。監視装置2は,リソース提供端末3からの演算後データ104をまとめ,演算後データ105としたブロックを主処理装置1に返却する。主処理装置1は,監視装置2からの演算後データ105を収集して演算後収集データ106とし,データ結合処理を行い,その結果の演算後結果データ107をユーザ(顧客)に返却する。
【0026】
図4は,本実施の形態における監視装置の構成例を示す図である。また,図5は,本実施の形態におけるリソース提供端末の構成例を示す図である。監視装置2,リソース提供端末3は,それぞれ監視装置用アプリケーション20,リソース提供端末用アプリケーション30を備える。
【0027】
監視装置用アプリケーション20は,送受信部21,ユーザ管理部22,リソース提供端末情報管理部23,リソース提供端末ポイント情報管理部24,データ制御部25,アプリケーション所有情報管理部26,アプリケーション使用許可情報管理部27,アプリケーション制御部28,アプリケーション提供/使用ポイント情報管理部29を備える。また,リソース提供端末用アプリケーション30は,送受信部31,演算処理部32,データ制御部33,リソース管理部34,アプリケーション制御部35を備える。
【0028】
リソース提供者は,グリッドコンピューティングに参加するために,演算処理業者の監視装置2にアクセスし,リソース提供者登録を行う。登録が完了すると,ユーザ管理部22は,リソース提供端末用アプリケーション30とその端末ID(ライセンスキー)とを,送受信部21によりリソース提供端末3に送信する。
【0029】
この端末IDは,各リソース提供端末用アプリケーション30をインストールする端末に唯一のIDとする。また,この端末IDにより,リソース提供端末情報管理部23,リソース提供端末ポイント情報管理部24は,それぞれリソース提供端末テーブル200,リソース提供端末ポイントテーブル201を作成(初期化)する。リソース提供端末テーブル200,リソース提供端末ポイントテーブル201については,詳細を後述する。
【0030】
ここで,演算処理用にリソース提供端末3にインストールされたリソース提供端末用アプリケーション30は,データファイルと計算定義ファイルあるいはプログラムの一部を別々に扱い,それぞれを監視装置2からのリソース利用の要求があればダウンロードして取り込む機能を有する。計算定義ファイルは,依頼された演算処理を実行するための処理手続きが記載されたスクリプトまたはプログラムが格納されたファイルである。計算定義ファイルには,演算処理対象のデータの種類,データのサイズなどのデータの属性情報等についても格納されている。
【0031】
リソース提供端末用アプリケーション30に取り込む計算定義ファイルや,計算を行わせるためのプログラムが容易に変更可能であることにより,ベースとなるアプリケーションを変更する必要がなくなる。また,リソース提供端末用アプリケーション30が,計算定義ファイルをデータと同時にダウンロードして取り込むことにより,リソース提供者側の設定依存性がなくなる。よって,多様な計算処理を行わせることが可能となる。
【0032】
リソース提供端末3にリソース提供端末用アプリケーション30をインストールした後には,リソース提供端末3から監視装置2に定期的にヘルスチェックパケットが送信される。監視装置2は,そのヘルスチェックパケットを送受信部21で受信し,リソース提供端末情報管理部23によって,各リソース提供端末3の状況をリソース提供端末テーブル200に反映する。ヘルスチェックパケットについては,詳細を後述する。
【0033】
一方,演算処理を行う場合には,監視装置2にある監視装置用アプリケーション20のリソース提供端末情報管理部23によってリソース提供端末テーブル200のステータスをチェックし,演算処理可能なリソース提供端末3の端末IDを選出する。端末IDの選出は,CPU稼働率やメモリ使用率およびそれらの閾値をチェックすることで行われる。より多くのデータを演算処理可能なリソース提供端末3から,あるいは利用時間が少ないリソース提供端末3から優先的に選出される。
【0034】
また,いくらか演算処理を行わせることで,データ送信から結果データ受信までどれだけの時間がかかったかを算出し,ネットワークの通信速度およびCPU処理速度を加味した総合的な処理速度も算出し,端末ID選出の指標とすることができる。
【0035】
端末IDの選出を終えると,監視装置2は,データ制御部25においてリソース提供端末3に適した演算前データ103を取り出し,その演算前データ103を識別するための処理データ番号と送信先のリソース提供端末3の端末IDとを演算前データ103のヘッダに付与し,端末IDに対応する処理データ番号をリソース提供端末情報管理部23においてリソース提供端末テーブル200に保持し,送受信部21により対象となる端末IDをもつリソース提供端末3に演算前データ103を送信する。
【0036】
リソース提供端末3のリソース提供端末用アプリケーション30において,送受信部31で演算前データ103を受信する。次に,データ制御部33によりヘッダを分離して退避し,演算処理部32で演算処理を行い,その結果である演算後データ104にデータ制御部33により再びヘッダを付与し,その演算後データ104を送受信部31から監視装置2に送信する。
【0037】
監視装置用アプリケーション20は,演算後データ104を送受信部21によって受信すると,データ制御部25によりヘッダを取り除いた後,結果用データとして保持する。同時に,リソース提供端末ポイント情報管理部24により,リソース提供端末ポイントテーブル201における対象となる端末IDのポイント加算を行う。
【0038】
図6は,本実施の形態におけるヘルスチェックパケットの例を示す図である。図6の例のヘルスチェックパケットは,情報として,各リソース提供端末3を識別するためのユーザ情報(端末ID)と,リソース提供開始時間,終了時間を示す利用可能時間(START),利用可能時間(END)と,CPU,メモリ,ハードディスクの使用率の閾値を示すCPU使用率(閾値),メモリ使用率(閾値),ハードディスク使用率(閾値)と,CPU,メモリ,ハードディスクの使用率の現状値を示すCPU使用率(現状値),メモリ使用率(現状値),ハードディスク使用率(現状値)と,リソース提供端末3が提供可能なアプリケーションを示すアプリケーションリストとを有する。
【0039】
リソース提供端末用アプリケーション30の起動中,もしくはリソース提供可能時は,ヘルスチェックパケットがリソース提供端末3から監視装置2に定期的に送信される。ヘルスチェックパケットには,リソース提供端末3におけるリソース使用率の現状値が含まれている。これにより,監視装置2は,配下のリソース提供端末3の稼動状況を把握することができる。
【0040】
リソース提供者がリソース提供時間を特に指定しない場合,監視装置2は,一定期間のヘルスチェックパケットから統計的に各リソース提供端末3のリソース利用可能時間帯を算出する。リソース提供者がリソース提供時間を指定する場合には,リソース提供端末用アプリケーション30にリソース提供時間を設定し,監視装置2は,ヘルスチェックパケットによってこの情報を得る(このため,監視装置2側でのリソース利用可能時間の算出は不要となる)。同様に,リソース利用率(CPU使用率,メモリ使用率,ハードディスク使用率)の閾値についても,リソース提供者からの指定がなければ,監視装置2側で自動設定可能とする。
【0041】
図7は,本実施の形態におけるリソース提供端末テーブルの例を示す図である。図7の例のリソース提供端末テーブル200は,各リソース提供端末3ごとの情報として,各リソース提供端末3を識別するための端末IDと,リソース提供開始時間,終了時間を示す利用可能時間(START),利用可能時間(END)と,CPU,メモリ,ハードディスクの使用率の閾値を示すCPU使用率(閾値),メモリ使用率(閾値),ハードディスク使用率(閾値)と,CPU,メモリ,ハードディスクの使用率の現状値を示すCPU使用率(現状値),メモリ使用率(現状値),ハードディスク使用率(現状値)と,送信した演算前データ103を識別するための処理データ番号と,リソース提供が可能であるか否かを示すステータスとを有する。
【0042】
このようなリソース提供端末テーブル200によって,監視装置2は,リソース提供端末3から送られてくるヘルスチェックパケットから,配下リソース提供端末3のリソース利用可能時間を管理し,演算処理を行わせる時間帯をスケジューリングする。また,主処理装置1は,監視装置2が確保しているリソースからそれに見合った演算データ(演算前データ102)を算出し,監視装置2に送信する。監視装置2は,管理しているリソース提供端末テーブル200をもとに各リソース提供端末3に見合った演算前データ103を算出し,送信する。
【0043】
図8は,本実施の形態におけるリソース提供端末ポイントテーブルの例を示す図である。図8の例のリソース提供端末ポイントテーブル201は,各リソース提供端末3ごとの情報として,各リソース提供端末3を識別するための端末IDと,演算処理を行った回数を示すリソース利用回数と,リソースを演算処理に利用した総時間を示すリソース利用時間と,演算前データ103の総量と演算後データ104の総量とを加えたデータ量と,それらの情報をもとに計算されるポイント数とを有する。
【0044】
監視装置2は,配下の各リソース提供端末3に行わせた演算処理に関して,リソース利用回数,リソース利用時間,データ量等のリソースの提供に関する情報を保持し,これらの情報をもとにあらかじめ定められた算出方法によってポイントを算出し保持する。また,後述のアプリケーション提供時,使用時においても,アプリケーションの提供に関する情報を保持し,その情報をもとにしたアプリケーション提供/使用分のポイントを保持する。
【0045】
監視装置2がリソースの提供に関する情報やアプリケーションの提供に関する情報を定期的に主処理装置1に送信し,主処理装置1でそれらの情報からポイントを算出し,保持するようにしてもよい。
【0046】
演算処理業者は,リソース提供者にリソース提供料としてポイントを還元し,また,リソース提供者がそのポイントを自由に使用できるようにするためにビジネス提携業者(プロバイダやインターネットショップなど)とビジネス提携し,ビジネス提携業者が所有するコンテンツなどと保持しているポイントのデータベースとを連携させる。
【0047】
ここで,ポイントの算出に関しては,様々な算出方法が考えられる。以下,例として4つのポイント算出方法を挙げる。
【0048】
(1) 「ポイント数=リソース利用回数」
リソース提供端末3のリソースを利用した時間やデータの処理量に関係なく,リソース提供装置3のリソースを利用した回数をポイント数とする。
【0049】
(2) 「ポイント数=リソース利用時間」
リソース提供端末3のリソースを利用した時間をポイント数とする。リソース提供端末3のデータの処理量に関係なく,時間あたり同ポイントとする。
【0050】
(3) 「ポイント数=データ量」
リソース提供端末3で演算処理したデータの処理量に応じた値をポイント数とする。この算出方法では,演算処理したデータの処理量(データ量)がそのままポイント数になるため,ハードディスクやメモリ容量が大きい,CPU処理速度が速いといったスペックが高いリソース提供端末3や,通信速度が速い回線に接続されているリソース提供端末3のポイントが高くなる。
【0051】
(4) 「ポイント数=データ量/リソース利用時間」
単位時間あたりのデータの処理量をポイント数とする。短時間で多くのデータを処理できるリソース提供端末3のポイントが高くなる。
【0052】
図9は,本実施の形態における監視装置とリソース提供端末の処理シーケンス図である。リソース提供端末3は,リソース提供開始時間になると(Q1),監視装置2との間にセッションを確立し(Q2),監視装置2に対してヘルスチェックパケットの送信を開始する(Q3)。以後,定期的にヘルスチェックパケットが送信される(Q8,Q14)。これを受信した監視装置2は,その内容を図7に示すようなリソース提供端末テーブル200に追加する(Q4)。
【0053】
ここで,ヘルスチェックパケットは一定間隔でリソース提供端末3から監視装置2に送信されるが,リソース提供端末3は定額の常時接続回線を使用しているため,監視装置2との情報の送受信による課金は特に生じない。
【0054】
また,監視装置2は,配下のリソース提供端末3の状態を監視しており,リソース提供端末テーブル200から,演算処理させる端末を選出する。選出時にはリソース提供端末テーブル200によりリソース提供端末3の稼動状況から順位付けを行い,順位が高いもの(稼動率が低いものやリソース提供時間が短いもの)から順に処理を行わせる。リソース提供端末3に処理を行わせている間,何らかの障害で一定時間以上リソース提供端末3からのヘルスチェックパケットを受信できない場合の考慮や,処理結果の整合性チェックを行うために,同じデータに対する処理を複数のリソース提供端末3に行わせる。これによって,演算処理の信頼性を向上させることができる。
【0055】
監視装置2は,リソース提供端末3を選出すると,その端末に対して演算要求を送信する(Q5)。この際に,監視装置2は実際に処理させる演算前データ103と計算定義ファイルを送信する。また,主処理装置1と同様に,どのリソース提供端末3にどの演算前データ103を送信したかを判別するために,演算前データ103にヘッダを付与する。
【0056】
これを受信したリソース提供端末3は,監視装置2に応答を返却し(Q6),演算処理を開始する(Q7)。演算処理が完了したら(Q9),処理終了通知を監視装置2に送信する(Q10)。この際に,リソース提供端末3は演算結果のデータ(演算後データ104)を送信する。
【0057】
監視装置2は,受信した演算後データ104を保存し(Q11),リソース提供端末3に応答を返却する(Q12)。リソース提供端末3は,演算に使用した演算前データ103,計算定義ファイル,および演算後データ104を自端末から削除する(Q13)。
【0058】
リソース提供端末3は,再び監視装置2からの演算要求に対してヘルスチェックパケットを送信しながら(Q14)待機する。リソース提供端末3は,リソース提供者が設定したリソース提供終了時間になると(Q15),監視装置2にリソース提供時間終了通知を送信し(Q16),監視装置2はリソース提供端末テーブル200からその端末を削除し(Q17),セッションを切断する(Q18)。
【0059】
ここで,リソース提供者がリソース提供開始/終了時間を設定していない場合は,リソース提供端末用アプリケーション30は常時起動しているものとする。なお,監視装置2とリソース提供端末3間のデータ送受信には,暗号化技術や認証技術を用い,リソース提供端末3が使用する演算前データ103,計算定義ファイル,および演算後データ104は容易に閲覧できないように暗号化され,プロテクトされているものとする。
【0060】
図10は,本実施の形態における監視装置による演算処理フローチャートである。監視装置2において,まず,送受信部21は,配下の各リソース提供端末3から定期的に送られてくるヘルスチェックパケットを受信し,リソース提供端末情報管理部23は,受信したヘルスチェックパケットをもとにリソース提供端末テーブル200を更新する(ステップS10)。
【0061】
送受信部21が主処理装置1から演算前データ102を受けると(ステップS11),データ制御部25は,リソース提供端末情報管理部23が管理するリソース提供端末テーブル200で配下の各リソース提供端末3のステータスをチェックし,リソースの提供が可能であるリソース提供端末3を抽出し(ステップS12),また,CPU使用率,メモリ使用率,ハードディスク使用率等をチェックし,優先的に演算処理を行わせるリソース提供端末3を選出する(ステップS13)。
【0062】
次に,データ制御部25は,演算前データ102からそれぞれのリソース提供端末3に適した演算前データ103を取り出し(ステップS14),それぞれの演算前データ103にその処理データ番号と対応する端末IDとをヘッダとして付与し(ステップS15),送受信部21は,それぞれのリソース提供端末3に,対応する演算前データ103を送信する(ステップS16)。
【0063】
送受信部21がリソース提供端末3から演算後データ104を受信すると(ステップS17),データ制御部25は,受信した演算後データ104からヘッダを排除し(ステップS18),その演算後データ104を保存する(ステップS19)。また,リソース提供端末ポイント情報管理部24は,リソース提供端末ポイントテーブル201を更新する(ステップS20)。
【0064】
各リソース提供端末3からすべてのもとの演算前データ102を構成する演算前データ103の演算結果である演算後データ104を受信すると(ステップS21),送受信部21は,受信したすべての演算後データ104を合わせた演算後データ105を主処理装置1に送信する(ステップS22)。
【0065】
以上のように,演算処理業者は,グリッドコンピューティング技術を用いることにより,膨大な量の演算処理のために高価なスーパーコンピュータや,それに代わる多数のコンピュータを導入する必要がない。このため,初期導入費や維持費などのコストを削減することができる。また,実際に処理を行うリソース提供端末3の処理能力は飛躍的に伸びていっているため,設備の代替を考慮する必要がない。また,インターネットなどを介して接続されている端末(リソース提供端末3)を使用するため,全世界の端末(リソース提供端末3)を利用することが可能であり,スーパーコンピュータ1台で長期間要した演算処理を短期間で行うことが可能である。
【0066】
特に,監視装置2は,リソース提供端末3から定期的に送信されるヘルスチェックパケットを受信することにより,リソース提供端末3に対しての通信可否,およびリソース提供端末3の利用可能な時間帯を把握することができる。これにより,確実に演算処理可能なリソース提供端末3に対してのみ演算前データ103を送信することが可能であり,利用時間が短いリソース提供端末3に優先的に処理させたり,意図的な電源断や回線断および高負荷などで,処理中に何らかの障害でリソース提供端末3と通信できなくなった場合や演算結果の整合性チェックを考慮して,利用可能な時間帯が重なる複数のリソース提供端末3に同じ処理を行わせたりと,多様なスケジューリングを行うことが可能となる。
【0067】
また,リソース提供端末3のリソースを把握できることから,各監視装置2やリソース提供端末3に適切な演算前データ103を送信することができる。さらに,リソース提供端末3における演算処理はすべてバックグラウンドで行われ,リソース使用率の現状値と閾値の比較,適切なリソース利用時間を自動算出することでリソース提供者が自端末(リソース提供端末3)を利用することに対する影響と負担を少なくすることができる。より多くの時間帯でより多くのリソース提供端末3を確保できれば,24時間常に演算処理を実行して処理結果を得ることができる。
【0068】
演算処理業者が所有するポイントデータベースにビジネス提携業者のコンテンツを連携させることで,演算処理業者が収集したリソース提供者をそのまま顧客とすることが可能である。また,ビジネス提供業者の商品を購入するためにリソース提供者として加入することも想定されるため,演算処理業者のリソース確保とビジネス提供者の顧客確保に対し相互作用的な効果がある。
【0069】
〔実施の形態2〕
図1に示すようなグリッドコンピューティングによるシステムの構成において,あるリソース提供者が,他のリソース提供者に,監視装置2を介して所有するアプリケーションを提供することができる。
【0070】
以下,所有するアプリケーションを提供するリソース提供者をアプリケーション提供者といい,提供されたアプリケーションを利用するリソース提供者をアプリケーション利用者というものとする。また,アプリケーション提供者のリソース提供端末3をアプリケーション提供端末3aとし,アプリケーション利用者のリソース提供端末3をアプリケーション使用端末3bとして区別して説明する。1つのリソース提供端末3が,アプリケーション提供端末3aとなることもあるし,アプリケーション使用端末3bとなることもある。
【0071】
アプリケーション提供者がアプリケーションを提供する場合,アプリケーション提供端末3aのリソース提供端末用アプリケーション30は,インストール済みのアプリケーションのリストをヘルスチェックパケットによって,監視装置2に送信する。
【0072】
自端末(アプリケーション使用端末3b)にインストールされていないアプリケーションを使用したいアプリケーション利用者は,監視装置2に使用要求を送信する。
【0073】
これを受信した監視装置2は,保持しているアプリケーションリストにより対象のアプリケーションを保持しているリソース提供端末3(アプリケーション提供端末3a)を選出し,アプリケーションを取得する。監視装置2は,アプリケーションの使用期間を設定し,アプリケーションをアプリケーション利用者のリソース提供端末3(アプリケーション使用端末3b)に送信する。
【0074】
図11は,本実施の形態における監視装置とアプリケーション提供端末とアプリケーション使用端末の処理シーケンス図である。アプリケーションを使用するアプリケーション利用者は,アプリケーション使用端末3bのリソース提供端末用アプリケーション30によって,演算処理業者の監視装置2にアプリケーション使用の要求を出す(Q20)。
【0075】
この要求を送受信部21によって受信した監視装置用アプリケーション20は,アプリケーション所有情報管理部26によって,要求されているアプリケーションを持つ端末IDをアプリケーション所有テーブル202より検出し,ステータスチェック後,アプリケーション提供端末3aを選出する(Q21)。アプリケーション所有テーブル202にないアプリケーションの要求,あるいはステータス異常でアプリケーション提供端末3aからアプリケーションを取り出せない場合には,エラー応答する。アプリケーション所有テーブル202については,詳細を後述する。
【0076】
正常に端末IDを選出できたら,次に,送受信部21によって選出したアプリケーション提供端末3aにアプリケーションの要求を送信し(Q22),これを送受信部31よって受信したアプリケーション提供端末3aは,アプリケーション制御部35によりアプリケーションを取り出し,送受信部31から監視装置2にアプリケーションを送信する(Q23)。
【0077】
これを受信した監視装置2は,アプリケーション制御部28によって自領域にコピー(格納)する(Q24)。次に,コピー完了通知をアプリケーション使用端末3bに送信する(Q25)。
【0078】
これを受信したアプリケーション使用端末3bは,監視装置2にコピーされたアプリケーションをインストールするために,インストール開始要求にて監視装置2のインストーラを起動し(Q26),監視装置2は,インストールを開始する(Q27)。
【0079】
監視装置2おいて,インストールが終了すると(Q28),アプリケーション使用許可情報管理部27によって,アプリケーション名と,使用を許可する端末IDと,使用期間タイマと,アプリケーションの格納場所とを保持するアプリケーション使用許可テーブル203を作成する(Q29)。もし,すでにインストール済みのアプリケーションであれば,アプリケーション使用許可情報管理部27は,インストールを行わずに端末IDを登録し,使用期間タイマのみスタートさせる。アプリケーション使用許可テーブル203については,詳細を後述する。
【0080】
同時に,アプリケーション提供/使用ポイント情報管理部29によって,アプリケーション提供/使用ポイントテーブル204を作成し(Q30),アプリケーション提供端末3aのポイントには加算を,アプリケーション使用端末3bのポイントには減算を行う。この後,アプリケーション使用端末3bにインストール完了通知を行う(Q31)。以後,アプリケーション利用者は,アプリケーション使用端末3bで監視装置2にアクセスし,アプリケーションを使用することができる(Q32)。
【0081】
使用期間タイマが満了した場合には(Q33),アプリケーション制御部28はアプリケーションの削除を行う(Q34)。この際に,まだ他のアプリケーション使用端末3bで対象のアプリケーションを使用している場合には,アプリケーション使用許可情報管理部27において,アプリケーション使用許可テーブル203から端末IDのみ削除し,使用できないようにアクセス制限を行う。当然,アプリケーション使用時には,アプリケーション使用許可テーブル203において許可されているかをチェックする。
【0082】
以上,図11に従って監視装置2とアプリケーション提供端末3aとアプリケーション使用端末3bの処理シーケンスを説明したが,監視装置2でアプリケーションをインストールせずに,監視装置2からアプリケーション使用端末3bにアプリケーションをダウンロードし,アプリケーション使用端末3bでアプリケーションをインストールし,使用期限が定められたライセンスキーを用いて,アプリケーション利用者がアプリケーションを使用できるようにしてもよい。
【0083】
図12は,本実施の形態におけるアプリケーション所有テーブルの例を示す図である。図12の例のアプリケーション所有テーブル202は,各アプリケーション提供端末3aごとの情報として,アプリケーション提供端末3a(リソース提供端末3)を識別するための端末IDと,所有するアプリケーションのアプリケーション名と,アプリケーション提供端末3aからのアプリケーション取り出しの可否を示すステータスとを有する。
【0084】
図13は,本実施の形態におけるアプリケーション使用許可テーブルの例を示す図である。図13の例のアプリケーション使用許可テーブル203は,各アプリケーションごとの情報として,使用されているアプリケーションのアプリケーション名と,アプリケーションの使用を許可しているアプリケーション使用端末3bの端末IDと,使用期間の残りを示す使用期間残りタイマ値と,アプリケーションが格納されている場所を示すアプリケーション格納場所の情報を持つ。
【0085】
図14は,本実施の形態におけるアプリケーション提供/使用ポイントテーブルを示す図である。図14の例のアプリケーション提供/使用ポイントテーブル204は,各アプリケーション提供端末3a(またはアプリケーション使用端末3b)ごとの情報として,アプリケーション提供端末3a(またはアプリケーション使用端末3b)を識別するための端末IDと,アプリケーションを提供した総期間を示す提供期間と,アプリケーションを使用した総期間を示す使用期間と,それらの情報をもとに計算されるポイント数の情報を持つ。
【0086】
また,図14の例にはないが,各アプリケーション提供端末3a(アプリケーション使用端末3b)ごとに,各アプリケーションの提供回数や使用回数をアプリケーションの提供に関する情報として保持し,それらの情報をもとにポイントを算出するようにしてもよい。
【0087】
演算処理業者は,アプリケーション提供者にアプリケーション提供料としてポイントを還元し,アプリケーション提供者がそのポイントを自由に使用できるようにするため,ビジネス提携業者(プロバイダやインターネットショップなど)とビジネス提携し,ビジネス提携業者が所有するコンテンツなどと保持しているポイントのデータベースとを連携させる。
【0088】
図15は,本実施の形態における監視装置によるアプリケーション提供処理フローチャートである。監視装置2において,まず,送受信部21は,配下の各アプリケーション提供端末3a(リソース提供端末3)から定期的に送られてくるヘルスチェックパケットを受信し,アプリケーション所有情報管理部26は,受信したヘルスチェックパケットのアプリケーションリストをもとにアプリケーション所有テーブル202を更新する(ステップS30)。
【0089】
送受信部21がアプリケーション使用端末3bからアプリケーションの使用要求を受けると(ステップS31),アプリケーション所有情報管理部26は,アプリケーション所有テーブル202において要求されたアプリケーションを提供可能なアプリケーション提供端末3aを検索する(ステップS32)。
【0090】
アプリケーション所有テーブル202にないアプリケーションが要求されていたり,要求されたアプリケーションを所有するすべてのアプリケーション提供端末3aのステータスが提供不可であったりすることにより,要求されたアプリケーションを提供可能なアプリケーション提供端末3aが存在しなければ(ステップS33),アプリケーション使用端末3bにエラー応答する(ステップS34)。
【0091】
提供可能なアプリケーション提供端末3aが存在すれば,送受信部21は,そのアプリケーション提供端末3aにアプリケーションの提供を要求し,アプリケーションを取得する(ステップS35)。
【0092】
アプリケーション制御部28は,取得したアプリケーションのインストールを行い(ステップS36),アプリケーション使用許可情報管理部27は,アプリケーション使用許可テーブル203にアプリケーションの使用期間を設定し(ステップS37),アプリケーション提供/使用ポイント情報管理部29は,アプリケーション提供/使用ポイントテーブル204でポイント処理を行う(ステップS38)。
【0093】
アプリケーション使用端末3bにインストール完了を通知する(ステップS39)。以降,アプリケーション使用端末3bは,使用期間の終了までアプリケーションを使用することが可能となる。
【0094】
アプリケーションの使用期間が終了すると(ステップS40),アプリケーション制御部28は,使用期間が終了したアプリケーションの削除を行う(ステップS41)。
【0095】
以上のように,アプリケーションの転送時に監視装置2を経由し,監視装置2が使用期間を設定することで,使用期間に見合ったライセンス料(ポイント)を要求し,不当なコピーによる使用を防ぐことができる。また,一時的にアプリケーションを使用したいアプリケーション利用者にとっては,高額なライセンス料を払ってアプリケーションを購入するよりも,コストを抑えることができる。
【0096】
以上,本発明の2つの実施の形態を,実施の形態1,実施の形態2として別々に説明したが,1つのグリッドコンピューティングのシステムにおいて,実施の形態1,実施の形態2を同時に実施することも可能である。このとき,実施の形態1のリソース提供端末ポイントテーブル201と,実施の形態2のアプリケーション提供/使用ポイントテーブル204とを合わせ,1つのテーブルでポイントを管理できるようにしてもよい。
【0097】
【実施例】
図16は,本発明の実施例におけるグリッドコンピューティングを用いたシステムの構成例を示す図である。図16の例では,演算処理業者は,拠点1に主処理装置1と監視装置2aを有し,また,拠点1とインターネット4aで接続された拠点2に監視装置2bを有する。このように,主処理装置1とは別の場所に,主処理装置1とネットワーク4で接続された監視装置2が存在してもよい。
【0098】
また,図16の例では,監視装置2bは,地域IP網4b(例えば,広域LANや社内LANなど)を介してリソース提供者のリソース提供端末3(a〜d)に接続されている。また,監視装置2a,2bは,インターネット4a,ISP(Internet Service Provider ),地域IP網4cを介してリソース提供者のリソース提供端末3e〜3hに接続されている。リソース提供端末3a〜3hは,常時接続回線で接続されている。このように,監視装置2は,様々なネットワーク4により,リソース提供端末3と接続される。
【0099】
また,図16の例では,ネット銀行,ビジネス提携業者(ネットショップ,プロバイダ),アプリケーション関連業者の端末が,インターネット4aにより接続されており,リソース提供端末3は,ポイント等を利用して様々なサービスを受けることができる。
【0100】
ユーザ(顧客)が演算前元データ100を演算処理業者に渡すときは,演算処理業者に直接持ち込んでもよいし,自らが有する端末でインターネットを介して演算処理業者の主処理装置1に送信してもよい。
【0101】
膨大な演算処理を必要とするユーザ(顧客)は,演算前元データ100を演算処理業者に渡す。演算処理業者は,主処理装置1においてこの演算前元データ100をリソース提供端末3が処理できる単位まで分割する(演算前分割データ101の生成)。
【0102】
次に,主処理装置1は,配下の監視装置2に分割データの一部(演算前データ102)を送信する。また,どの監視装置2にどの演算前データ102を送信したかを判別するためにヘッダを付与する。このとき,主処理装置1から監視装置2へのデータ送受信においてインターネット4aを介す場合,データの盗聴や改竄が行われないように暗号化技術や認証技術を用いる。また同時に,主処理装置1は,リソース提供端末3にインストールするリソース提供端末用アプリケーション30,および計算定義ファイルを監視装置2に配布する。
【0103】
一方,リソース提供者はこのリソース提供端末用アプリケーション30を監視装置2から自端末(リソース提供端末3)にダウンロードする。また,必要であれば,リソース提供者は演算処理業者に対し自端末(リソース提供端末3)におけるリソース提供時間(開始時間〜終了時間),および自端末(リソース提供端末3)の監視を行わせる監視装置2を設定する。リソース提供端末用アプリケーション30は,リソース提供者が設定したリソース提供開始時間やリソース提供端末3の起動時にその動作を開始する。
【0104】
監視装置2は,配下の各リソース提供端末3に,それぞれ適した演算前データ103と計算定義ファイルとを配布する。このとき,どのリソース提供端末3にどの演算前データ103を送信したかを判別するためにヘッダを付与する。
【0105】
各リソース提供端末3は,監視装置2から配布された演算前データ103を受け取り,演算処理を行い,その演算結果である演算後データ104を監視装置2に送信する。
【0106】
監視装置2は,自装置配下のリソース提供端末3から配布した演算前データ103に対応する結果(演算後データ104)をすべて受信すると,主処理装置1に結果(演算後データ105)を返却する。
【0107】
主処理装置1では,演算前データ102を配布したすべての監視装置2から演算後データ105を受信すると,そのデータ(演算後収集データ106)をまとめて演算後結果データ107とし,ユーザ(顧客)に対し結果(演算後結果データ107)を送る。
【0108】
以上のように,監視装置2が監視するリソース提供端末3の数が多く,また,インターネットを介した世界の拠点に監視装置2を配置することで,24時間利用できるリソース提供端末3を確保し,サイクリックに演算処理を行わせることができる。
【0109】
また,演算処理業者は,リソース提供端末ポイントテーブル201をもとに各リソース提供者に対してのリソース使用料を算出し,各リソース提供者に還元する。
【0110】
図17は,本実施例におけるリソース提供のポイントの流れの例を示す図である。リソース提供者は,演算処理業者に対してリソースを提供し(P10),演算処理業者は,リソース提供者のポイントデータベース(例えば,リソース提供端末ポイントテーブル201の該当するリソース提供者のポイント数)にポイントを加算する(P11)。
【0111】
リソース提供者は,蓄積されたポイントにより,演算処理業者が提携しているネットショップ等のビジネス提携業者での商品購入,代金支払いを行い(P12),ビジネス提携業者は,リソース提供者のポイントを消費する(P13)。
【0112】
演算処理業者は,リソース提供者のポイントデータベースから商品や支払いの代金と対価のポイントを減算し(P14),減算された分のポイントと対価となる代金を電子マネー等でビジネス提携業者に支払う(P15)。
【0113】
図18は,本実施例におけるアプリケーション提供のポイントの流れを示す図である。アプリケーション提供者は,演算処理業者を介してアプリケーション利用者にアプリケーションを提供する(P20)。
【0114】
演算処理業者は,アプリケーション利用者のポイントデータベース(アプリケーション提供/使用ポイントテーブル204の該当するアプリケーション提供者/使用者のポイント数)から,期間限定のライセンス料分のポイントを減算し(P21),その分のポイントをアプリケーション提供者のポイントデータベースに加算するか(P22),または,アプリケーションの著作権等を所有するアプリケーション関連業者に電子マネー等で支払う(P23)。これにより,アプリケーション利用者はアプリケーションを使用することができる(P24)。
【0115】
アプリケーション提供者は,加算されたポイントで演算処理業者が提携しているアプリケーション関連業者から,アプリケーションを購入する(P25)。アプリケーション関連業者は,アプリケーション提供者のポイントを消費する(P26)。
【0116】
演算処理業者は,アプリケーション提供者のポイントデータベースからアプリケーション代金と対価のポイントを減算し(P27),減算された分のポイントと対価となる代金を電子マネー等でアプリケーション関連業者に支払う(P28)。
【0117】
以上のように,顧客となる多数のリソース提供者/アプリケーション提供者を保有する演算処理業者とビジネス提携することは,ビジネス提携業者にとって自ビジネスのマーケット拡大につながる。逆に,ポイントでしか購入できない商品がビジネス提携業者側にある場合には,商品購入を目的として多くのリソース提供者が加入してくるため,演算処理業者にとってより多くのリソース確保につながる。
【0118】
また,リソース提供者/アプリケーション提供者が還元されたポイントを電子マネーに換金する場合には,ポイントから電子マネーへの換金率を低くすることで,ビジネス提携業者に対して顧客を集めることができる。
【0119】
以上,本発明の実施の形態および実施例の特徴を列挙すると,以下の通りである。
【0120】
(付記1) 要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおけるリソース提供方法であって,
前記監視装置が,前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する過程と,
前記監視装置が,前記主処理装置から演算処理対象の演算データを受け取る過程と,
前記監視装置が,前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する過程と,
前記監視装置が,演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する過程と,
前記監視装置が,演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
【0121】
(付記2) 付記1記載のグリッドコンピューティングを用いたシステムにおけるリソース提供方法において,
前記リソース提供端末が,前記リソース提供端末用アプリケーションにより,自動的に計算定義ファイルまたは計算用プログラムの一部と,演算データとを前記監視装置から受信する過程と,
前記リソース提供端末が,前記リソース提供端末用アプリケーションにより,自動的に演算処理を実行する過程と,
前記リソース提供端末が,前記リソース提供端末用アプリケーションにより,自動的に演算結果を前記監視装置に送信する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
【0122】
(付記3) 付記1記載のグリッドコンピューティングを用いたシステムにおけるリソース提供方法において,
前記監視装置が,前記各リソース提供端末が所有するアプリケーションの情報を記憶し保持する過程と,
前記監視装置が,いずれかのリソース提供端末からのアプリケーション使用要求を受ける過程と,
前記監視装置が,前記使用要求されたアプリケーションを提供可能なリソース提供端末を選出する過程と,
前記監視装置が,前記使用要求されたアプリケーションを提供可能なリソース提供端末が存在する場合に,そのリソース提供端末から前記使用要求されたアプリケーションを取得する過程と,
前記監視装置が,前記アプリケーションの使用を要求するリソース端末に,前記取得したアプリケーション自体またはそのアプリケーションの処理機能を提供する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
【0123】
(付記4) 付記1から付記3までのいずれかに記載のグリッドコンピューティングを用いたシステムにおけるリソース提供方法において,
前記主処理装置または前記監視装置が,各リソース提供端末ごとに,リソースの提供に関する情報またはアプリケーションの提供に関する情報を管理する過程と,
前記主処理装置または前記監視装置が,前記管理されたリソースの提供に関する情報またはアプリケーションの提供に関する情報をもとに,電子マネーに換算可能なポイントを計算し,それを保持する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
【0124】
(付記5) 要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおける監視装置であって,
前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する手段と,
前記主処理装置から演算処理対象の演算データを受け取る手段と,
前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する手段と,
演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する手段と,
演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する手段とを備える
ことを特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。
【0125】
(付記6) 付記5記載のグリッドコンピューティングを用いたシステムにおける監視装置において,
各リソース提供端末のリソースの提供に関する情報と,その情報から計算される電子マネーに換算可能なポイントとを把握するためのリソース提供端末ポイント情報を管理するリソース提供端末ポイント情報管理手段を備える
ことを特徴とする特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。
【0126】
(付記7) 付記5または付記6記載のグリッドコンピューティングを用いたシステムにおける監視装置において,
各リソース提供端末が所有するアプリケーションを把握するためのアプリケーション所有情報を管理するアプリケーション所有情報管理手段を備える
ことを特徴とする特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。
【0127】
(付記8) 付記7記載のグリッドコンピューティングを用いたシステムにおける監視装置において,
各リソース提供端末のアプリケーションの提供に関する情報と,その情報から計算される電子マネーに換算可能なポイントとを把握するためのアプリケーション提供/使用ポイント情報を管理するアプリケーション提供/使用ポイント情報管理手段を備える
ことを特徴とする特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。
【0128】
(付記9) 要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおける監視装置のコンピュータが実行するためのプログラムであって,
前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する処理と,
前記主処理装置から演算処理対象の演算データを受け取る処理と,
前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する処理と,
演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する処理と,
演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する処理とを,
コンピュータに実行させるためのグリッドコンピューティングを用いたシステムにおける監視装置用プログラム。
【0129】
(付記10) 要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおけるリソース提供端末のコンピュータが実行するためのプログラムであって,
前記監視装置に自端末のリソース使用状況を伝えるためのヘルスチェックパケットを送信する処理と,
前記監視装置から演算データとその演算データに対する処理内容が記述された計算定義情報または計算用プログラムとを受信する処理と,
前記監視装置から受信した演算データを,前記計算定義情報または計算用プログラムに従って演算処理し,処理結果のデータを前記監視装置へ返送する処理とを,
当該リソース提供端末におけるバックグランウド処理としてコンピュータに実行させるための,グリッドコンピューティングを用いたシステムにおけるリソース提供端末用プログラム。
【0130】
【発明の効果】
以上のように,本発明では,グリッドコンピューティング技術を用いることにより,要求された演算処理対象の量の演算処理を行うための初期設備コストを大幅に削減することができ,また,演算処理時間を短縮することができるため,演算処理業者は,ユーザに対して安価でスピーディなサービスを提供することができる。
【0131】
また,リソース提供端末が多ければ多いほど演算処理時間を短縮できることになるが,さらにリソース提供端末のスケジューリングにより,監視装置が確保しているリソース提供端末のリソース利用可能な時間帯が24時間均等に分布しているか,あるいは夜間にリソース利用可能な時間帯が集中すると仮定した場合,世界の拠点に監視装置を配置してリソース提供端末を確保することで,24時間常に演算処理を行わせることが可能となり,よりスピーディに演算結果をユーザに返すことができる。
【0132】
また,ヘルスチェックパケットによりリソース提供端末の稼動状況を把握することで,リソース提供端末に対して無理な負荷をかけることなく,演算処理を行わせることができる。
【0133】
さらに,演算処理業者とビジネス提携業者が提携することで,ビジネス提携業者のビジネスの活性化,および演算処理業者のリソース確保を,相互作用的に推進することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるグリッドコンピューティングによるシステムの構成例を示す図である。
【図2】本実施の形態における主処理装置による分割/結合処理を示す図である。
【図3】本実施の形態における主処理装置,監視装置およびリソース提供端末間でのデータの流れを示す図である。
【図4】本実施の形態における監視装置の構成例を示す図である。
【図5】本実施の形態におけるリソース提供端末の構成例を示す図である。
【図6】本実施の形態におけるヘルスチェックパケットの例を示す図である。
【図7】本実施の形態におけるリソース提供端末テーブルの例を示す図である。
【図8】本実施の形態におけるリソース提供端末ポイントテーブルの例を示す図である。
【図9】本実施の形態における監視装置とリソース提供端末の処理シーケンス図である。
【図10】本実施の形態における監視装置による演算処理フローチャートである。
【図11】本実施の形態における監視装置とアプリケーション提供端末とアプリケーション使用端末の処理シーケンス図である。
【図12】本実施の形態におけるアプリケーション所有テーブルの例を示す図である。
【図13】本実施の形態におけるアプリケーション使用許可テーブルの例を示す図である。
【図14】本実施の形態におけるアプリケーション提供/使用ポイントテーブルを示す図である。
【図15】本実施の形態における監視装置によるアプリケーション提供処理フローチャートである。
【図16】本発明の実施例におけるグリッドコンピューティングを用いたシステムの構成例を示す図である。
【図17】本実施例におけるリソース提供のポイントの流れの例を示す図である。
【図18】本実施例におけるアプリケーション提供のポイントの流れを示す図である。
【符号の説明】
1 主処理装置
2 監視装置
3 リソース提供端末
4 ネットワーク
20 監視装置用アプリケーション
21 送受信部
22 ユーザ管理部
23 リソース提供端末情報管理部
24 リソース提供端末ポイント情報管理部
25 データ制御部
26 アプリケーション所有情報管理部
27 アプリケーション使用許可情報管理部
28 アプリケーション制御部
29 アプリケーション提供/使用ポイント情報管理部
30 リソース提供端末用アプリケーション
31 送受信部
32 演算処理部
33 データ制御部
34 リソース管理部
35 アプリケーション制御部
100 演算前元データ
101 演算前分割データ
102 演算前データ(主処理装置→監視装置)
103 演算前データ(監視装置→リソース提供端末)
104 演算後データ(リソース提供端末→監視装置)
105 演算後データ(監視装置→主処理装置)
106 演算後収集データ
107 演算後結果データ
200 リソース提供端末テーブル
201 リソース提供端末ポイントテーブル
202 アプリケーション所有テーブル
203 アプリケーション使用許可テーブル
204 アプリケーション提供/使用ポイントテーブル
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a resource providing method in a system using grid computing and a monitoring apparatus therefor, and in particular, grid computing technology is used as a solution for a user (customer) who requires complicated and enormous calculation processing. The present invention relates to a technique for energizing a network business by using an arithmetic processing contractor to undertake arithmetic processing and reducing points as a resource providing fee for a resource provider and using the points.
[0002]
[Prior art]
In fields such as biotechnology, physics, design, and finance, complicated and enormous amounts of computation must be performed for data analysis. A business operator who requires such calculation processing purchases a supercomputer with good processing performance, purchases a large number of computers in place of the supercomputer, or entrusts the calculation processing to a contractor having these facilities. (Outsourcing) is necessary.
[0003]
In recent years, grid computing has gained popularity as a technology that can execute complex calculations and programs in a short period of time without an expensive supercomputer. However, although the development and use of software using this technology is progressing, few are being promoted as business.
[0004]
As an example of conventional technology, the computer processing received by the central server is divided into small processing units (units) so that distributed processing can be performed, and the user terminal requests the central server to send the processing units (units) and performs arithmetic processing. There is a distributed processing system that executes (see, for example, Patent Document 1).
[0005]
In addition, home and office terminals are connected to a network via the Internet or the like, and online transactions using electronic money are performed.
[0006]
[Patent Document 1]
JP 2001-344199 A
[0007]
[Problems to be solved by the invention]
Supercomputers that perform complicated and enormous amounts of computations are very expensive to install and maintain. The same applies to purchasing and processing many inexpensive terminals as an alternative to supercomputers.
[0008]
In recent years, as the Internet has become widespread and its facilities have been improved, home and office terminals can communicate with each other at any time via a network with a constant monthly fixed-rate 24-hour connection. In addition, the processor processing capacity of the terminal has improved dramatically, and the capacity of the storage medium has also increased. The same applies to general-purpose terminals. However, the current situation is that not all the processing power is always used. Also, applications are not always used.
[0009]
The present invention has a low utilization rate in a home or office terminal where a business that requires a complicated and enormous amount of calculation processing, or a business that undertakes such processing, exists innumerably via a network such as the Internet. Using grid computing technology that performs arithmetic processing in time, the introduction / maintenance cost of supercomputers, etc. is reduced, and points are given back to the provider as a fee for providing resources and applications, and those points are used for online shopping, etc. The purpose is to secure resources and customers by making it usable, to increase the overall processing speed, and at the same time to activate network businesses such as online shopping.
[0010]
In particular, the present invention is to construct a system that can select an optimal number of resource providing terminals that can actually be used without imposing a burden on the terminals that provide the resources when using the grid computing technology. With the goal.
[0011]
[Means for Solving the Problems]
In order to achieve the above object, the system of the present invention has a main processing unit having a database connected via a network, a general home or office terminal (hereinafter, this terminal is a resource providing terminal, the owner of this terminal). And a monitoring device that has a function of monitoring the resource providing terminal and transmits / receives data between the resource providing terminal and the main processing device.
[0012]
In this system, an arithmetic processing company that performs arithmetic processing receives data from a user (customer) that requires arithmetic processing, and the main processing unit divides a huge amount of arithmetic data into units that can be processed by resource providing terminals. The divided computation data is distributed to the resource providing terminals via the monitoring device, and after the resource providing terminal performs the arithmetic processing, the processing result is transmitted to the main processing device via the monitoring device. It is characterized by using grid computing technology that collects calculation results and returns the results to the user (customer).
[0013]
In addition, when the resource provider downloads a calculation program (hereinafter referred to as a resource providing terminal application) to its own terminal (resource providing terminal), the resource provider unconsciously performs the calculation processing in the background. It is characterized by being.
[0014]
In addition, the monitoring device grasps the usage status of resources (CPU, memory, hard disk, etc.) of the resource providing terminal under its own device from the health check packet transmitted from the resource providing terminal, and uses the collected information to obtain the resource providing terminal. After statistically calculating the time period when the resource usage rate is low (resource available time), scheduling of each resource providing terminal is performed, and the calculation data of the amount of data corresponding to the resource is distributed to each resource providing terminal. Features.
[0015]
Also, a resource providing terminal application is installed on the resource providing terminal, and a calculation definition file or part of the program and computation data are automatically downloaded from the monitoring device or a specified site by the resource providing terminal application to perform computation processing. It is characterized by performing.
[0016]
In addition, the resource providing terminal application is characterized in that it can provide not only resources such as CPU and memory of the terminal in which it is installed, but also other applications held by the terminal. Hereinafter, a terminal that provides an application is referred to as an application providing terminal, and an owner thereof is referred to as an application provider. A terminal using an application is called an application using terminal, and an owner of the terminal is called an application user.
[0017]
In addition, the processor's device manages the resource usage times, resource usage time, amount of processed data, application provision times, etc. of resource providing terminals (including application providing terminals and application using terminals) used for arithmetic processing. Then, by storing in the database, the number of points that can receive a predetermined service is automatically calculated, and the points are returned to the resource provider / application provider.
[0018]
On the other hand, in this system, the processor is affiliated with a provider, an Internet shop, etc. (hereinafter referred to as a business partner), and the resource provider / application provider pays the provider fee or Internet shopping at the reduced point. It is also characterized by providing a mechanism in which points can be converted into electronic money and used freely at other Internet shops.
[0019]
The above processing can be realized by a computer and a software program, and the program can be provided by being recorded on a computer-readable recording medium or can be provided through a network.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0021]
[Embodiment 1]
FIG. 1 is a diagram illustrating a configuration example of a system based on grid computing according to an embodiment of the present invention. This system includes a main processing device 1 that divides a huge amount of data received from a user (customer) into units that can be processed by a resource providing terminal 3 in a general home or office, and a plurality of monitoring devices 2 that monitor the resource providing terminal 3. A plurality of resource providing terminals 3 that perform arithmetic processing are connected to each other via a network 4 such as the Internet.
[0022]
The resource providing terminal 3 downloads the resource providing terminal application from the monitoring device 2 in advance. The resource providing terminal application can automatically provide resources without the resource provider being conscious. Further, the resource providing terminal 3 notifies the monitoring device 2 of its own resource usage status by periodically transmitting a health check packet.
[0023]
FIG. 2 is a diagram showing the division / combination processing by the main processing device in the present embodiment. FIG. 3 is a diagram illustrating a data flow among the main processing device, the monitoring device, and the resource providing terminal according to the present embodiment.
[0024]
The main processing device 1 divides the pre-computation original data 100 received from the user (customer) so that it can be processed by the resource providing terminal 3 (data division processing) to obtain pre-computation divided data 101, which is divided into blocks. It transmits to each subordinate monitoring apparatus 2 as subordinate data 102. At this time, in order to determine which pre-calculation data 102 is transmitted to which monitoring device 2, a header is added to the pre-calculation data 102. The monitoring device 2 that has received the pre-calculation data 102 subdivides the pre-calculation data 102 into pre-calculation data 103 having a data amount that can be processed by the resource providing terminal 3, and transmits it to each resource providing terminal 3.
[0025]
The resource providing terminal 3 that has received this performs calculation processing, and then returns post-calculation data 104 of the processing result to the monitoring device 2. The monitoring device 2 collects the post-computation data 104 from the resource providing terminal 3 and returns the block as the post-computation data 105 to the main processing device 1. The main processing device 1 collects the post-computation data 105 from the monitoring device 2 as post-computation collection data 106, performs data combination processing, and returns the post-computation result data 107 to the user (customer).
[0026]
FIG. 4 is a diagram illustrating a configuration example of the monitoring device according to the present embodiment. FIG. 5 is a diagram illustrating a configuration example of the resource providing terminal according to the present embodiment. The monitoring device 2 and the resource providing terminal 3 include a monitoring device application 20 and a resource providing terminal application 30, respectively.
[0027]
The monitoring device application 20 includes a transmission / reception unit 21, a user management unit 22, a resource providing terminal information management unit 23, a resource providing terminal point information management unit 24, a data control unit 25, an application ownership information management unit 26, and application use permission information management. Unit 27, application control unit 28, and application provision / use point information management unit 29. The resource providing terminal application 30 includes a transmission / reception unit 31, an arithmetic processing unit 32, a data control unit 33, a resource management unit 34, and an application control unit 35.
[0028]
In order to participate in grid computing, the resource provider accesses the monitoring processor 2 of the arithmetic processor and performs resource provider registration. When the registration is completed, the user management unit 22 transmits the resource providing terminal application 30 and its terminal ID (license key) to the resource providing terminal 3 by the transmission / reception unit 21.
[0029]
This terminal ID is a unique ID for a terminal in which each resource providing terminal application 30 is installed. Further, based on this terminal ID, the resource providing terminal information management unit 23 and the resource providing terminal point information management unit 24 create (initialize) the resource providing terminal table 200 and the resource providing terminal point table 201, respectively. Details of the resource providing terminal table 200 and the resource providing terminal point table 201 will be described later.
[0030]
Here, the resource providing terminal application 30 installed in the resource providing terminal 3 for arithmetic processing separately handles a data file and a calculation definition file or a part of a program, and requests for resource use from the monitoring device 2 respectively. If there is, it has a function to download and import. The calculation definition file is a file in which a script or a program in which a processing procedure for executing the requested arithmetic processing is described is stored. The calculation definition file also stores data attribute information such as the type of data to be processed and the data size.
[0031]
Since the calculation definition file to be imported into the resource providing terminal application 30 and the program for performing the calculation can be easily changed, there is no need to change the base application. In addition, the resource providing terminal application 30 downloads and imports the calculation definition file together with the data, thereby eliminating the setting dependency on the resource provider side. Therefore, various calculation processes can be performed.
[0032]
After installing the resource providing terminal application 30 in the resource providing terminal 3, a health check packet is periodically transmitted from the resource providing terminal 3 to the monitoring device 2. The monitoring device 2 receives the health check packet by the transmission / reception unit 21, and reflects the status of each resource providing terminal 3 in the resource providing terminal table 200 by the resource providing terminal information management unit 23. Details of the health check packet will be described later.
[0033]
On the other hand, when performing arithmetic processing, the status of the resource providing terminal table 200 is checked by the resource providing terminal information management unit 23 of the monitoring device application 20 in the monitoring device 2, and the terminal of the resource providing terminal 3 capable of performing arithmetic processing. Select an ID. The selection of the terminal ID is performed by checking the CPU operation rate, the memory usage rate, and their threshold values. It is preferentially selected from the resource providing terminal 3 that can process more data or from the resource providing terminal 3 that uses less time.
[0034]
It also calculates how much time it took from data transmission to result data reception by performing some arithmetic processing, and also calculates the overall processing speed taking into account the network communication speed and CPU processing speed, It can be used as an index for ID selection.
[0035]
When the selection of the terminal ID is completed, the monitoring device 2 retrieves the pre-computation data 103 suitable for the resource providing terminal 3 in the data control unit 25, the processing data number for identifying the pre-computation data 103, and the transmission destination resource The terminal ID of the providing terminal 3 is assigned to the header of the pre-calculation data 103, the processing data number corresponding to the terminal ID is held in the resource providing terminal table 200 in the resource providing terminal information management unit 23, The pre-calculation data 103 is transmitted to the resource providing terminal 3 having the terminal ID.
[0036]
In the resource providing terminal application 30 of the resource providing terminal 3, the transmission / reception unit 31 receives the pre-calculation data 103. Next, the data control unit 33 separates and saves the header, and the arithmetic processing unit 32 performs arithmetic processing. The post-computation data 104 that is the result is added again with the header, and the post-computation data 104 is transmitted from the transmission / reception unit 31 to the monitoring device 2.
[0037]
When the post-calculation data 104 is received by the transmission / reception unit 21, the monitoring device application 20 removes the header by the data control unit 25 and holds it as result data. At the same time, the resource providing terminal point information management unit 24 adds points of the target terminal ID in the resource providing terminal point table 201.
[0038]
FIG. 6 is a diagram illustrating an example of a health check packet according to the present embodiment. The health check packet in the example of FIG. 6 includes, as information, user information (terminal ID) for identifying each resource providing terminal 3, an available time (START) indicating the resource provision start time and end time, and an available time. (END), the CPU usage rate (threshold value), the memory usage rate (threshold value), and the hard disk usage rate (threshold value) indicating the threshold values of the CPU, memory, and hard disk usage rates, and the current values of the CPU, memory, and hard disk usage rates. A CPU usage rate (current value), a memory usage rate (current value), a hard disk usage rate (current value), and an application list showing applications that the resource providing terminal 3 can provide.
[0039]
While the resource providing terminal application 30 is running or when resources can be provided, a health check packet is periodically transmitted from the resource providing terminal 3 to the monitoring device 2. The health check packet includes the current value of the resource usage rate in the resource providing terminal 3. As a result, the monitoring device 2 can grasp the operating status of the subordinate resource providing terminals 3.
[0040]
When the resource provider does not particularly specify the resource provision time, the monitoring device 2 statistically calculates the resource available time zone of each resource provision terminal 3 from the health check packet for a certain period. When the resource provider specifies the resource provision time, the resource provision time is set in the resource provision terminal application 30, and the monitoring device 2 obtains this information by the health check packet (for this reason, on the monitoring device 2 side). The calculation of the resource available time for the first time is not necessary). Similarly, the threshold of the resource usage rate (CPU usage rate, memory usage rate, hard disk usage rate) can be automatically set on the monitoring device 2 side unless specified by the resource provider.
[0041]
FIG. 7 is a diagram illustrating an example of a resource providing terminal table in the present embodiment. The resource providing terminal table 200 in the example of FIG. 7 includes, as information for each resource providing terminal 3, a terminal ID for identifying each resource providing terminal 3, and an available time (START) indicating a resource providing start time and an end time. ), Usable time (END), CPU usage rate (threshold) indicating the threshold of CPU, memory, and hard disk usage rate, Memory usage rate (threshold value), Hard disk usage rate (threshold value), CPU, memory, hard disk CPU usage rate (current value) indicating the current usage rate, memory usage rate (current value), hard disk usage rate (current value), processing data number for identifying the transmitted pre-computation data 103, and resource provision And status indicating whether or not is possible.
[0042]
With such a resource providing terminal table 200, the monitoring device 2 manages the resource available time of the subordinate resource providing terminal 3 from the health check packet sent from the resource providing terminal 3, and performs a calculation process. To schedule. Further, the main processing device 1 calculates calculation data (pre-calculation data 102) corresponding to the resource secured by the monitoring device 2 and transmits it to the monitoring device 2. The monitoring device 2 calculates and transmits pre-computation data 103 corresponding to each resource providing terminal 3 based on the managed resource providing terminal table 200.
[0043]
FIG. 8 is a diagram showing an example of a resource providing terminal point table in the present embodiment. The resource providing terminal point table 201 in the example of FIG. 8 includes, as information for each resource providing terminal 3, a terminal ID for identifying each resource providing terminal 3, a resource use count indicating the number of times of calculation processing, The resource usage time indicating the total time for which the resource is used for the calculation process, the data amount obtained by adding the total amount of the pre-calculation data 103 and the total amount of the post-calculation data 104, the number of points calculated based on the information, Have
[0044]
The monitoring device 2 holds information related to the provision of resources, such as the number of times the resource is used, the resource usage time, and the amount of data, regarding the arithmetic processing performed by each of the subordinate resource providing terminals 3 and determines in advance based on such information. The point is calculated and held by the calculated method. In addition, even when an application is provided and used, which will be described later, information relating to the provision of the application is retained, and points for application provision / use based on the information are retained.
[0045]
The monitoring device 2 may periodically transmit information relating to resource provision and information relating to application provision to the main processing device 1, and the main processing device 1 may calculate points from the information and hold them.
[0046]
The processing processor returns points to the resource provider as a resource provision fee, and makes a business tie-up with a business partner (provider, Internet shop, etc.) so that the resource provider can use the point freely. , Link contents owned by business partners with the database of points held.
[0047]
Here, regarding the calculation of points, various calculation methods can be considered. Hereinafter, four point calculation methods will be given as examples.
[0048]
(1) "Number of points = number of resource usage"
The number of times the resource of the resource providing device 3 is used is the number of points regardless of the time when the resource of the resource providing terminal 3 is used and the amount of data processing.
[0049]
(2) "Number of points = resource usage time"
The time spent using the resource of the resource providing terminal 3 is defined as the number of points. Regardless of the data processing amount of the resource providing terminal 3, the same point per hour.
[0050]
(3) "Number of points = amount of data"
A value corresponding to the amount of data processed by the resource providing terminal 3 is defined as the number of points. In this calculation method, the processing amount (data amount) of the processed data becomes the number of points as it is, so the resource providing terminal 3 having high specifications such as a large hard disk and memory capacity and a high CPU processing speed, and a high communication speed are provided. The points of the resource providing terminal 3 connected to the line are increased.
[0051]
(4) "Number of points = amount of data / resource usage time"
The amount of data processed per unit time is defined as the number of points. The points of the resource providing terminal 3 that can process a large amount of data in a short time are increased.
[0052]
FIG. 9 is a processing sequence diagram of the monitoring device and the resource providing terminal in the present embodiment. At the resource provision start time (Q1), the resource providing terminal 3 establishes a session with the monitoring device 2 (Q2), and starts transmitting health check packets to the monitoring device 2 (Q3). Thereafter, health check packets are periodically transmitted (Q8, Q14). Upon receiving this, the monitoring device 2 adds the contents to the resource providing terminal table 200 as shown in FIG. 7 (Q4).
[0053]
Here, the health check packet is transmitted from the resource providing terminal 3 to the monitoring device 2 at regular intervals. However, since the resource providing terminal 3 uses a fixed fixed connection line, information transmission / reception with the monitoring device 2 is performed. There is no particular charge.
[0054]
In addition, the monitoring device 2 monitors the status of the subordinate resource providing terminals 3 and selects a terminal to be processed from the resource providing terminal table 200. At the time of selection, the resource providing terminal table 200 is used to rank the operation status of the resource providing terminals 3, and the processing is performed in descending order (from the one with the low operation rate or the one with the short resource providing time). While the resource providing terminal 3 is performing the processing, the same data must be processed in order to consider the case where a health check packet cannot be received from the resource providing terminal 3 for a certain time due to some failure or to check the consistency of the processing results. The processing is performed by a plurality of resource providing terminals 3. Thereby, the reliability of the arithmetic processing can be improved.
[0055]
When selecting the resource providing terminal 3, the monitoring device 2 transmits a calculation request to the terminal (Q5). At this time, the monitoring device 2 transmits pre-computation data 103 and a calculation definition file to be actually processed. Similarly to the main processing device 1, a header is added to the pre-calculation data 103 in order to determine which pre-calculation data 103 is transmitted to which resource providing terminal 3.
[0056]
Receiving this, the resource providing terminal 3 returns a response to the monitoring device 2 (Q6), and starts arithmetic processing (Q7). When the arithmetic processing is completed (Q9), a processing end notification is transmitted to the monitoring device 2 (Q10). At this time, the resource providing terminal 3 transmits calculation result data (post-calculation data 104).
[0057]
The monitoring device 2 stores the received post-computation data 104 (Q11) and returns a response to the resource providing terminal 3 (Q12). The resource providing terminal 3 deletes the pre-calculation data 103, the calculation definition file, and the post-calculation data 104 used for the calculation from its own terminal (Q13).
[0058]
The resource providing terminal 3 again waits while transmitting a health check packet in response to the calculation request from the monitoring device 2 (Q14). When the resource providing terminal 3 reaches the resource providing end time set by the resource provider (Q15), the resource providing terminal 3 transmits a resource providing time end notification to the monitoring device 2 (Q16). Is deleted (Q17), and the session is disconnected (Q18).
[0059]
Here, when the resource provider does not set the resource provision start / end time, it is assumed that the resource provision terminal application 30 is always activated. Note that data transmission / reception between the monitoring device 2 and the resource providing terminal 3 uses an encryption technique or an authentication technique, and the pre-calculation data 103, the calculation definition file, and the post-calculation data 104 used by the resource providing terminal 3 are easily obtained. It is encrypted and protected so that it cannot be viewed.
[0060]
FIG. 10 is a calculation processing flowchart by the monitoring apparatus according to the present embodiment. In the monitoring device 2, first, the transmission / reception unit 21 receives a health check packet periodically transmitted from each subordinate resource providing terminal 3, and the resource providing terminal information management unit 23 also receives the received health check packet. And the resource providing terminal table 200 is updated (step S10).
[0061]
When the transmission / reception unit 21 receives the pre-calculation data 102 from the main processing device 1 (step S11), the data control unit 25 uses the resource providing terminal table 200 managed by the resource providing terminal information management unit 23 to manage each resource providing terminal 3 under its control. The resource providing terminal 3 that can provide the resource is extracted (step S12), and the CPU usage rate, the memory usage rate, the hard disk usage rate, etc. are checked, and the processing is preferentially performed. The resource providing terminal 3 to be selected is selected (step S13).
[0062]
Next, the data control unit 25 extracts pre-calculation data 103 suitable for each resource providing terminal 3 from the pre-calculation data 102 (step S14), and each pre-calculation data 103 has a terminal ID corresponding to the processing data number. As a header (step S15), and the transmitting / receiving unit 21 transmits the corresponding pre-calculation data 103 to each resource providing terminal 3 (step S16).
[0063]
When the transmission / reception unit 21 receives the post-computation data 104 from the resource providing terminal 3 (step S17), the data control unit 25 excludes the header from the received post-computation data 104 (step S18) and stores the post-computation data 104. (Step S19). Further, the resource providing terminal point information management unit 24 updates the resource providing terminal point table 201 (step S20).
[0064]
When the post-computation data 104 that is the computation result of the pre-computation data 103 constituting all the original pre-computation data 102 is received from each resource providing terminal 3 (step S21), the transmitting / receiving unit 21 receives all the post-computation data received. The post-computation data 105 combined with the data 104 is transmitted to the main processing device 1 (step S22).
[0065]
As described above, it is not necessary for an arithmetic processing company to introduce an expensive supercomputer or a large number of alternative computers for a huge amount of arithmetic processing by using the grid computing technology. For this reason, costs such as initial introduction costs and maintenance costs can be reduced. Further, since the processing capability of the resource providing terminal 3 that actually performs processing has increased dramatically, it is not necessary to consider the replacement of equipment. In addition, since a terminal (resource providing terminal 3) connected via the Internet or the like is used, it is possible to use a terminal (resource providing terminal 3) all over the world. It is possible to perform the calculated processing in a short period of time.
[0066]
In particular, the monitoring device 2 receives the health check packet periodically transmitted from the resource providing terminal 3 to determine whether communication with the resource providing terminal 3 is possible and the available time zone of the resource providing terminal 3. I can grasp it. As a result, the pre-calculation data 103 can be transmitted only to the resource providing terminal 3 that can reliably perform the calculation process, and the resource providing terminal 3 having a short use time can be preferentially processed, A plurality of resource providing terminals whose available time zones overlap in consideration of failure in communication with the resource providing terminal 3 due to some failure during processing due to disconnection, line disconnection, high load, etc. It is possible to perform various scheduling such as performing the same processing in FIG.
[0067]
Further, since the resource of the resource providing terminal 3 can be grasped, the appropriate pre-calculation data 103 can be transmitted to each monitoring device 2 and the resource providing terminal 3. Further, all the calculation processing in the resource providing terminal 3 is performed in the background, and the resource provider compares the current value of the resource usage rate with the threshold value and automatically calculates an appropriate resource usage time, so that the resource provider can determine its own terminal (resource providing terminal 3 ) Can be less affected and less burdensome. If more resource providing terminals 3 can be secured in more time zones, it is possible to always perform arithmetic processing for 24 hours and obtain processing results.
[0068]
By associating the contents of the business partner with the point database owned by the processor, the resource provider collected by the processor can be used as a customer. In addition, since it is assumed that the business provider joins as a resource provider in order to purchase products, there is an interactive effect on securing the resources of the arithmetic processor and securing the customers of the business provider.
[0069]
[Embodiment 2]
In a system configuration based on grid computing as shown in FIG. 1, a certain resource provider can provide an application owned by another resource provider via the monitoring device 2.
[0070]
Hereinafter, a resource provider that provides an owned application is referred to as an application provider, and a resource provider that uses the provided application is referred to as an application user. Further, the resource provider terminal 3 of the application provider is referred to as an application provider terminal 3a, and the resource provider terminal 3 of the application user is described as an application use terminal 3b. One resource providing terminal 3 may be the application providing terminal 3a or may be the application using terminal 3b.
[0071]
When the application provider provides an application, the resource providing terminal application 30 of the application providing terminal 3a transmits a list of installed applications to the monitoring device 2 using a health check packet.
[0072]
An application user who wants to use an application that is not installed in the own terminal (application use terminal 3 b) transmits a use request to the monitoring device 2.
[0073]
Upon receiving this, the monitoring device 2 selects the resource providing terminal 3 (application providing terminal 3a) that holds the target application from the held application list, and acquires the application. The monitoring device 2 sets the usage period of the application, and transmits the application to the resource providing terminal 3 (application usage terminal 3b) of the application user.
[0074]
FIG. 11 is a processing sequence diagram of the monitoring apparatus, the application providing terminal, and the application using terminal in the present embodiment. The application user who uses the application issues a request for using the application to the monitoring device 2 of the arithmetic processor by the resource providing terminal application 30 of the application using terminal 3b (Q20).
[0075]
The monitoring device application 20 that has received this request by the transmitting / receiving unit 21 uses the application ownership information management unit 26 to detect the terminal ID having the requested application from the application ownership table 202, and after checking the status, the application providing terminal 3a. Is selected (Q21). When the application cannot be taken out from the application providing terminal 3a due to an application request not in the application possession table 202 or a status error, an error response is made. Details of the application ownership table 202 will be described later.
[0076]
If the terminal ID can be normally selected, next, an application request is transmitted to the application providing terminal 3a selected by the transmitting / receiving unit 21 (Q22), and the application providing terminal 3a received by the transmitting / receiving unit 31 receives the application requesting unit 3a. The application is extracted by 35, and the application is transmitted from the transmission / reception unit 31 to the monitoring device 2 (Q23).
[0077]
The monitoring device 2 that has received this is copied (stored) in its own area by the application control unit 28 (Q24). Next, a copy completion notice is transmitted to the application using terminal 3b (Q25).
[0078]
Upon receiving this, the application using terminal 3b activates the installer of the monitoring device 2 in response to an installation start request in order to install the application copied to the monitoring device 2 (Q26), and the monitoring device 2 starts installation. (Q27).
[0079]
When the installation is completed in the monitoring device 2 (Q28), the application use permission information management unit 27 uses the application to hold the application name, the terminal ID permitted to be used, the use period timer, and the application storage location. The permission table 203 is created (Q29). If the application has already been installed, the application use permission information management unit 27 registers the terminal ID without installing and starts only the use period timer. Details of the application use permission table 203 will be described later.
[0080]
At the same time, the application provision / use point information management unit 29 creates the application provision / use point table 204 (Q30), and performs addition for the points of the application provision terminal 3a and subtraction for the points of the application use terminal 3b. Thereafter, an installation completion notice is sent to the application using terminal 3b (Q31). Thereafter, the application user can access the monitoring device 2 with the application using terminal 3b and use the application (Q32).
[0081]
When the usage period timer expires (Q33), the application control unit 28 deletes the application (Q34). At this time, if the target application is still being used by another application use terminal 3b, the application use permission information management unit 27 deletes only the terminal ID from the application use permission table 203 and accesses it so that it cannot be used. Make restrictions. Of course, when the application is used, it is checked whether it is permitted in the application use permission table 203.
[0082]
The processing sequence of the monitoring device 2, the application providing terminal 3a, and the application using terminal 3b has been described with reference to FIG. 11. However, the application is downloaded from the monitoring device 2 to the application using terminal 3b without installing the application on the monitoring device 2. The application may be used by the application user by installing the application at the application use terminal 3b and using a license key with a fixed expiration date.
[0083]
FIG. 12 is a diagram showing an example of the application ownership table in the present embodiment. The application ownership table 202 in the example of FIG. 12 includes, as information for each application providing terminal 3a, a terminal ID for identifying the application providing terminal 3a (resource providing terminal 3), an application name of the owned application, and application provision And a status indicating whether the application can be taken out from the terminal 3a.
[0084]
FIG. 13 is a diagram showing an example of an application use permission table in the present embodiment. The application use permission table 203 in the example of FIG. 13 includes, as information for each application, the application name of the application being used, the terminal ID of the application using terminal 3b that is permitted to use the application, and the remaining usage period. Used period remaining timer value indicating the application storage location information indicating the location where the application is stored.
[0085]
FIG. 14 is a diagram showing an application provision / use point table in the present embodiment. The application provision / use point table 204 in the example of FIG. 14 includes a terminal ID for identifying the application provision terminal 3a (or application use terminal 3b) as information for each application provision terminal 3a (or application use terminal 3b). , The provision period indicating the total period of providing the application, the use period indicating the total period of using the application, and the number of points calculated based on the information.
[0086]
Further, although not in the example of FIG. 14, for each application providing terminal 3 a (application use terminal 3 b), the number of times each application is provided and the number of times of use are held as information relating to the provision of the application. Points may be calculated.
[0087]
The processing processor returns a point to the application provider as an application provision fee, and makes a business tie-up with a business partner (provider, Internet shop, etc.) in order to allow the application provider to use the point freely. Link contents owned by partner companies with the database of points held.
[0088]
FIG. 15 is a flowchart of application providing processing by the monitoring apparatus according to this embodiment. In the monitoring device 2, first, the transmitting / receiving unit 21 receives a health check packet periodically sent from each subordinate application providing terminal 3 a (resource providing terminal 3), and the application ownership information management unit 26 receives the health check packet. The application ownership table 202 is updated based on the application list of the health check packet (step S30).
[0089]
When the transmission / reception unit 21 receives an application use request from the application use terminal 3b (step S31), the application possession information management unit 26 searches for an application providing terminal 3a that can provide the requested application in the application possession table 202 ( Step S32).
[0090]
The application providing terminal 3a that can provide the requested application when an application not in the application ownership table 202 is requested or the status of all the application providing terminals 3a that own the requested application cannot be provided. Is not present (step S33), an error response is sent to the application using terminal 3b (step S34).
[0091]
If there is an application providing terminal 3a that can be provided, the transmission / reception unit 21 requests the application providing terminal 3a to provide the application and acquires the application (step S35).
[0092]
The application control unit 28 installs the acquired application (step S36), and the application use permission information management unit 27 sets the application use period in the application use permission table 203 (step S37), and provides / provides application points. The information management unit 29 performs point processing with the application provision / use point table 204 (step S38).
[0093]
The application use terminal 3b is notified of the completion of installation (step S39). Thereafter, the application use terminal 3b can use the application until the end of the use period.
[0094]
When the usage period of the application ends (step S40), the application control unit 28 deletes the application whose usage period has ended (step S41).
[0095]
As described above, when the application is transferred via the monitoring device 2, the monitoring device 2 sets the usage period, thereby requesting a license fee (point) corresponding to the usage period and preventing use due to unauthorized copying. Can do. For application users who want to use the application temporarily, the cost can be reduced compared to purchasing the application with a high license fee.
[0096]
The two embodiments of the present invention have been described separately as the first embodiment and the second embodiment. However, the first embodiment and the second embodiment are simultaneously performed in one grid computing system. It is also possible. At this time, the resource provision terminal point table 201 of the first embodiment and the application provision / use point table 204 of the second embodiment may be combined so that points can be managed by one table.
[0097]
【Example】
FIG. 16 is a diagram illustrating a configuration example of a system using grid computing in the embodiment of the present invention. In the example of FIG. 16, the arithmetic processing company has the main processing device 1 and the monitoring device 2a at the base 1, and the monitoring device 2b at the base 2 connected to the base 1 and the Internet 4a. As described above, the monitoring device 2 connected to the main processing device 1 via the network 4 may exist in a place different from the main processing device 1.
[0098]
In the example of FIG. 16, the monitoring device 2b is connected to the resource provider terminals 3 (a to d) of the resource provider via a regional IP network 4b (for example, a wide area LAN or an in-house LAN). The monitoring devices 2a and 2b are connected to resource provider terminals 3e to 3h of the resource provider via the Internet 4a, ISP (Internet Service Provider), and regional IP network 4c. The resource providing terminals 3a to 3h are connected by a continuous connection line. In this way, the monitoring device 2 is connected to the resource providing terminal 3 through various networks 4.
[0099]
In the example of FIG. 16, terminals of internet banks, business partners (net shops, providers), and application related companies are connected via the Internet 4a, and the resource providing terminal 3 uses various points. Can receive service.
[0100]
When the user (customer) passes the pre-computation original data 100 to the arithmetic processing company, it may be brought directly to the arithmetic processing company, or transmitted to the main processing device 1 of the arithmetic processing company via the Internet at a terminal owned by the user (customer). Also good.
[0101]
A user (customer) who needs enormous calculation processing passes the pre-calculation original data 100 to the calculation processor. The calculation processor divides the pre-calculation original data 100 into units that can be processed by the resource providing terminal 3 in the main processing device 1 (generation of the pre-calculation divided data 101).
[0102]
Next, the main processing device 1 transmits a part of the divided data (pre-calculation data 102) to the monitoring device 2 under its control. In addition, a header is added to determine which pre-calculation data 102 is transmitted to which monitoring device 2. At this time, when data is transmitted / received from the main processing device 1 to the monitoring device 2 via the Internet 4a, encryption technology or authentication technology is used so that data is not wiretapped or tampered with. At the same time, the main processing device 1 distributes the resource providing terminal application 30 to be installed in the resource providing terminal 3 and the calculation definition file to the monitoring device 2.
[0103]
On the other hand, the resource provider downloads the resource providing terminal application 30 from the monitoring device 2 to the own terminal (resource providing terminal 3). Further, if necessary, the resource provider causes the processor to monitor the resource providing time (start time to end time) in the own terminal (resource providing terminal 3) and the own terminal (resource providing terminal 3). The monitoring device 2 is set. The resource providing terminal application 30 starts its operation when the resource providing terminal 3 is started or when the resource providing terminal 3 is activated.
[0104]
The monitoring device 2 distributes appropriate pre-calculation data 103 and calculation definition files to the respective resource providing terminals 3 under its control. At this time, a header is added to determine which pre-calculation data 103 is transmitted to which resource providing terminal 3.
[0105]
Each resource providing terminal 3 receives the pre-computation data 103 distributed from the monitoring device 2, performs computation processing, and transmits post-computation data 104 that is the computation result to the monitoring device 2.
[0106]
When the monitoring device 2 receives all the results (post-computation data 104) corresponding to the pre-computation data 103 distributed from the resource providing terminal 3 under its control, the monitoring device 2 returns the results (post-computation data 105) to the main processing device 1. .
[0107]
When the main processing device 1 receives the post-computation data 105 from all the monitoring devices 2 to which the pre-computation data 102 has been distributed, the data (post-computation collection data 106) is collectively used as the post-computation result data 107, and the user (customer) Is sent a result (post-computation result data 107).
[0108]
As described above, the number of resource providing terminals 3 monitored by the monitoring device 2 is large, and the resource providing terminals 3 that can be used for 24 hours are secured by arranging the monitoring devices 2 at bases around the world via the Internet. , Cyclic processing can be performed.
[0109]
Further, the arithmetic processor calculates a resource usage fee for each resource provider based on the resource providing terminal point table 201 and returns it to each resource provider.
[0110]
FIG. 17 is a diagram illustrating an example of a flow of points for providing resources in the present embodiment. The resource provider provides resources to the processor (P10), and the processor performs the resource provider point database (for example, the number of points of the corresponding resource provider in the resource provider terminal point table 201). Points are added (P11).
[0111]
Based on the accumulated points, the resource provider purchases goods at a business partner such as an online shop with which the processor is affiliated, and pays the price (P12). The business partner determines the points of the resource provider. Consume (P13).
[0112]
The processing processor subtracts the price of the product and payment from the resource provider's point database (P14), and pays the subtracted point and the price to be paid to the business partner with electronic money or the like ( P15).
[0113]
FIG. 18 is a diagram showing a flow of application providing points in the present embodiment. The application provider provides the application to the application user via the arithmetic processing company (P20).
[0114]
The arithmetic processor subtracts the points for the limited license fee from the application user's point database (the number of points of the corresponding application provider / user in the application provision / use point table 204) (P21). The points of minutes are added to the point database of the application provider (P22), or payment is made with electronic money or the like to the application related company that owns the copyright of the application (P23). As a result, the application user can use the application (P24).
[0115]
The application provider purchases an application from an application related company with which the processor is affiliated with the added points (P25). The application related company consumes the points of the application provider (P26).
[0116]
The arithmetic processing company subtracts the application fee and the value of consideration from the point database of the application provider (P27), and pays the amount of the subtracted point and the price as the consideration to the application-related company using electronic money or the like (P28).
[0117]
As described above, a business alliance with a processing processor having a large number of resource providers / application providers as customers leads to expansion of the market of its own business for the business alliance provider. On the other hand, when a product that can only be purchased with points is on the business partner side, many resource providers join for the purpose of purchasing the product, which leads to securing more resources for the processing processor.
[0118]
In addition, when the resource provider / application provider converts the returned points into electronic money, customers can be attracted to business partners by lowering the conversion rate from points to electronic money. .
[0119]
The features of the embodiments and examples of the present invention are listed as follows.
[0120]
(Supplementary note 1) A main processing device that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and a plurality of resource providing terminals that monitor and provide resources A resource providing method in a system using grid computing in which a monitoring device that manages transmission and reception of data between a terminal and a main processing device is connected via a network,
A process in which the monitoring device receives a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal, and manages the resource usage status of each resource providing terminal;
A process in which the monitoring device receives operation data to be processed from the main processing device;
When the monitoring device receives operation data to be processed from the main processing device, it selects a resource providing terminal that requests operation processing based on the resource usage status of each resource providing terminal, and provides the selected resource provision A process of sending computation data of a data amount suitable for the terminal;
A process in which the monitoring device receives post-computation data of computation processing results from a resource providing terminal that has requested computation processing;
A process in which, when the monitoring device receives post-computation data of computation processing results from all resource providing terminals that have requested computation processing, the post-computation data is sent to the main processing device together
A resource providing method in a system using grid computing.
[0121]
(Supplementary Note 2) In the resource providing method in the system using grid computing according to Supplementary Note 1,
A step in which the resource providing terminal automatically receives a calculation definition file or a part of a calculation program and calculation data from the monitoring device by the resource providing terminal application;
A process in which the resource providing terminal automatically executes arithmetic processing by the resource providing terminal application;
A step in which the resource providing terminal automatically sends a calculation result to the monitoring device by the resource providing terminal application.
A resource providing method in a system using grid computing.
[0122]
(Supplementary note 3) In the resource providing method in the system using grid computing according to supplementary note 1,
A process in which the monitoring device stores and holds information of an application owned by each resource providing terminal;
A process in which the monitoring device receives an application use request from any resource providing terminal;
The monitoring device selecting a resource providing terminal capable of providing the application requested to be used;
When the monitoring device has a resource providing terminal capable of providing the application requested to use, and obtaining the application requested to use from the resource providing terminal;
The monitoring device has a process of providing the acquired application itself or a processing function of the application to a resource terminal that requests use of the application
A resource providing method in a system using grid computing.
[0123]
(Supplementary note 4) In the resource providing method in the system using grid computing according to any one of supplementary note 1 to supplementary note 3,
A process in which the main processing device or the monitoring device manages, for each resource providing terminal, information relating to resource provision or information relating to application provision;
The main processing device or the monitoring device has a process of calculating and holding points that can be converted into electronic money based on information relating to provision of the managed resource or information relating to application provision.
A resource providing method in a system using grid computing.
[0124]
(Supplementary note 5) A main processing device that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and a plurality of resource providing terminals that monitor and provide resources A monitoring device in a system using grid computing in which a monitoring device that manages transmission and reception of data between a terminal and a main processing device is connected via a network,
Means for receiving a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal, and managing the resource usage status of each resource providing terminal;
Means for receiving operation data to be processed from the main processing unit;
When computing data subject to computation processing is received from the main processor, a resource providing terminal that requests computation processing is selected based on the resource usage status of each resource providing terminal, and data suitable for the selected resource providing terminal Means for transmitting a quantity of operational data;
Means for receiving post-computation data of the computation processing result from the resource providing terminal that requested the computation processing;
And means for transmitting the post-computation data to the main processing device when the post-computation data of the computation processing result is received from all the resource providing terminals that have requested the computation processing.
The monitoring apparatus in the system using the grid computing characterized by the above-mentioned.
[0125]
(Supplementary note 6) In the monitoring device in the system using grid computing according to supplementary note 5,
Resource providing terminal point information management means for managing resource providing terminal point information for grasping information related to resource provision of each resource providing terminal and points that can be converted into electronic money calculated from the information is provided.
The monitoring apparatus in the system using the grid computing characterized by the above-mentioned.
[0126]
(Supplementary note 7) In the monitoring device in the system using grid computing according to supplementary note 5 or supplementary note 6,
Application ownership information management means for managing application ownership information for grasping the applications owned by each resource providing terminal is provided.
The monitoring apparatus in the system using the grid computing characterized by the above-mentioned.
[0127]
(Supplementary note 8) In the monitoring device in the system using grid computing according to supplementary note 7,
Application provision / use point information management means for managing application provision / use point information for grasping information on application provision of each resource providing terminal and points that can be converted into electronic money calculated from the information is provided.
The monitoring apparatus in the system using the grid computing characterized by the above-mentioned.
[0128]
(Supplementary note 9) A main processing device that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and a plurality of resource providing terminals that monitor and provide resources A program to be executed by a computer of a monitoring device in a system using grid computing in which a monitoring device that manages transmission and reception of data between a terminal and a main processing device is connected via a network,
A process of receiving a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal and managing the resource usage status of each resource providing terminal;
A process of receiving operation data to be processed from the main processing unit;
When computing data subject to computation processing is received from the main processor, a resource providing terminal that requests computation processing is selected based on the resource usage status of each resource providing terminal, and data suitable for the selected resource providing terminal Processing to send a quantity of computed data;
Processing to receive post-computation data of the computation processing result from the resource providing terminal that requested the computation processing;
A process of transmitting the post-computation data to the main processing device when the post-computation data of the computation process result is received from all the resource providing terminals that have requested the computation process;
A monitoring device program in a system using grid computing to be executed by a computer.
[0129]
(Supplementary Note 10) A main processing device that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and a plurality of resource providing terminals that monitor and provide resources A program executed by a computer of a resource providing terminal in a system using grid computing in which a monitoring device that manages transmission and reception of data between a terminal and a main processing device is connected via a network,
A process of transmitting a health check packet for notifying the monitoring device of the resource usage status of the terminal;
Processing for receiving calculation data and calculation definition information or calculation program in which processing contents for the calculation data are described from the monitoring device;
Processing the arithmetic data received from the monitoring device according to the calculation definition information or calculation program, and returning the processing result data to the monitoring device;
A program for a resource providing terminal in a system using grid computing for causing a computer to execute background processing in the resource providing terminal.
[0130]
【The invention's effect】
As described above, according to the present invention, by using the grid computing technology, it is possible to greatly reduce the initial facility cost for performing the required amount of calculation processing target, and the calculation processing time. Therefore, the arithmetic processor can provide an inexpensive and speedy service to the user.
[0131]
In addition, the more resource providing terminals, the shorter the processing time can be. However, due to scheduling of the resource providing terminals, the resource available time slots of the resource providing terminals secured by the monitoring device are evenly distributed over 24 hours. If it is assumed that the time period in which resources are available or resources are available at night is concentrated, it is possible to always perform arithmetic processing for 24 hours by allocating monitoring devices at global bases and securing resource providing terminals. This makes it possible to return the calculation result to the user more quickly.
[0132]
In addition, by grasping the operating status of the resource providing terminal from the health check packet, it is possible to perform the arithmetic processing without imposing an excessive load on the resource providing terminal.
[0133]
In addition, the processing processor and the business partner can cooperate to promote the business of the business partner and secure the resources of the processing processor interactively.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration example of a system using grid computing according to an embodiment of the present invention.
FIG. 2 is a diagram showing split / join processing by the main processing device in the present embodiment.
FIG. 3 is a diagram illustrating a data flow among a main processing device, a monitoring device, and a resource providing terminal according to the present embodiment.
FIG. 4 is a diagram illustrating a configuration example of a monitoring device according to the present embodiment.
FIG. 5 is a diagram illustrating a configuration example of a resource providing terminal in the present embodiment.
FIG. 6 is a diagram showing an example of a health check packet in the present embodiment.
FIG. 7 is a diagram showing an example of a resource providing terminal table in the present embodiment.
FIG. 8 is a diagram showing an example of a resource providing terminal point table in the present embodiment.
FIG. 9 is a processing sequence diagram of the monitoring apparatus and the resource providing terminal in the present embodiment.
FIG. 10 is a flowchart of calculation processing by the monitoring apparatus according to the present embodiment.
FIG. 11 is a processing sequence diagram of the monitoring apparatus, the application providing terminal, and the application using terminal in the present embodiment.
FIG. 12 is a diagram showing an example of an application ownership table in the present embodiment.
FIG. 13 is a diagram showing an example of an application use permission table in the present embodiment.
FIG. 14 is a diagram showing an application provision / use point table in the present embodiment;
FIG. 15 is a flowchart of application providing processing by the monitoring apparatus according to the present embodiment.
FIG. 16 is a diagram illustrating a configuration example of a system using grid computing in an embodiment of the present invention.
FIG. 17 is a diagram illustrating an example of a flow of points for providing resources in the embodiment.
FIG. 18 is a diagram showing a flow of application providing points in the embodiment.
[Explanation of symbols]
1 Main processing unit
2 Monitoring device
3 Resource providing terminals
4 network
20 Monitoring device applications
21 Transceiver
22 User Management Department
23 Resource Providing Terminal Information Management Department
24 Resource Providing Terminal Point Information Management Department
25 Data control unit
26 Application Owner Information Management Department
27 Application Usage Permission Information Management Department
28 Application Control Unit
29 Application Provision / Use Point Information Management Department
30 Application for resource providing terminal
31 Transceiver
32 Arithmetic processing part
33 Data control unit
34 Resource Management Department
35 Application Control Unit
100 Original data before operation
101 Division data before calculation
102 Pre-calculation data (main processing device → monitoring device)
103 Pre-calculation data (monitoring device → resource providing terminal)
104 Post-calculation data (resource providing terminal → monitoring device)
105 Post-calculation data (monitoring device → main processing device)
106 Collected data after computation
107 Result data after operation
200 Resource providing terminal table
201 Resource providing terminal point table
202 Application owned table
203 Use permission table
204 Application provision / use point table

Claims (5)

要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおけるリソース提供方法であって,
前記監視装置が,前記各リソース提供端末が所有するアプリケーションの情報を記憶し保持する過程と,
前記監視装置が,いずれかのリソース提供端末からのアプリケーション使用要求を受ける過程と,
前記監視装置が,前記使用要求されたアプリケーションを提供可能なリソース提供端末を選出する過程と,
前記監視装置が,前記使用要求されたアプリケーションを提供可能なリソース提供端末が存在する場合に,そのリソース提供端末から前記使用要求されたアプリケーションを取得する過程と,
前記監視装置が,前記アプリケーションの使用を要求するリソース提供端末に,前記取得したアプリケーション自体またはそのアプリケーションの処理機能を提供する過程と,
前記監視装置が,前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する過程と,
前記監視装置が,前記主処理装置から演算処理対象の演算データを受け取る過程と,
前記監視装置が,前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する過程と,
前記監視装置が,演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する過程と,
前記監視装置が,演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
A main processing unit that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and monitors the plurality of resource providing terminals. A resource providing method in a system using grid computing in which a monitoring device for managing transmission / reception of data to / from a device is connected via a network,
A process in which the monitoring device stores and holds information of an application owned by each resource providing terminal;
A process in which the monitoring device receives an application use request from any resource providing terminal;
The monitoring device selecting a resource providing terminal capable of providing the application requested to be used;
When the monitoring device has a resource providing terminal capable of providing the application requested to use, and obtaining the application requested to use from the resource providing terminal;
The monitoring device provides the resource providing terminal that requests use of the application to provide the acquired application itself or a processing function of the application;
A process in which the monitoring device receives a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal, and manages the resource usage status of each resource providing terminal;
A process in which the monitoring device receives operation data to be processed from the main processing device;
When the monitoring device receives operation data to be processed from the main processing device, it selects a resource providing terminal that requests operation processing based on the resource usage status of each resource providing terminal, and provides the selected resource provision A process of sending computation data of a data amount suitable for the terminal;
A process in which the monitoring device receives post-computation data of computation processing results from a resource providing terminal that has requested computation processing;
When the monitoring device receives post-computation data of the computation processing result from all resource providing terminals that have requested computation processing, and sends the post-computation data together to the main processing device. A resource providing method in a system using grid computing as a feature.
請求項1記載のグリッドコンピューティングを用いたシステムにおけるリソース提供方法において,
前記主処理装置または前記監視装置が,前記各リソース提供端末ごとに,リソースの提供に関する情報またはアプリケーションの提供に関する情報を管理する過程と,
前記主処理装置または前記監視装置が,前記管理されたリソースの提供に関する情報またはアプリケーションの提供に関する情報をもとに,電子マネーに換算可能なポイントを計算し,前記各リソース提供端末ごとのポイント情報を保持する過程とを有する
ことを特徴とするグリッドコンピューティングを用いたシステムにおけるリソース提供方法。
A resource providing method in a system using grid computing according to claim 1,
A process in which the main processing device or the monitoring device manages information related to resource provision or application provision for each resource providing terminal;
The main processing device or the monitoring device calculates points that can be converted into electronic money on the basis of the information on the provision of the managed resources or the information on the provision of applications, and the point information for each resource providing terminal the resource providing method in a system using a grid computing, characterized by having the steps of holding the.
要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおける監視装置であって,
前記各リソース提供端末が所有するアプリケーションの情報を記憶し保持する手段と,
いずれかのリソース提供端末からのアプリケーション使用要求を受ける手段と,
前記使用要求されたアプリケーションを提供可能なリソース提供端末を選出する手段と,
前記使用要求されたアプリケーションを提供可能なリソース提供端末が存在する場合に,そのリソース提供端末から前記使用要求されたアプリケーションを取得する手段と,
前記アプリケーションの使用を要求するリソース提供端末に,前記取得したアプリケーション自体またはそのアプリケーションの処理機能を提供する手段と,
前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する手段と,
前記主処理装置から演算処理対象の演算データを受け取る手段と,
前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する手段と,
演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する手段と,
演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する手段とを備える
ことを特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。
A main processing unit that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and monitors the plurality of resource providing terminals. A monitoring device in a system using grid computing in which a monitoring device that manages transmission / reception of data to / from a device is connected via a network,
Means for storing and holding information of an application owned by each resource providing terminal;
Means for receiving an application use request from any resource providing terminal;
Means for selecting a resource providing terminal capable of providing the application requested to be used;
Means for obtaining the requested application from the resource providing terminal when there is a resource providing terminal capable of providing the requested application;
Means for providing the resource providing terminal that requests use of the application with the acquired application itself or a processing function of the application;
Means for receiving a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal, and managing the resource usage status of each resource providing terminal;
Means for receiving operation data to be processed from the main processing unit;
When computing data subject to computation processing is received from the main processor, a resource providing terminal that requests computation processing is selected based on the resource usage status of each resource providing terminal, and data suitable for the selected resource providing terminal Means for transmitting a quantity of operational data;
Means for receiving post-computation data of the computation processing result from the resource providing terminal that requested the computation processing;
And a means for transmitting the post-computation data to the main processing unit when the post-computation data of the computation processing result is received from all the resource providing terminals that have requested the arithmetic processing. Monitoring device in a system using a ring.
請求項3記載のグリッドコンピューティングを用いたシステムにおける監視装置において,In the monitoring apparatus in the system using the grid computing according to claim 3,
前記各リソース提供端末ごとに,リソースの提供に関する情報またはアプリケーションの提供に関する情報を管理する手段と,Means for managing information related to resource provision or application provision for each resource providing terminal;
前記管理されたリソースの提供に関する情報またはアプリケーションの提供に関する情報をもとに,電子マネーに換算可能なポイントを計算し,前記各リソース提供端末ごとのポイント情報を保持する手段とを備えるMeans for calculating points that can be converted into electronic money on the basis of the information related to the provision of the managed resource or the information related to the provision of the application, and storing the point information for each resource providing terminal.
ことを特徴とするグリッドコンピューティングを用いたシステムにおける監視装置。The monitoring apparatus in the system using the grid computing characterized by the above-mentioned.
要求された演算処理対象の演算データを分割する主処理装置と,分割された演算データの演算を行う複数のリソース提供端末と,それらの複数のリソース提供端末を監視し,リソース提供端末と主処理装置との間でのデータの送受信を管理する監視装置とをネットワークで接続したグリッドコンピューティングを用いたシステムにおける監視装置のコンピュータが実行するためのプログラムであって,
前記各リソース提供端末が所有するアプリケーションの情報を記憶し保持する処理と,
いずれかのリソース提供端末からのアプリケーション使用要求を受ける処理と,
前記使用要求されたアプリケーションを提供可能なリソース提供端末を選出する処理と,
前記使用要求されたアプリケーションを提供可能なリソース提供端末が存在する場合に,そのリソース提供端末から前記使用要求されたアプリケーションを取得する処理と,
前記アプリケーションの使用を要求するリソース提供端末に,前記取得したアプリケーション自体またはそのアプリケーションの処理機能を提供する処理と,
前記リソース提供端末から送信される自端末のリソース使用状況を伝えるためのヘルスチェックパケットを受信し,各リソース提供端末のリソース使用状況を管理する処理と,
前記主処理装置から演算処理対象の演算データを受け取る処理と,
前記主処理装置から演算処理対象の演算データを受け取った場合に,前記各リソース提供端末のリソース使用状況に基づき,演算処理を依頼するリソース提供端末を選出し,選出したリソース提供端末に見合ったデータ量の演算データを送信する処理と,
演算処理を依頼したリソース提供端末から演算処理結果の演算後データを受信する処理と,
演算処理を依頼したすべてのリソース提供端末から演算処理結果の演算後データを受信した場合に,それらの演算後データを合わせて前記主処理装置へ送信する処理とを,
コンピュータに実行させるためのグリッドコンピューティングを用いたシステムにおける監視装置用プログラム。
A main processing unit that divides requested operation data to be processed, a plurality of resource providing terminals that perform operations on the divided operation data, and monitors the plurality of resource providing terminals. A program to be executed by a computer of a monitoring device in a system using grid computing in which a monitoring device that manages transmission / reception of data to / from the device is connected via a network,
A process for storing and holding information of applications owned by each resource providing terminal;
A process of receiving an application use request from any resource providing terminal;
A process of selecting a resource providing terminal capable of providing the application requested to be used;
A process of obtaining the requested application from the resource providing terminal when there is a resource providing terminal capable of providing the requested application;
A process of providing the obtained application itself or a processing function of the application to a resource providing terminal that requests use of the application;
A process of receiving a health check packet for transmitting the resource usage status of the own terminal transmitted from the resource providing terminal and managing the resource usage status of each resource providing terminal;
A process of receiving operation data to be processed from the main processing unit;
When computing data subject to computation processing is received from the main processor, a resource providing terminal that requests computation processing is selected based on the resource usage status of each resource providing terminal, and data suitable for the selected resource providing terminal Processing to send a quantity of computed data;
Processing to receive post-computation data of the computation processing result from the resource providing terminal that requested the computation processing;
A process of transmitting the post-computation data to the main processing device when the post-computation data of the computation process result is received from all the resource providing terminals that have requested the computation process;
A monitoring device program in a system using grid computing to be executed by a computer.
JP2003093232A 2003-03-31 2003-03-31 Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device Expired - Fee Related JP3977765B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003093232A JP3977765B2 (en) 2003-03-31 2003-03-31 Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003093232A JP3977765B2 (en) 2003-03-31 2003-03-31 Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device

Publications (2)

Publication Number Publication Date
JP2004302741A JP2004302741A (en) 2004-10-28
JP3977765B2 true JP3977765B2 (en) 2007-09-19

Family

ID=33406081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003093232A Expired - Fee Related JP3977765B2 (en) 2003-03-31 2003-03-31 Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device

Country Status (1)

Country Link
JP (1) JP3977765B2 (en)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236123A (en) 2005-02-25 2006-09-07 Fujitsu Ltd Job distribution program, job distribution method and job distribution device
JP4673112B2 (en) 2005-04-01 2011-04-20 キヤノン株式会社 Information processing apparatus, control method therefor, and information processing system
KR100551454B1 (en) * 2005-11-29 2006-02-14 (주)그리드원 Grid computing control method for testing application program capacity of server and service method there of
JP4700104B2 (en) * 2006-03-17 2011-06-15 富士通株式会社 Server management method, program and apparatus
JP5135750B2 (en) * 2006-09-29 2013-02-06 富士通株式会社 Grid system, grid scheduling program and method
JP2008102857A (en) * 2006-10-20 2008-05-01 Sony Computer Entertainment Inc Distributed computing support device, and control method and program for distributed computing system
JP5188057B2 (en) * 2006-11-14 2013-04-24 株式会社ソニー・コンピュータエンタテインメント Information processing system, information processing apparatus, and information processing method
JP4881748B2 (en) * 2007-01-18 2012-02-22 曙ブレーキ工業株式会社 Cultural property condition management system
WO2008105028A1 (en) * 2007-02-28 2008-09-04 Sony Computer Entertainment Inc. Distributed processing method, distributed processing system, server, program for the same, computer, and program for the same
JP5051220B2 (en) * 2007-03-16 2012-10-17 富士通セミコンダクター株式会社 Load distribution method, load distribution program, and load distribution apparatus
US8074219B2 (en) * 2007-06-27 2011-12-06 Microsoft Corporation Order preservation in data parallel operations
US8909570B1 (en) 2008-11-07 2014-12-09 Genetic Finance (Barbados) Limited Data mining technique with experience-layered gene pool
US8768811B2 (en) 2009-04-28 2014-07-01 Genetic Finance (Barbados) Limited Class-based distributed evolutionary algorithm for asset management and trading
US9466023B1 (en) 2007-11-08 2016-10-11 Sentient Technologies (Barbados) Limited Data mining technique with federated evolutionary coordination
CN101939727A (en) * 2007-11-08 2011-01-05 遗传学金融(巴巴多斯)有限公司 Distributed network for performing complex algorithms
JP5382106B2 (en) * 2009-02-23 2014-01-08 日本電気株式会社 Application deployment system, application deployment method, and application deployment program
JP5695030B2 (en) 2009-04-28 2015-04-01 センティエント テクノロジーズ (バルバドス) リミテッド Decentralized evolutionary algorithms for asset management and asset trading
JP2011048419A (en) * 2009-08-25 2011-03-10 Nec Corp Resource management device, processing system, resource management method, and program
JP5410301B2 (en) * 2010-01-05 2014-02-05 日本電信電話株式会社 Distributed processing system, distributed processing method, and program
WO2012144013A1 (en) 2011-04-18 2012-10-26 富士通株式会社 Scheduling method and task processing method
WO2012157106A1 (en) * 2011-05-19 2012-11-22 株式会社日立製作所 Calculator system, data parallel processing method and program
US9304895B1 (en) 2011-07-15 2016-04-05 Sentient Technologies (Barbados) Limited Evolutionary technique with n-pool evolution
US9002759B2 (en) 2011-07-15 2015-04-07 Sentient Technologies (Barbados) Limited Data mining technique with maintenance of fitness history
US9367816B1 (en) 2011-07-15 2016-06-14 Sentient Technologies (Barbados) Limited Data mining technique with induced environmental alteration
US9710764B1 (en) 2011-07-15 2017-07-18 Sentient Technologies (Barbados) Limited Data mining technique with position labeling
JP5965999B2 (en) * 2012-05-17 2016-08-10 株式会社日立製作所 Job execution system, job execution program, and job execution method
US10025700B1 (en) 2012-07-18 2018-07-17 Sentient Technologies (Barbados) Limited Data mining technique with n-Pool evolution
CN104580338B (en) 2013-10-29 2018-09-07 华为技术有限公司 A kind of method for processing business, system and equipment
US11288579B2 (en) 2014-01-28 2022-03-29 Cognizant Technology Solutions U.S. Corporation Training and control system for evolving solutions to data-intensive problems using nested experience-layered individual pool
US10430709B2 (en) 2016-05-04 2019-10-01 Cognizant Technology Solutions U.S. Corporation Data mining technique with distributed novelty search
US10268953B1 (en) 2014-01-28 2019-04-23 Cognizant Technology Solutions U.S. Corporation Data mining technique with maintenance of ancestry counts
WO2015151290A1 (en) * 2014-04-04 2015-10-08 株式会社日立製作所 Management computer, computer control method, and computer system
KR102246362B1 (en) 2014-10-24 2021-04-28 삼성전자주식회사 Method and apparatus for wireless grid-computing
WO2016116000A1 (en) * 2015-01-23 2016-07-28 浙江吉利控股集团有限公司 Mobile terminals, combined terminal equipment, and method for joined control
WO2016132497A1 (en) * 2015-02-19 2016-08-25 株式会社日立製作所 Data analysis system and data analysis method
WO2016207731A2 (en) 2015-06-25 2016-12-29 Sentient Technologies (Barbados) Limited Alife machine learning system and method
US10430429B2 (en) 2015-09-01 2019-10-01 Cognizant Technology Solutions U.S. Corporation Data mining management server
US10956823B2 (en) 2016-04-08 2021-03-23 Cognizant Technology Solutions U.S. Corporation Distributed rule-based probabilistic time-series classifier
US11250328B2 (en) 2016-10-26 2022-02-15 Cognizant Technology Solutions U.S. Corporation Cooperative evolution of deep neural network structures
US11403532B2 (en) 2017-03-02 2022-08-02 Cognizant Technology Solutions U.S. Corporation Method and system for finding a solution to a provided problem by selecting a winner in evolutionary optimization of a genetic algorithm
US10744372B2 (en) 2017-03-03 2020-08-18 Cognizant Technology Solutions U.S. Corporation Behavior dominated search in evolutionary search systems
US11507844B2 (en) 2017-03-07 2022-11-22 Cognizant Technology Solutions U.S. Corporation Asynchronous evaluation strategy for evolution of deep neural networks
US11281977B2 (en) 2017-07-31 2022-03-22 Cognizant Technology Solutions U.S. Corporation Training and control system for evolving solutions to data-intensive problems using epigenetic enabled individuals
US11250314B2 (en) 2017-10-27 2022-02-15 Cognizant Technology Solutions U.S. Corporation Beyond shared hierarchies: deep multitask learning through soft layer ordering
US11182677B2 (en) 2017-12-13 2021-11-23 Cognizant Technology Solutions U.S. Corporation Evolving recurrent networks using genetic programming
CA3085897C (en) 2017-12-13 2023-03-14 Cognizant Technology Solutions U.S. Corporation Evolutionary architectures for evolution of deep neural networks
JP6345871B1 (en) * 2017-12-27 2018-06-20 株式会社グルーツ Virtual currency management device, virtual currency management method and program
US11527308B2 (en) 2018-02-06 2022-12-13 Cognizant Technology Solutions U.S. Corporation Enhanced optimization with composite objectives and novelty-diversity selection
US11574201B2 (en) 2018-02-06 2023-02-07 Cognizant Technology Solutions U.S. Corporation Enhancing evolutionary optimization in uncertain environments by allocating evaluations via multi-armed bandit algorithms
WO2019157257A1 (en) 2018-02-08 2019-08-15 Cognizant Technology Solutions U.S. Corporation System and method for pseudo-task augmentation in deep multitask learning
US11755979B2 (en) 2018-08-17 2023-09-12 Evolv Technology Solutions, Inc. Method and system for finding a solution to a provided problem using family tree based priors in Bayesian calculations in evolution based optimization
US11481639B2 (en) 2019-02-26 2022-10-25 Cognizant Technology Solutions U.S. Corporation Enhanced optimization with composite objectives and novelty pulsation
US11669716B2 (en) 2019-03-13 2023-06-06 Cognizant Technology Solutions U.S. Corp. System and method for implementing modular universal reparameterization for deep multi-task learning across diverse domains
US12026624B2 (en) 2019-05-23 2024-07-02 Cognizant Technology Solutions U.S. Corporation System and method for loss function metalearning for faster, more accurate training, and smaller datasets
US11775841B2 (en) 2020-06-15 2023-10-03 Cognizant Technology Solutions U.S. Corporation Process and system including explainable prescriptions through surrogate-assisted evolution
JP2022171283A (en) * 2021-04-30 2022-11-11 マツダ株式会社 Management system and management method

Also Published As

Publication number Publication date
JP2004302741A (en) 2004-10-28

Similar Documents

Publication Publication Date Title
JP3977765B2 (en) Resource providing method in system using grid computing, monitoring device in the system, and program for the monitoring device
Xu et al. EOS: An architectural, performance, and economic analysis
JP5007301B2 (en) Separate download for electronic software download
US6463457B1 (en) System and method for the establishment and the utilization of networked idle computational processing power
AU7114200A (en) System and method for the establishment and utilization of networked idle computational processing power
EP1517258A2 (en) Content download to wireless devices
JP2001325041A (en) Method for utilizing computer resource and system for the same
KR20190047518A (en) Method and appratus for providing a cloud service based on cloud service brokerage
CN1939036A (en) Optimized concurrent data download within a grid computing environment
JP7090903B2 (en) Information processing system, data provision method, and manufacturing method of information processing system
CN103238151A (en) Techniques for network replication
KR101033813B1 (en) Cloud computing network system and file distrubuting method of the same
US8370800B2 (en) Determining application distribution based on application state tracking information
US7792952B2 (en) Rating system for web services
JP7019087B2 (en) Content management system, content management program and content management method for guaranteeing access rights of digital contents using blockchain
JP2003091327A (en) License management system and application delivery system
Tang et al. Framework for SaaS management platform
KR101094337B1 (en) Open market system for supporting trade of application and proper user's execution and method thereof
JP2004064284A (en) Traffic control method for p2p network and device, program and recording medium
JP2004038494A (en) User information management method, application delivery method, user information management server, application delivery server and program, user information management program
JP2002312327A (en) Method of providing and accounting for distribution contents by using peer-to-peer network and its device
JP4979616B2 (en) Software licensing system
JP4303506B2 (en) Billing data aggregation program
EP2034420A1 (en) A method and an apparatus for operating right
KR100941156B1 (en) Open market system for supporting trade of application and proper user's execution and method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070328

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070619

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070621

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110629

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130629

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130629

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees