JP3857409B2 - 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP3857409B2 JP3857409B2 JP06654998A JP6654998A JP3857409B2 JP 3857409 B2 JP3857409 B2 JP 3857409B2 JP 06654998 A JP06654998 A JP 06654998A JP 6654998 A JP6654998 A JP 6654998A JP 3857409 B2 JP3857409 B2 JP 3857409B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing
- analysis
- computer
- processing program
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体に関し、特にデータを複数の計算機で分散して解析する分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
科学技術分野などでは、大量のデータに対し、様々な較正処理及び解析処理を行い、研究を推進している。多くの研究機関では、計算機センター内に多くの計算機を有し、高速なネットワークで接続された分散システム環境を構築している。
【0003】
このような研究機関の研究者は、解析処理を実行する場合、解析処理の手順を決め、入力するデータ名、出力データ名、処理エンジン(処理プログラム)名を指示する。従来、このデータ名、処理エンジン名、解析処理手順名は、ファイルシステム上のフルパス等により指定し、処理を実行していた。
【0004】
【発明が解決しようとする課題】
しかし、この場合、各計算機のシステム構成が同じであるとは限らないため、計算機毎にデータ名等の指定を変更する必要があった。そのため、分散システム環境内の可搬性が保証されていなかった。すなわち、ある計算機で行った解析処理手順データを用いて、他の計算機で解析処理を実行しようにも、入力すべきデータの指定等を変更しなければ解析処理を実行できなかった。
【0005】
分散システム環境内の可搬性が保証されていないと、処理エンジンが存在しない場合や磁気ディスク装置のデータ領域が不足した場合に、利用可能な計算機にデータ及び解析処理の手順を転送し、継続して実行することが困難となる。
【0006】
また、各研究者が個別にデータ管理を行っていため、分散システム環境内で同じデータを一意に認識することができず、不要なデータ転送が発生していた。その結果、1台の計算機内に同一のデータ複製が複数存在し、計算機リソースを無駄にしていた。
【0007】
更に、研究者は入力する画像データ、処理途中の中間データ、解析結果データ及び解析処理の手順などを個人の環境若しくは計算機の一時領域に配置して、利用及び管理を行っている。そのため、研究者の各種情報は、システム内に分散してしまい、管理が困難となる場合がある。また、同じような情報が存在することにより、混乱が発生し、不要な中間データなどを消すことができず、計算機リソースを無駄に消費する場合が多かった。
【0008】
本発明はこのような点に鑑みてなされたものであり、複数の計算機に格納された情報を、システム内で統一して管理できる分散処理システムを提供することを目的とする。
【0009】
また、本発明の別の目的は、複数の計算機に格納された情報をシステム内で統一して管理するための分散処理方法を提供することである。
また、本発明の他の目的は、複数の計算機に格納された情報を、コンピュータシステム内で統一して管理させるための分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することである。
【0010】
【課題を解決するための手段】
図1は、本発明の原理構成図である。本発明では上記課題を解決するために、データを複数の計算機で分散して解析する分散処理システムであって、解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、前記管理簿テーブルに登録された各データまたは処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータまたは処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータまたは処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルと、解析処理実行のために計算機に転送され一時的に保持されているデータまたは処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルと、前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記管理簿テーブルと前記キャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの実際の格納先である計算機を元に前記倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる解析処理実行手段と、を備えることを特徴とする分散処理システムが提供される。
【0011】
このような分散処理システムによれば、解析処理手順データに従った解析処理の解析処理要求が入力されると、必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択され、選択された解析処理実行計算機に解析処理を実行するための作業領域とするディレクトリが新たに生成され、データおよび処理プログラムへのアクセスを可能とするリンク情報が作業領域内に登録され、解析処理手順データで示される解析処理手順に従った解析処理が実行され、作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データが、システム内で一意に識別するための情報名を付けて出力されると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機が新たに選択され、以後の処理が新たに選択された計算機で実行される。
【0012】
また、上記課題を解決するために、データを複数の計算機で分散して解析する分散処理方法であって、コンピュータが、解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、解析処理実行のために計算機に転送され一時的に保持されているデータおよび処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの格納先である計算機を元に、前記管理簿テーブルに登録された各データおよび処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータおよび処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる解析処理実行ステップ、を実行することを特徴とする分散処理方法が提供される。
このような分散処理方法によれば、解析処理手順データに従った解析処理の解析処理要求が入力されると、必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択され、選択された解析処理実行計算機に解析処理を実行するための作業領域とするディレクトリが新たに生成され、データおよび処理プログラムへのアクセスを可能とするリンク情報が作業領域内に登録され、解析処理手順データで示される解析処理手順に従った解析処理が実行され、作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データが、システム内で一意に識別するための情報名を付けて出力されると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機が新たに選択され、以後の処理が新たに選択された計算機で実行される。
【0013】
また、本発明は上記課題を解決するために、データを複数の計算機で分散して解析する分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、コンピュータに、解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、解析処理実行のために計算機に転送され一時的に保持されているデータおよび処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの格納先である計算機を元に、前記管理簿テーブルに登録された各データおよび処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータおよび処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる処理、を実行させる分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
この記録媒体に格納された分散処理プログラムをコンピュータに実行させれば、上記本発明の分散処理システムの機能がコンピュータ上に構築される。
【0014】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本発明の原理構成図である。データを解析処理するための複数の計算機1が設けられている。各計算機1には、複数の処理プログラム1aと複数のデータ1bとが格納されている。
【0015】
管理簿保持手段2は、管理簿2aを保持している。管理簿2aには、解析処理に必要となる情報(データ、解析処理手順データ、及び処理プログラム)をシステム内で一意に識別するための情報名と、各情報の実際の格納先(格納計算機名)との対応関係が登録されている。
【0016】
解析処理実行手段3は、情報名によって必要な情報を特定した解析処理要求を受け取ると、まず作業領域4を生成する。そして、管理簿保持手段2内の管理簿2aにより必要な情報の実際の格納先を認識し、実際の情報へのアクセスを可能とするリンク情報4a,4bを作業領域4内に登録する。このリンク情報4a,4bは、虚像であり実際の情報の内容は作業領域内には存在していない。そして、作業領域4内のリンク情報を介して実際の情報にアクセスすることで、解析処理を実行する。この際、解析処理の途中で生成される中間データ4cは、作業領域4内に保存する。
【0017】
このような分散処理システムによれば、各情報に対して、システム内で一意に識別可能な情報名が付与されているため、その情報名を指定した解析処理要求を入力すれば、解析処理実行手段3が目的の解析処理を実行する。そのため、利用者は、実際の情報がどの計算機に格納されているのかを意識する必要がない。従って、どの計算機で解析処理を実行する場合にも、解析処理要求の内容は同じである。
【0018】
しかも、解析処理実行手段3は、解析処理を実行するための作業領域4を生成し、解析処理に関係する情報の管理を作業領域4内だけで行うため、実行した解析処理に関する情報と他の情報とが混じり合うことがない。そのため、実行した解析処理の情報が不要になれば、作業領域ごと削除すればよい。
【0019】
以下に、本発明を天体観測システムに適用した場合を例にとり、本発明の実施の形態を説明する。
図2は、天体観測システムを示す図である。この例では、天体望遠鏡11が山頂に設置されている。この天体望遠鏡11は、CCD(Charge Coupled Device) により星などの天体の画像データを取得する。天体望遠鏡11は、ふもとのコンピュータシステム100に接続されている。そして、天体望遠鏡が観測した天体の画像データは、コンピュータシステム100に送られる。
【0020】
天体望遠鏡11から送られた画像データ110は、コンピュータシステム100内に格納される。画像データ110は、処理の対象となる観測データとなったり、標準較正データ作成のための生較正データであったりする。
【0021】
解析処理手順エディタ120は、端末装置(図示せず)からの指令に基づいて解析処理指令を実行コントローラ174に出力するとともに、解析処理手順データ140を生成する。解析処理手順データ140には、解析処理を実行した順番やその解析処理に用いた処理エンジン(処理プログラム)130、解析に用いた画像データ110、中間データ150、及び解析結果データ160に関する情報が登録されている。
【0022】
処理エンジン130は、処理内容毎に設けられた処理プログラムである。
実行コントローラ174は、解析処理手順エディタ120からの指示により、必要な入力データと解析処理手順が指定されると、指定された処理エンジン130と画像データ110を取得し、指定された内容の解析処理を実行する。処理の結果、中間データ150や解析結果データ160が生成される。
【0023】
図3は、コンピュータシステムの構成を示す図である。コンピュータシステム100は、複数の計算機101で構成されている。計算機101には、ベクタープロセッサやスカラープロセッサなどがある。この計算機101には、高速のネットワーク103を介して複数の端末装置102が接続されている。端末装置102は、ワークステーションやパーソナルコンピュータである。ユーザは、端末装置102を操作することにより、天体望遠鏡11の動作を指令したり、観測データの解析処理の指示を出すことができる。
【0024】
天体観測システムのような超高速処理を必要とするシステムでは、数十台のコンピュータで構成されることがほとんどである。そのため、画像データ110、中間データ150、処理エンジン130などが個別の計算機に分散される。
【0025】
以下に、解析処理の手順、及びその手順の内容をデータ化した解析処理手順データの内容について説明する。なお、以下の説明中の観測データと生較正データが、前述の画像データ110に相当し、何らかの処理(較正処理や、標準較正データ作成処理)を行った後の処理済データが前述の中間データ150に相当する。
【0026】
図4は、解析処理手順の概念図である。ここでは、観測データ111に「較正処理A」、「較正処理B」、「較正処理C」の計3回の較正処理を施すことにより、解析結果データ161が得られるものとする。
【0027】
観測データ111に較正処理Aを施すには、較正処理A用標準較正データ151が用いられる。較正処理Aの結果、較正処理A済データ152が得られる。更に、較正処理B用標準較正データ153を用いて、較正処理A済データ152に較正処理Bを施す。その結果、較正処理AB済データ154が得られる。同様に、較正処理C用標準較正データ155を用いて、較正処理AB済データ154に較正処理Cを施す。その結果、解析結果データ161が得られる。
【0028】
一方、各較正処理用の標準較正データを得るためにも、所定の解析処理が必要である。較正処理A用標準較正データ151を得るには、複数の生較正データ112に対して較正処理A用標準較正データ作成処理を施す。較正処理B用標準較正データ153を得るには、複数のA済較正データ156に対して較正処理B用標準較正データ作成処理を施す。較正処理C用標準較正データ155を得るには、複数のAB済較正データ157に対して較正処理C用標準較正データ作成処理を施す。
【0029】
なお、A済較正データ156とAB済較正データ157との作成にも、同様の解析処理が必要である。そのため、一連の解析処理は、3次元空間を用いて表現する事ができる。
【0030】
図5は、3次元構造テーブルで表現された解析処理手順を示す図である。この例では、x−y−zの3次元構造テーブルになっており、x軸に同一種別内のデータ順を、y軸にデータ種別を、z軸に処理レベル(段)を取っている。ここで処理レベルとは、較正処理や、標準較正データ作成処理などの解析処置が行われた回数である。データ種別では、観測データが1つの種別であり、また、各較正処理(較正処理Aや較正処理Bなど)を行うために用いられるデータ群(生較正データや標準較正データなど)が1つの種別である。同一種別内のデータ順は、各処理レベルにおける各データ種別ごとのデータを一列に並べた場合の各データの順番である。
【0031】
このような多次元構造テーブル上に全てのデータを配置させることにより、解析処理手順データ内で、各種データの関係が把握される。ところが、解析処理に必要なデータや処理エンジンが、複数の計算機に分散して格納されていると、従来技術で説明したような問題が生じる。
【0032】
ここで、情報が分散されることによる従来技術の問題点を考察する。従来は、各計算機に格納されたデータは、それぞれの計算機のノード名、ファイルパス、及びファイル名により特定されていた。そのため、同じファイルパス、及びファイル名のデータが複数の計算機に個別に存在することが許されていた。また、データを保存する際に、ファイルパスやファイル名などを研究者が個別に考えていたため、統一されたデータ管理が難しくなっていた。
【0033】
従って、データを格納している計算機の情報を含まない情報でアクセスできるようにすることで、従来技術の問題点を解決をできる。ただし、分散システム環境で一意に認識できるデータ名称と、その名称と実体との対応付けを行う枠組みが必要となる。
【0034】
そこで、分散システム環境で一意に認識できるデータ名称として、処理に関連する情報の命名定義を定める。本実施の形態では、各データ及び処理エンジンが分散システム内でユニークとなるように、以下のような命名規則を定義する。
【0035】
解析処理結果データ(解析処理手順の頂点)は、「******.usr.grp」で表す。ここで、「******」は、利用者が自由に設定可能な名称である。これは、利用者毎にユニークであればよい(以下同様)。「usr 」は、そのデータを作成した利用者のユーザ名を表し、「grp 」は、そのデータを作成した利用者の属するグループ名を表す(以下、同様)。
【0036】
解析処理手順名は、「******.usr.grp.cube 」で表す。中間データ(解析処理手順内の中間データ)は、「******.usr.grp.x-y-z」で表す。ここで、「x-y-z 」は、解析処理手順を3次元空間で表現した際の中間データの座標である。
【0037】
処理エンジン名は、「******.usr.grp.engine.version 」。ここで、「engine」は、エンジン名を示し、「version 」は、そのプログラムの版数を示す。
画像データ名は、「フレームID.usr.grp」で表す。「フレームID」は、天体望遠鏡11で観測された各画像に付けられた識別子である。
【0038】
「キャッシュデータ名」は、キャッシュ元のデータ名と同じ名前を使用する。なお、キャッシュデータは、作業領域を作成した計算機上でデータが存在しない場合に、処理を実行する計算機へ転送されたデータである。このキャッシュデータは、一定の期間保持され、その後削除される。このキャッシュデータは、実行制御部で管理され、各利用者が利用できる。このように、キャッシュデータを共用可能とすることにより、ネットワーク上のデータ転送が少なくなる。
【0039】
以上のような命名規則を設けることで、複数の計算機にデータが分散していても、それらのデータを一意に識別することができる。なお、解析処理手順エディタ120(図2に示す)により作成される解析処理手順データの内容も、上記命名規則に従った名前で各種データが特定される。
【0040】
以下に、解析処理手順データの内容について説明する。
図6、図7は、解析処理手順データの例を示す図である。解析処理手順データには、まず解析処理手順データ自身の情報が登録されている。
【0041】
「name」は、解析処理手順データの名称を指名している。この名称は、分散システムで一意に識別可能な名称である。
「status」は、解析処理手順の状態を示している。「DSave 」は保存されていることを示し、「DEdit 」は更新若しくは新規作成の状態を示し、「DExec 」は解析処理を実行中であることを示している。
【0042】
「owner 」は、解析処理手順データの所有者名を示している。
「group 」は、解析処理手順データの所有者が属するグループ名を示している。
【0043】
「create_date」は、作成日時を示している。
「permission」は、所有者、グループのメンバ、全ユーザのそれぞれに対する操作の権限を示している。権限は「−」、「r」、「w」、「x」の4文字のいずれかの文字を9文字並べることで指定している。9つの文字は、左から順番に以下のような意味を有している。
【0044】
1番目の文字は、所有者に対する参照権限の有無を示しており、ここが「r」であれば参照権限が有り、「−」であれば参照権限がない。
2番目の文字は、所有者に対する書き込み権限の有無を示しており、ここが「w」であれば書き込み権限が有り、「−」であれば書き込み権限がない。
【0045】
3番目の文字は、所有者に対する実行権限の有無を示しており、ここが「x」であれば実行権限が有り、「−」であれば実行権限がない。
4番目の文字は、グループのメンバに対する参照権限の有無を示しており、ここが「r」であれば参照権限が有り、「−」であれば参照権限がない。
【0046】
5番目の文字は、グループのメンバに対する書き込み権限の有無を示しており、ここが「w」であれば書き込み権限が有り、「−」であれば書き込み権限がない。
【0047】
6番目の文字は、グループのメンバに対する実行権限の有無を示しており、ここが「x」であれば実行権限が有り、「−」であれば実行権限がない。
7番目の文字は、全ユーザに対する参照権限の有無を示しており、ここが「r」であれば参照権限が有り、「−」であれば参照権限がない。
【0048】
8番目の文字は、全ユーザに対する書き込み権限の有無を示しており、ここが「w」であれば書き込み権限が有り、「−」であれば書き込み権限がない。
9番目の文字は、全ユーザに対する実行権限の有無を示しており、ここが「x」であれば実行権限が有り、「−」であれば実行権限がない。
【0049】
図の例では、解析処理手順データの所有者である「dash1」に対しては、参照、書き込み、及び実行の権限が与えられているが、その以外の者に対しては如何なる権限も与えられていない。
【0050】
「abstract」は、解析処理の概要を示している。
「obe 」は、観測装置名を示している。
「filter」は、観測にあたって使用したフィルタ名を示している。
【0051】
「frame 」は、解析処理後に作成されるデータの種別を示している。
「current _step」は、現在の解析処理の段を示している。解析処理の段は、解析処理に必要なデータを管理する3次元テーブルの高さ方向の単位である。なにも処理していないデータの段を「0」として、1つめの処理エンジンで処理された結果として得られるデータの段を1と数える。また、現在の段数は、その解析処理手順の処理が済んだ段が示されている。
【0052】
「row _num 」は、解析処理で使用するデータの種別数を示している。
「irow_ind 」は、データの種別のインデックス番号を示している。
「step_num 」 は、解析処理手順の段数を示している。
【0053】
「engine_num 」は、解析処理の処理プログラム数を示している。
「imagedata_name」は、解析処理の結果作成されるデータ名を示している。
「engine_name0 」は、1つめの処理エンジン名とその引数を示している。
【0054】
「engine_attr0 」は、1つめの処理エンジンの種別とその入力ファイル数、出力ファイル数を示している。プログラムの種別には、「Create」と「Apply 」とがある。「Create」は、複数(1以上の自然数)の入力データから複数(1以上の自然数)のデータを作成するものである。「Apply 」は、1つのデータに対し複数(1以上の自然数)のデータを作用させ、1つのデータを作成するものである。
【0055】
入出力データ数は次の定義に従う。入力データ数は1以上の自然数であるが、Nとした場合には、入力データ数は不定となる。同様に、出力データ数は1以上の自然数であるが、Nとした場合には、入力データ数は不定となる。
【0056】
「engine_name1 」は、2つめの処理エンジン名とその引数を示している。
「engine_attr1 」は、2つめの処理エンジンの種別とその入力ファイル数、出力ファイル数を示している。
【0057】
「engine_name2 」は、3つめの処理エンジン名とその引数を示している。
「engine_attr2 」は、3つめの処理エンジンの種別とその入力ファイル数、出力ファイル数を示している。
【0058】
「engine_name3 」は、4つめの処理エンジン名とその引数を示している。
「engine_attr3 」は、4つめの処理エンジンの種別とその入力ファイル数、出力ファイル数を示している。
【0059】
以下同様に、処理エンジンに関する情報が登録されている。
「data flag 」以降は、処理エンジンの入出力を指示するためのフラグである。このフラグは、各々のデータの該当する処理プログラムの入力を制御するフラグであり、「0」、「1」、「2」の数字が設定される。各数字の意味は次の通りである。「0」は、入力でないことを意味する。「1」は、入力データであることを示す。「2」は、「 Apply 」の場合に、同時に入力される他の「1」のフラグのついたデータに対して作用させるデータである。
【0060】
「data name 」以降は、本処理で使用されるデータの名前を示している。これらのファイル名で指定されるファイルとフラグにより処理プログラムの実行の際の入出力ファイルが決定する。なお、ここで指定しているデータの名前は、分散システムにおいて一意に識別可能な名前である。
【0061】
「cube log」以降は、処理エンジンのロギング情報を示している。
このような解析処理手順データを用いて解析処理を実行するための分散処理システムについて、以下に具体的に説明する。
【0062】
図8は、分散処理システムの機能を示すブロック図である。GUI(graphical User Interface)コントローラ171は、各端末装置102(図3に示す)に設けられており、利用者に対する各種操作画面の表示と、利用者からの入力の受付とを行うための機能を有している。利用者は、この機能を用いて解析処理手順エディタ120を起動し、解析処理手順データを作成するとともに、その実行依頼を実行コントローラ174へ送る。
【0063】
管理簿サーバ172は、解析処理に必要なデータがどの倉庫サーバ181〜183に格納されているのかを管理簿テーブル172aにより管理している。管理簿テーブル172aは、解析処理手順データを管理する解析処理手順管理テーブル、処理エンジンを管理する処理エンジンテーブル、及び入力データ(画像データ、中間データ)を管理する入力データテーブルからなる。
【0064】
図9は、解析処理手順管理テーブルの例を示す図である。解析処理手順管理テーブル172aaには、以下の項目が設けられ、倉庫サーバ181〜183に登録されている全ての解析処理手順データに関する情報が登録されている。
【0065】
「name」、「abstract」、「owner 」、「group 」、「create_date」、「imagedata _name」、「obe 」、「frame 」、及び「permission」は、解析処理手順データの説明に示した通りである。
【0066】
「warehousename 」は、その解析処理手順データが実際に格納されている倉庫サーバ名を示している。
「datatype」は、そのデータの種別を示しており、このテーブル内では、全て解析処理手順データであることを示す名称「PROCEDURE 」が登録されている。
【0067】
図10は、処理エンジン管理テーブルの例を示す図である。処理エンジン管理テーブル172abには、以下の項目が設けられ、倉庫サーバ181〜183に格納されている全ての処理エンジンに関する情報が登録されている。
【0068】
「name」「abstract」、「owner 」、「group 」、「create_date」、「permission」、「warehousename 」、及び「datatype」については、解析処理手順管理テーブル172aaと同じ内容である。ただし、「datatype」には、処理エンジンであることを示す名称「ENGINE」が登録されている。
【0069】
「arg 」は、処理エンジンを実行する際に指定する引数を示している。 図11は、入力データ管理テーブルの例を示す図である。入力データ管理テーブル172acには、以下の項目が設けられ、倉庫サーバ181〜183に格納されている全ての入力データに関する情報が登録されている。
【0070】
「name」、「abstract」、「frame 」、「owner 」、「group 」、「create_date」、「permission」、「warehousename 」、及び「datatype」については、解析処理手順管理テーブル172aaと同じ内容である。ただし、「datatype」には、入力データであることを示す名称「IMAGEDATA」が登録されている。「procube _name」は、そのデータの解析に用いられた解析処理手順データ名を示している。
【0071】
以上のような管理簿テーブル172aを用いることで、「name」と「warehousename 」との対応付けにより、管理簿サーバ172は、実行コントローラ174から解析処理手順データの所在確認要求を受けた際に、該当するデータを格納している倉庫サーバ名を応答することができる。
【0072】
図8に戻り、キャッシュ管理簿サーバ173は、キャッシュデータがどの倉庫サーバ181〜183に格納されているのかをキャッシュ管理簿テーブル173aで管理している。
【0073】
図12は、キャッシュ管理簿テーブルの例を示す図である。キャッシュ管理簿テーブル173aには、「name」、「Create_date」、及び「Warehousename 」の項目が設けられており、各倉庫サーバ181〜183がキャッシュデータとして保持しているデータの情報が登録されている。
【0074】
「name」は、キャッシュされたデータの名前である。この名前は、元のデータの名前(分散システムで一意に識別する名前)と同じである。
「Create_date」は、キャッシュデータが生成された日付である。
【0075】
「Warehousename 」は、キャッシュデータを保持している倉庫サーバの名称である。
図8に戻り、実行コントローラ174は、解析処理の実行要求とともに解析処理手順データ名が入力されると、その解析処理の実行環境を構築する。実行コントローラ174が行う処理としては、実行を行うべき倉庫サーバの選択と、選択した倉庫サーバへの処理の依頼等がある。
【0076】
倉庫サーバ181〜183は、解析処理に必要な各種データを格納している。倉庫サーバ181〜183が格納するデータとしては、登録済データ181a,182a,183aとキャッシュデータ181b,182b,183bとがある。登録済データ181a,182a,183aは、解析処理手順データ、画像データ、中間データ、解析結果データ、及び処理エンジンなどである。キャッシュデータ181b,182b,183bは、他の倉庫サーバ181〜183から取得したデータである。
【0077】
また、倉庫サーバ181〜183には、倉庫内データ管理テーブル181c,182c,183cと倉庫状態テーブル181d,182d,183dとが設けられている。
【0078】
図13は、倉庫内データ管理テーブルの例を示す図である。倉庫内データ管理テーブル181cには、「status」、「name」、「abstract」、「owner 」、「group 」、「permission」、「create_date」、「last_access_time」、「caching_time」、「path」、「arg 」、「obe 」、及び「frame 」の項目が設けられており、登録済データ181aとキャッシュデータ181bとに関する情報が登録されている。
【0079】
「name」、「abstract」、「owner 」、「group 」、「permission」、「create_date」、「arg 」、「obe 」、及び「frame 」については前述の通りである。
【0080】
「status」は、そのデータの種別を示している。処理エンジンであれば「engine」と設定され、画像データであれば「image 」と設定され、解析処理手順データであれば「procedure 」と設定される。
【0081】
「last_access_time」は、そのデータに最後にアクセスがあった時刻である。 「caching_time」は、キャッシュデータに関して設定され、そのデータがキャッシングされた時刻を示している。
【0082】
「path」は、そのデータの計算機内での位置がフルパス(ルートディレクトリからのパス)で示されている。
図14は、倉庫状態テーブルの例を示す図である。倉庫状態テーブル181dは、「時刻」、「作業領域容量」、「使用状況」、「CPU 負荷」、及び「ネットワーク負荷」の項目が設けられており、その倉庫サーバ181の稼働状態に関する情報が登録されている。「時刻」は、その情報を取得した時刻である。「作業領域容量」は、作業領域として使用可能なハードディスク装置の空き容量である。「使用状況」は、作業領域内の使用中の容量を、全体の容量に対する割合で示している。「CPU負荷」は、その倉庫サーバ181が設けられている計算機の負荷を示している。「ネットワーク負荷」は、その倉庫サーバ181が設けられている計算機が他の計算機とデータ通信を行うときの伝送性能に対する負荷を示している。
【0083】
図8に示した各要素は、CORBA(Common Object Request Broker Architecture) のような分散システム環境における共通仕様で互いに情報交換を行っている。また、実行コントローラ174から作業領域作成要求を受け取った倉庫サーバは、自己の管理する領域内に作業領域を構築し、作業領域サーバ183eを起動する。
【0084】
以下、分散処理システムにおける解析処理の手順を説明する。なお、フローチャートを用いた説明においては、ステップ番号に沿って説明する。
図15は、解析処理に必要な機能の構築処理を示すフローチャートである。これは、利用者が、GUIコントローラ171を用いて実行コントローラ174に対して命令を出すことで、実行コントローラ174が実行する処理である。
[S1]各計算機に設けられている倉庫サーバ181〜183を起動し、各種データを登録する。以後、倉庫サーバ181〜183は、登録されたデータを管理する。
[S2]管理簿サーバ172を起動し、全ての倉庫サーバ181〜183に格納されている情報を登録する。
[S3]キャッシュ管理簿サーバ173を起動する。起動時には、キャッシュデータを0件とする。そして、キャッシュ管理簿サーバ173は、全倉庫サーバ181〜183にキャッシュデータとして格納されているデータの情報を登録し、管理する。
【0085】
このようにして、解析処理の準備ができたら、利用者は解析処理を実行する。図16は、解析処理の動作イメージを示す図である。この図を参照しながら、以下のフローチャートを説明する。
【0086】
図17は、解析処理の手順を示すフローチャートである。
[S11]利用者は、解析処理手順エディタを起動し、解析処理手順を作成する。作成した解析処理手順は、解析処理手順データとしていずれかの倉庫サーバに格納する。
[S12]GUIコントローラ171から実行コントローラ174に、解析処理手順名を指定して、実行を指示する(図16のS101)。
[S13]実行コントローラ174は、まず、管理簿サーバ172に対して指定された解析処理手順がどの倉庫サーバに格納されているのかを問い合わせる。そして、該当する倉庫サーバから解析処理手順を取得する。次に、取得した解析処理手順の内容を解析し、その解析処理に必要な入力データと処理エンジンとの所在を管理簿サーバ172に問い合わせる(図16のS102)。
【0087】
管理簿サーバ172は、入力データと処理エンジンとが格納されている倉庫サーバを特定するとともに、キャッシュ管理簿サーバ173へ、入力データと処理エンジンとの所在を問い合わせる(図16のS103)。キャッシュ管理簿サーバ173は、該当するデータがいずれかの倉庫サーバにキャッシュされていれば、データがどの倉庫サーバにキャッシングされているのかの情報を応答する。このとき、複数の倉庫サーバにキャッシュされていれば、複数の倉庫サーバの情報を応答することになる。
【0088】
管理簿サーバ172は、キャッシュ管理簿サーバ173からの応答を、自身が特定した倉庫サーバの情報に追加し、実行コントローラ174に返す。
[S14]実行コントローラ174は、実行先倉庫を決定する。この処理の詳細は後述する。ここでは、処理に必要な解析処理手順データ141、処理エンジン131,及び画像データ1110が格納されている倉庫サーバ183に決定したものとする。
[S15]実行コントローラ174は、ステップS14において決定した倉庫サーバ183に、解析処理手順を実行するための作業領域の作成を依頼する(図16のS104)。このとき、各入力データの所在情報も同時に送付する。
[S16]作業領域作成依頼を受け取った倉庫サーバは、作業領域を作成可能か否かを判断する。作業領域を作成可能であればステップS17に進み、作業領域を作成できなければステップS14に進む。
[S17]倉庫サーバ183は、解析処理手順に対応する作業領域として、ディレクトリを作成する。以後、倉庫サーバ183が、そのディレクトリの名称とパス名を管理する。また、作成したディレクトリを利用して処理を実行する作業領域サーバ183eを、倉庫サーバ183と同じ計算機内で起動し、初期化する(図16のS105)。
[S18]倉庫サーバ183は、作業領域を準備する。具体的には、まず、倉庫サーバ183自身が管理していない入力データ、処理エンジンを、他の倉庫サーバ181,182へ要求する(図16のS106)。必要であれば解析処理手順データも取り寄せる。倉庫サーバ181,182は、要求に応じてデータを返す(図16のS107)。
【0089】
次に、取り寄せた入力データを、倉庫サーバ183内でキャッシュデータ1120として保存・管理する(図16のS108)。また、キャッシュしたデータの情報をキャッシュ管理簿サーバ173に渡す(図16のS109)。キャッシュ管理簿サーバ173は、倉庫サーバ183でキャッシュされたデータ名と倉庫名とを、キャッシュ管理簿に登録する。
【0090】
更に、倉庫サーバ183は、解析処理に必要な入力データや処理エンジンを、UNIXのリンクコマンドにより作業領域にリンクする(図16のS110)。リンクするときの名称は、分散システム内で一意に識別可能な名称である。リンクされたことにより、作業領域には、処理に必要なデータを指し示すリンク情報111a,112a,113a,114aが存在することになる。
【0091】
作業領域が準備できたら、実行コントローラ174からの作業領域作成依頼の回答として、作業領域サーバの情報を返す(図16のS111)。
[S19]実行コントローラ174は、倉庫サーバ183から応答された作業領域サーバ183cに対して解析処理を依頼する(図16のS112)。
[S20]作業領域サーバは、作業領域ディレクトリ内の解析処理手順データ141aを読み込み、そのディレクトリ配下の画像データ111a,112aを使用し、処理エンジン131aにより解析処理を行い中間データ151を作成する。更に中間データ151を読み込み、処理エンジンにより解析処理を継続する。すべての中間データは、作業領域ディレクトリに解析処理手順で指定された名前で作成され、その名称で利用・参照できる。
【0092】
図18は、実行先倉庫決定処理のフローチャートである。この処理は、全て実行コントローラ174が行う。
[S31]解析処理手順データ141を読み込む。
[S32]管理簿サーバ172の管理簿テーブル172aと、キャッシュ管理簿サーバ173のキャッシュ管理簿テーブル173aとを参照し、入力データ及び処理エンジンが存在する倉庫サーバを検索する。
[S33]実行可能な倉庫サーバ181〜183での入力データ保存数を求める。
[S34]実行可能な倉庫サーバ181〜183での処理エンジンの保持数を求める。
[S35]以下の条件で実行先倉庫サーバの候補の優先順位を決定する。
・入力データ数が最も多い。
・開始段(処理レベルが0のデータに対して処理を行う)の処理エンジンがある。
・処理エンジンの連続実行の長さが長い。
これらの条件を満たした倉庫サーバを優先的に選択する。
[S36]各倉庫サーバの倉庫状態テーブル181d、182d、183dを参照し、実行先倉庫の優先順位の高い順に以下の内容を評価し、適合した倉庫サーバを実行先として特定する。
・作業ディスク領域の空き容量が十分にあること。
・CPU(Central Processing Unit) の負荷状態を評価し、処理能力に余裕があること。
・ネットワークの負荷状態を評価し、伝送能力に余裕があること。
【0093】
次に、実行結果の管理処理について説明する。
図19は、実行結果の管理処理のフローチャートである。
[S41]処理を実行した後の解析結果データ若しくは、中間データを参照する。それには、解析処理手順エディタ120に解析処理手順データ141を取り込み、解析処理手順エディタ120から中間データ151を指定し、作業領域ディレクトリにある中間データ151を参照する。
[S42]必要な中間データを登録する。具体的には、中間データをポイントし、処理済みデータとして倉庫サーバ内の別領域に移動し、登録する。
[S43]作業領域を削除する。具体的には、倉庫サーバ183に作業領域の削除を指示して、作業領域ディレクトリを削除することで、処理の失敗及び登録して不要となった中間データを全て削除する。
【0094】
以上のように、実体名を意識しない「作業領域」を1台の計算機上に作成し、作業領域のなかに、入力データ、処理エンジン、及び解析処理手順データをUNIXコマンド「link」により、作業領域内の名称でシンボリックリンクした。そのため、作業領域内において、解析処理手順データ内の名前によりすべての処理が実行可能となる。
【0095】
また、作成された中間データは、「作業領域」内のみに存在し、解析処理手順データで指定した名称で作成されるため、その解析処理内容全体が不要になった場合には、その「作業領域」を削除することで、すべてのテンポラリなデータを削除することができる。このとき、入力データ、処理エンジン、及び解析処理手順データは、リンクのみの削除であり実体は削除されない。
【0096】
更に、作業領域は、基本的に解析処理手順データと1対1に対応して作成される。そのため、ある解析処理手順内で不要になったデータは、対応する作業領域を削除することで、全て削除できる。
【0097】
なお、分散システム内で一意に識別可能な名称を用いて、各データを検索することもできる。このデータ検索機能は、解析処理手順エディタの機能に含まれている。
【0098】
以下に、解析処理手順エディタの操作手順について説明する。
図20は、解析処理手順エディタの検索画面を示す図である。検索画面200の上部にはツールバー210が設けられており、各種命令を入力することができる。ツールバー210の下には、複数のボタン221〜225が設けられている。「New」と表記されたボタン221が押されると、検索画面200が初期化される。「Quit」と表記されたボタン222が押されると、検索画面200が閉じる。「Start」と表記されたボタン223が押されると、検索処理が開始される。「Reload」と表記されたボタン224が押されると、検索結果表示部240で指定されているデータが読み込まれ、その内容が表示される。「Help」と表記されたボタン225が押されると、検索機能の操作方法の説明書きが表示される。
【0099】
検索キー入力部230には、情報の種類別にキーワードを入力することができる。例えば、「name」、「abstract」などに対して、個別にキーワードを指定することができる。複数の種類の情報に対してキーワードが入力された場合には、それらの全ての条件を満たしたデータ(論理積)が検索される。
【0100】
検索結果表示部240には、検索条件に適合したデータに関する情報がリストアップされる。この検索結果表示部240に表示されたデータから必要なデータを選択することで、そのデータの情報を検索処理手順エディタの編集画面へ取り込むことができる。
【0101】
図21は、解析処理手順エディタの編集画面を示す図である。編集画面300の上部にはツールバー310が設けられており、各種命令を入力することができる。このツールバー310内の「Execute 」のコマンドを指定すると、編集画面300で編集されている処理手順に従った処理の実行要求が、実行コントローラ174に出力される。
【0102】
ツールバー310の下には、複数のボタン321〜328が設けられている。「New」と表記されたボタン321が押されると、編集画面300が初期化される。「Quit」と表記されたボタン322が押されると、編集画面300が閉じる。「Load」と表記されたボタン323が押されると、解析処理手順データ解析処理手順データの内容が、解析処理手順エディタがアクセス可能なメモリ内にロードされ、所定のデータが編集画面300内の各種表示部に表示される。「Save」と表記されたボタン324が押されると、解析処理手順エディタで編集中のデータがハードディスク装置などの媒体に保存される。「(,)」と表記されたボタン325が押されると、その時選択されているデータが、処理プログラムに入力されないデータとして設定される。「(−)」と表記されたボタン326が押されると、その時選択されているデータは処理プログラムに入力すべきデータとして設定される。「(*)」と表記されているボタン327が押されると、その時選択されているデータが、他の入力データに作用させるデータ(例えば、標準較正データ)として設定される。「Help」と表記されたボタン328が押されると、編集画面における操作方法の説明書きが表示される。
【0103】
「Level」と表記されている段指定部331は、データ表示部334に表示すべき段(図5に示す処理レベル)を指定するための領域である。
「Engine」と表記された処理プログラム入力部332は、現在表示されている段のデータから次の段のデータを生成するための処理プログラム名を入力するための領域である。
【0104】
データ種別表示部333には、データ表示部334の各列のデータの種別が表示されている。例えば、バイアス補正を行うためのデータであれば「Bias」と表示される。
【0105】
データ表示部334には、入力データが、解析処理手順を図5に示したような3次元構造テーブル上の座標値で表示されている。
データ名表示部335は、データ表示部334で指定されたデータの名称が表示される。
【0106】
利用者は、このような編集画面300で解析処理手順を作成し、ツールバー310の「Execute 」を指定することで実行内容指定画面が表示される。
図22は、実行内容指定画面を示す図である。実行内容指定画面400には、開始ステップ指定部410と終了ステップ指定部420とがあり、任意のステップの処理のみを実行させることができる。また、モード指定部430で実行モードを指定することで、解析処理の精度などを変更することができる。
【0107】
実行内容指定画面400の下部には、2つのボタン440,450が設けられている。「Execute 」と表記されたボタン440を押すと、解析処理が開始され、「Cancel」と表記されたボタン450を押すと、実行中の解析処理が中止される。
【0108】
これにより、分散システムの利用者は、データが複数の計算機に分散して格納されていることを意識せずに解析処理手順の作成、及び作成した解析処理手順による解析処理の実行を容易に行うことができる。
【0109】
また、解析処理に必要な情報が分散処理システム内で一意に識別可能であるため、中断した処理を他の計算機に引き継がせることもできる。この場合、中断した処理の作業領域内の情報を他の計算機に移動し、移動先の計算機で解析処理を再開させればよい。このような制御を実行コントローラが自動的に行う。これにより、解析処理を中断している間に、その計算機の負荷が増大してしまった場合には、他の計算機に処理を引き継がせることができる。しかも、利用者は、中断前に解析を実行していた計算機と、その解析処理を引き継いだ計算機とが異なることを意識する必要はない。
【0110】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、上記分散システムの各機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述されており、このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現される。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリ等がある。市場を流通させる場合には、CD−ROM(Compact Disk Read Only Memory) やフロッピーディスク等の可搬型記録媒体にプログラムを格納して流通させたり、ネットワークを介して接続されたコンピュータの記憶装置に格納しておき、ネットワークを通じて他のコンピュータに転送することもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置等にプログラムを格納しておき、メインメモリにロードして実行する。
【0111】
【発明の効果】
以上説明したように本発明の分散処理システム及び分散処理方法では、管理簿テーブルにより、情報をシステム内で一意に識別するための情報名と実際の格納先との対応関係を管理し、管理簿テーブルにより必要な情報の実際の格納先を認識し、新たに生成した作業領域内にリンク情報を登録するとともに、作業領域内に出力データを出力するようにしたため、作業領域内において全ての処理が可能となる。
【0112】
また、本発明の分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体では、各情報をシステム内で一意に識別するための情報名と実際の格納先との対応関係を管理簿で管理し、その管理簿テーブルにより必要な情報の実際の格納先を認識し、新たに生成した作業領域内にリンク情報を登録するとともに、作業領域内に出力データを出力するような処理内容が記述された分散処理プログラムが格納されているため、作業領域内において全ての処理が可能となる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】天体観測システムを示す図である。
【図3】コンピュータシステムの構成を示す図である。
【図4】解析処理手順の概念図である。
【図5】3次元構造テーブルで表現された解析処理手順を示す図である。
【図6】解析処理手順データの例を示す図である。
【図7】解析処理手順データの例を示す図である。
【図8】分散処理システムの機能を示すブロック図である。
【図9】解析処理手順管理テーブルの例を示す図である
【図10】処理エンジン管理テーブルの例を示す図である。
【図11】入力データ管理テーブルの例を示す図である。
【図12】キャッシュ管理簿テーブルの例を示す図である。
【図13】倉庫内データ管理テーブルの例を示す図である。
【図14】倉庫状態テーブルの例を示す図である。
【図15】解析処理に必要な機能の構築処理を示すフローチャートである。
【図16】解析処理の動作イメージを示す図である。
【図17】解析処理の手順を示すフローチャートである。
【図18】実行先倉庫決定処理のフローチャートである。
【図19】実行結果の管理処理のフローチャートである。
【図20】解析処理手順エディタの検索画面を示す図である。
【図21】解析処理手順エディタの編集画面を示す図である。
【図22】実行内容指定画面を示す図である。
【符号の説明】
1 計算機
1a 処理プログラム
1b 観測データ
2 管理簿保持手段
2a 管理簿
3 解析処理実行手段
4 作業領域
4a 処理プログラム
4b 観測データ
4c 中間データ
Claims (3)
- データを複数の計算機で分散して解析する分散処理システムであって、
解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、
前記管理簿テーブルに登録された各データまたは処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータまたは処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータまたは処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルと、
解析処理実行のために計算機に転送され一時的に保持されているデータまたは処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルと、
前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記管理簿テーブルと前記キャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの実際の格納先である計算機を元に前記倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる解析処理実行手段と、
を備えることを特徴とする分散処理システム。 - データを複数の計算機で分散して解析する分散処理方法であって、
コンピュータが、
解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、解析処理実行のために計算機に転送され一時的に保持されているデータおよび処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの格納先である計算機を元に、前記管理簿テーブルに登録された各データおよび処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータおよび処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる解析処理実行ステップ、
を実行することを特徴とする分散処理方法。 - データを複数の計算機で分散して解析する分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
コンピュータに、
解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名によって必要なデータおよび処理プログラムを特定し、特定したデータおよび処理プログラムを用いた段階的な解析処理手順が定義された解析処理手順データに従った解析処理の解析処理要求を受け取ると、当該情報名を元に前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と各データおよび処理プログラムの実際の格納先である計算機との対応関係が登録された管理簿テーブルと、解析処理実行のために計算機に転送され一時的に保持されているデータおよび処理プログラムの情報名と当該データまたは処理プログラムを保持している計算機との対応関係が登録されたキャッシュ管理簿テーブルとにより必要なデータおよび処理プログラムの格納先である計算機を認識して必要なデータおよび処理プログラムが多く格納されている計算機を解析処理実行計算機として選択し、当該選択した解析処理実行計算機に当該解析処理を実行するための作業領域とするディレクトリを新たに生成し、当該情報名と当該データおよび処理プログラムの格納先である計算機を元に、前記管理簿テーブルに登録された各データおよび処理プログラムの実際の格納先である計算機毎に、前記解析処理に必要となるデータおよび処理プログラムをシステム内で一意に識別するための情報名と、当該情報名で識別されるデータおよび処理プログラムの格納パスとの対応関係が登録された倉庫内データ管理テーブルから当該情報名で識別されるデータおよび処理プログラムの格納パスを認識して当該データおよび処理プログラムへのアクセスを可能とするリンク情報を当該作業領域内に登録し、前記解析処理手順データで示される解析処理手順に従った解析処理を実行し、当該作業領域内に各段階での処理プログラムによる解析処理の中間データおよび解析結果データを、システム内で一意に識別するための情報名を付けて出力すると共に、解析途中で解析処理を実行する計算機の変更の必要が生じた場合には他の計算機を新たに選択して前記作業領域を新たに選択した計算機内に移動することで以後の処理を新たに選択した計算機に実行させる処理、
を実行させる分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06654998A JP3857409B2 (ja) | 1998-03-17 | 1998-03-17 | 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
US09/266,866 US6560631B1 (en) | 1998-03-17 | 1999-03-12 | Data analysis in distributed data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06654998A JP3857409B2 (ja) | 1998-03-17 | 1998-03-17 | 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11265359A JPH11265359A (ja) | 1999-09-28 |
JP3857409B2 true JP3857409B2 (ja) | 2006-12-13 |
Family
ID=13319112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06654998A Expired - Fee Related JP3857409B2 (ja) | 1998-03-17 | 1998-03-17 | 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6560631B1 (ja) |
JP (1) | JP3857409B2 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020032768A1 (en) * | 2000-04-10 | 2002-03-14 | Voskuil Erik K. | Method and system for configuring remotely located applications |
JP3899795B2 (ja) * | 2000-09-21 | 2007-03-28 | 日本電気株式会社 | ファイル管理システムおよび方法 |
US7574509B2 (en) * | 2002-11-25 | 2009-08-11 | Fisher-Rosemount Systems, Inc. | Interactive two-way collaboration in process control plants |
JP4232499B2 (ja) | 2003-03-24 | 2009-03-04 | 富士ゼロックス株式会社 | 指示データ生成装置、指示データ生成方法及び指示データ生成プログラム |
US20050060315A1 (en) * | 2003-09-16 | 2005-03-17 | Aleksey Sanin | Metadata database lookup system |
US20050177630A1 (en) * | 2003-12-19 | 2005-08-11 | Jolfaei Masoud A. | Service analysis |
US7602981B2 (en) * | 2004-03-09 | 2009-10-13 | Kabushiki Kaisha Toshiba | Image storage and display system, maintenance system therefor, and image storage and display method |
US7984512B2 (en) * | 2007-06-14 | 2011-07-19 | Microsoft Corporation | Integrating security by obscurity with access control lists |
US20100138833A1 (en) * | 2008-12-01 | 2010-06-03 | Microsoft Corporation | Resource coverage and analysis |
US8799409B2 (en) * | 2009-01-15 | 2014-08-05 | Ebay Inc. | Server side data cache system |
CN101763418A (zh) * | 2009-12-16 | 2010-06-30 | 中兴通讯股份有限公司 | 一种访问文件资源方法及装置 |
US8505021B2 (en) | 2011-08-29 | 2013-08-06 | Kaspersky Lab Zao | Efficient management of computer resources |
US9122535B2 (en) | 2011-11-22 | 2015-09-01 | Netapp, Inc. | Optimizing distributed data analytics for shared storage |
US20150125839A1 (en) * | 2012-07-27 | 2015-05-07 | Tillges Technologies Llc | Wireless communication for pressure sensor readings |
GB2515736A (en) * | 2013-07-01 | 2015-01-07 | Ibm | Controlling access to one or more datasets of an operating system in use |
US10931776B2 (en) | 2013-12-31 | 2021-02-23 | International Business Machines Corporation | Adaptive data fetching from network storage |
US9898315B1 (en) * | 2014-11-24 | 2018-02-20 | Amazon Technologies, Inc. | Management of demand for virtual computing resources |
US9973647B2 (en) * | 2016-06-17 | 2018-05-15 | Microsoft Technology Licensing, Llc. | Suggesting image files for deletion based on image file parameters |
US11194618B2 (en) | 2017-06-13 | 2021-12-07 | Nec Corporation | Accelerator control device, accelerator control method, and recording medium with accelerator control program stored therein |
US10613905B2 (en) * | 2017-07-26 | 2020-04-07 | Bank Of America Corporation | Systems for analyzing historical events to determine multi-system events and the reallocation of resources impacted by the multi system event |
JP7010632B2 (ja) * | 2017-09-15 | 2022-01-26 | 株式会社日立製作所 | 中間データ管理システムおよび中間データ管理方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4920483A (en) * | 1985-11-15 | 1990-04-24 | Data General Corporation | A computer memory for accessing any word-sized group of contiguous bits |
US4805134A (en) * | 1986-01-09 | 1989-02-14 | International Business Machines Corporation | Electronic system for accessing graphical and textual information |
JPH01166159A (ja) * | 1987-12-22 | 1989-06-30 | Matsushita Electric Ind Co Ltd | 分散資源のアクセス方法 |
CA2011807C (en) * | 1989-03-20 | 1999-02-23 | Katsumi Hayashi | Data base processing system using multiprocessor system |
WO1993020511A1 (en) * | 1992-03-31 | 1993-10-14 | Aggregate Computing, Inc. | An integrated remote execution system for a heterogenous computer network environment |
FR2692055B1 (fr) * | 1992-06-09 | 1996-10-25 | Bull Sa | Dispositif de conception de reseaux de commande d'informations pour la modelisation de tous processus. |
CA2146450A1 (en) * | 1992-08-31 | 1994-03-17 | Nacine M. Reid | Script-based system for testing a multi-user computer system |
JP2809962B2 (ja) * | 1993-03-02 | 1998-10-15 | 株式会社東芝 | 資源管理方式 |
JPH06301579A (ja) * | 1993-04-12 | 1994-10-28 | Nec Corp | 分散ファイルの管理方式 |
JPH07175762A (ja) * | 1993-12-17 | 1995-07-14 | Hitachi Ltd | 分散処理システムにおけるジョブスケジューリング方法 |
US5479477A (en) * | 1994-03-03 | 1995-12-26 | Motorola, Inc. | Method and apparatus for assigning a control module to a communication resource in a dispatch radio communication system |
JPH07311703A (ja) * | 1994-05-18 | 1995-11-28 | Matsushita Electric Ind Co Ltd | ネットワークファイルシステム管理方法およびその装置 |
JPH086838A (ja) * | 1994-06-15 | 1996-01-12 | Toshiba Corp | 分散システム |
US5884077A (en) * | 1994-08-31 | 1999-03-16 | Canon Kabushiki Kaisha | Information processing system and method in which computer with high load borrows processor of computer with low load to execute process |
US5706501A (en) * | 1995-02-23 | 1998-01-06 | Fuji Xerox Co., Ltd. | Apparatus and method for managing resources in a network combining operations with name resolution functions |
JPH09160890A (ja) * | 1995-10-06 | 1997-06-20 | Matsushita Electric Ind Co Ltd | マルチプロセッサシステム |
JPH09244940A (ja) * | 1996-03-12 | 1997-09-19 | Hitachi Ltd | 分散計算機資源の管理方法 |
US6195678B1 (en) * | 1996-09-03 | 2001-02-27 | Fujitsu Limited | Remote resource management system for automatically downloading required files from application server depending on contents of selected files on requesting computer |
US6223205B1 (en) * | 1997-10-20 | 2001-04-24 | Mor Harchol-Balter | Method and apparatus for assigning tasks in a distributed server system |
-
1998
- 1998-03-17 JP JP06654998A patent/JP3857409B2/ja not_active Expired - Fee Related
-
1999
- 1999-03-12 US US09/266,866 patent/US6560631B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6560631B1 (en) | 2003-05-06 |
JPH11265359A (ja) | 1999-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3857409B2 (ja) | 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US6606633B1 (en) | Compound document management system and compound document structure managing method | |
EP0647909B1 (en) | Information catalog system with object-dependent functionality | |
KR100760227B1 (ko) | 화상파일 관리장치 및 방법과, 기억매체 | |
EP0756237B1 (en) | Group environment setting method and system thereof | |
JP3636744B2 (ja) | 分散システムおよび分散システムの自動運転スケジュールの作成方法 | |
US20030046345A1 (en) | System and method for project management | |
JP2001188702A (ja) | 分散ファイルシステム及びファイル操作方法 | |
JP2008276488A (ja) | ストレージシステムおよびストレージシステムの情報移行方法 | |
JPH1139292A (ja) | 文書管理方法、文書検索方法、及び文書検索装置 | |
US20060095432A1 (en) | Disclosure control system and method | |
US5893122A (en) | Hyper-media system including plural application processors which execute navigation processing for hyper-media document | |
JP4404930B2 (ja) | 情報処理装置、その制御方法、情報処理システム、プログラム及びコンピュータ読み取り可能な記録媒体 | |
JP2002032388A (ja) | 文書体系化方法、文書選択方法、文書管理装置、文書処理管理システム及び記録媒体 | |
JP2006350659A (ja) | 人材検索システム、人材検索装置、人材検索端末、プログラムおよび記録媒体 | |
US20040225663A1 (en) | Attribute value selection for entity objects | |
US6799183B2 (en) | Operation assistance method and system and recording medium for storing operation assistance method | |
JP3907463B2 (ja) | Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム | |
JPS63314665A (ja) | メニュ−切替え処理方式 | |
KR20090070932A (ko) | 지리 정보 서비스 시스템 및 방법 | |
JP2007200342A (ja) | 分散データベースのデータアクセス方法及び装置 | |
JP2019066979A (ja) | 検索装置、その制御方法、及びプログラム、並びに、検索システム、その制御方法、及びプログラム | |
JP2000347943A (ja) | 文書アクセス管理システム | |
JP4379572B2 (ja) | 仮想ファイル管理方式 | |
JP2007080205A (ja) | 検索装置及び検索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20030304 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20040423 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060811 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060914 |
|
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: 20090922 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130922 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |