JP5907419B2 - 分散処理システム、分散処理方法および分散処理プログラム - Google Patents

分散処理システム、分散処理方法および分散処理プログラム Download PDF

Info

Publication number
JP5907419B2
JP5907419B2 JP2012069399A JP2012069399A JP5907419B2 JP 5907419 B2 JP5907419 B2 JP 5907419B2 JP 2012069399 A JP2012069399 A JP 2012069399A JP 2012069399 A JP2012069399 A JP 2012069399A JP 5907419 B2 JP5907419 B2 JP 5907419B2
Authority
JP
Japan
Prior art keywords
processing
file
application
distributed
record
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.)
Active
Application number
JP2012069399A
Other languages
English (en)
Other versions
JP2013200769A (ja
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012069399A priority Critical patent/JP5907419B2/ja
Priority to US13/837,672 priority patent/US9262219B2/en
Publication of JP2013200769A publication Critical patent/JP2013200769A/ja
Application granted granted Critical
Publication of JP5907419B2 publication Critical patent/JP5907419B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、分散処理システム、分散処理方法および分散処理プログラムに関する。
バッチ処理を実行する際に、分散する資源を用いる分散実行環境を利用することで、より大量のデータを処理することが可能となる。下記特許文献1には、分散実行環境を利用して、複数のジョブ間でデータを受け渡しながらバッチ処理を実行するシステムが開示されている。
特開2004−102449号公報
バッチ処理は非対話型の処理であるため、エラーや障害が発生した時にその情報がユーザに到達するまでにタイムラグを要するという特性がある。このタイムラグは、分散実行環境を利用することで、増大してしまう。それゆえ、バッチ処理でエラーや障害が発生した時に、その解析作業や対応作業を容易化する技術の開発が重要となる。
特許文献1に記載のシステムでは、エラーや障害が発生した時の処理についてまでは言及していない。したがって、エラーや障害が発生した場合には、その解析作業や対応作業に時間を要してしまう。
本発明は、上述した課題を解決するためになされたものであり、エラーや障害が発生した場合に、その解析作業や対応作業を容易化することができる分散処理システム、分散処理方法および分散処理プログラムを提供することを目的の一つとする。
本発明の一態様である分散処理システムは、分散共有ストレージ上の処理対象ファイルを参照しながら一つのアプリケーションを分散して実行する複数のアプリケーション実行部と、前記アプリケーション実行部により実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視部と、前記処理ステップ監視部により監視されている前記処理ステップが、リソースの隔離が必要なリソース隔離ステップであるか否かを判定するリソース隔離判定部と、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップであると判定された場合に、隔離ファイルを生成するリソース提供部と、を備える。
本発明の一態様である分散処理方法は、分散共有ストレージ上の処理対象ファイルを参照しながら一つのアプリケーションを分散して実行する複数のアプリケーション実行ステップと、前記アプリケーション実行ステップにおいて実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視ステップと、前記処理ステップ監視ステップにおいて監視されている前記処理ステップが、リソースの隔離が必要なリソース隔離ステップであるか否かを判定するリソース隔離判定ステップと、前記リソース隔離判定ステップにおいて前記処理ステップが前記リソース隔離ステップであると判定された場合に、隔離ファイルを生成するリソース提供ステップと、を含む。
本発明の一態様である分散処理プログラムは、上記分散処理方法に含まれる各ステップをコンピュータに実行させる。
本発明によれば、エラーや障害が発生した場合に、その解析作業や対応作業を容易化することができる。
第1実施形態における分散処理システムの構成を例示する図である。 第1実施形態における分散共有ストレージのファイルのデータ構成を例示する図である。 第1実施形態におけるアプリケーションの処理ステップを説明するためのフローチャートである。 図3に示す同月レコード加算処理の手順を説明するためのフローチャートである。 図3に示すレコード書換処理の手順を説明するためのフローチャートである。 図3に示す同年レコード加算処理の手順を説明するためのフローチャートである。 第2実施形態における分散処理システムの要部の構成を例示する図である。 第2実施形態におけるアプリケーションの処理ステップを説明するためのフローチャートである。 図8に示すファイル分割処理の手順を説明するためのフローチャートである。 図8に示すデータ取得処理の手順を説明するためのフローチャートである。 第2実施形態における分散共有ストレージのファイルのデータ構成を例示する図である。 第2実施形態における分散共有ストレージのファイルのデータ構成を例示する図である。 第2実施形態における分散共有ストレージに格納される各種ファイルを例示する図である。 第2実施形態における分散共有ストレージに格納される各種ファイルを例示する図である。 第2実施形態における分散共有ストレージに格納される各種ファイルを例示する図である。 第2実施形態における分散共有ストレージに格納される各種ファイルを例示する図である。 第2実施形態における分散共有ストレージに格納される各種ファイルを例示する図である。
以下、添付図面を参照して、本発明に係る分散処理システム、分散処理方法および分散処理プログラムの好適な実施形態について説明する。
[第1実施形態]
まず、図1を参照して、第1実施形態における分散処理システムの構成について説明する。図1は、二つのホストノードHa、Hbで分散共有ストレージDSを形成し、各ホストノードHa、Hbが同一のアプリケーションAa、Abをそれぞれ実行する場合における分散処理システム10の構成例である。処理ステップ監視部3およびリソース隔離判定部4は、ホストノードHa、Hbとは異なるノードに備えられている。異なるノードは、一つのノードであってもよいし、二つのノードであってもよい。
ホストノードHa、Hbは、それぞれコンテナCa、Cb、およびローカルストレージLSa、LSbを有する。コンテナCa、Cbは、それぞれアプリケーション実行部1a、1bおよびリソース提供部2a、2bを含む。ローカルストレージLSa、LSbはネットワークコネクションNCを介して接続されており、これらローカルストレージLSa、LSbによって分散共有ストレージDSが構成される。
なお、ホストノードHa、Hb、コンテナCa、Cb、アプリケーションAa、Ab、アプリケーション実行部1a、1b、リソース提供部2a、2b、およびローカルストレージLSa、LSbは、以下において特に区別する必要がない場合には、それぞれホストノードH、コンテナC、アプリケーションA、アプリケーション実行部1、リソース提供部2およびローカルストレージLSと記載する。
一般に、分散共有ストレージを用いる分散処理システムでは、一つのファイルのデータを分割し、分割したそれぞれのデータのセグメントの一貫性と永続性とを保証するノードを選定する。そして、各ノード間で、参照用キャッシュデータの保持や参照/更新操作の伝播と一貫性を保持するための通信とを行う。ノードの選定や参照/更新のプロトコルは、実装する分散共有ストレージごとに公知の各種の手法を用いることができる。
第1実施形態では、分散共有ストレージDS上のファイルFとして、図2に示すファイルを用いた場合の実施例について説明する。第1実施形態では、図2に示すファイルをレコード単位に二分割し、前半の5レコードをホストノードHaのローカルストレージLSaに実態レコードSaとして格納し、後半の5レコードをホストノードHbのローカルストレージLSbに実態レコードSbとして格納する。
第1実施形態におけるアプリケーション実行部1は、アプリケーションAの処理を開始する時にパラメータを受け取る。アプリケーション実行部1は、パラメータが“1”である場合には分散共有ストレージDS上のファイルFの奇数番目のレコードをアプリケーションAの処理対象とし、パラメータが“2”である場合には分散共有ストレージDS上のファイルFの偶数番目のレコードをアプリケーションAの処理対象とする。
アプリケーションAaがファイルFの後半5レコードに対する参照要求を行うと、ローカルストレージLSaからローカルストレージLSbにネットワークコネクションNC経由で参照依頼が送られ、後半5レコードの参照用レプリカレコードRaがローカルストレージLSa上にキャッシュされる。アプリケーションAaは、参照用レプリカレコードRaのデータを参照する。
アプリケーションAaがファイルFの後半5レコードに対する更新要求を行うと、ローカルストレージLSaからローカルストレージLSbにネットワークコネクションNC経由で更新依頼が送られ、ローカルストレージLSa上の参照用レプリカレコードRaが更新される。この更新の際に、ローカルストレージLSbは、実体レコードSbの一貫性と永続性とを保証する。
アプリケーションAbがファイルFの前半5レコードに対する参照要求を行うと、ローカルストレージLSbからローカルストレージLSaにネットワークコネクションNC経由で参照依頼が送られ、前半5レコードの参照用レプリカレコードRbがローカルストレージLSb上にキャッシュされる。アプリケーションAbは、参照用レプリカレコードRbのデータを参照する。
アプリケーションAbがファイルFの前半5レコードに対する更新要求を行うと、ローカルストレージLSbからローカルストレージLSaにネットワークコネクションNC経由で更新依頼が行われ、ローカルストレージLSb上の参照用レプリカレコードRbが更新される。この更新の際に、ローカルストレージLSaは、実体レコードSaの一貫性と永続性とを保証する。
次に、図1を参照して、第1実施形態における分散処理システムの機能について説明する。
アプリケーション実行部1は、分散共有ストレージDS上の処理対象ファイルFを参照してアプリケーションAを実行する。
リソース提供部2は、アプリケーション実行部1からのリソースの参照要求や更新要求に応じてデータを参照や更新する参照/更新処理を実行する。
リソース提供部2は、アプリケーション実行部1が現在実行しているアプリケーションAの処理ステップを、処理ステップ監視部3から取得する。
処理ステップ監視部3は、アプリケーション実行部1が現在実行しているアプリケーションAの処理ステップを監視する。
リソース提供部2は、処理ステップ監視部3から取得した処理ステップが、リソース隔離対象ステップに該当するか否かをリソース隔離判定部4に問い合わせる。
リソース隔離判定部4は、リソース提供部2から問い合わせを受けた処理ステップが、リソースの隔離が必要なリソース隔離ステップであるか否かを判定する。
リソース提供部2は、リソース隔離判定部4により処理ステップがリソース隔離ステップであると判定された場合に、リソース隔離ステップを実行しているホストノードHのローカルストレージLS上に隔離ファイルCFを生成し、この隔離ファイルCFに処理対象ファイルFの内容を複製する。
アプリケーション実行部1は、自ホストノードHのローカルストレージLS上に隔離ファイルCFが生成された後は、その隔離ファイルCFを参照してアプリケーションAを実行する。
次に、図3を参照して、第1実施形態におけるアプリケーションAの処理ステップについて説明する。アプリケーションAは、主な処理ステップとして、同月レコード加算処理と、レコード書換処理と、同年レコード加算処理と、を有する。これらの処理ステップは、アプリケーション実行部1によって、以下の手順で実行される。
最初に、アプリケーション実行部1は、同月レコード加算処理を実行する(ステップS101)。
続いて、アプリケーション実行部1は、同月レコード加算処理でスキップしたレコードがあったか否かを判定する(ステップS102)。この判定がNOである場合(ステップS102;NO)には、後述するステップS104に処理を移行する。
一方、上記ステップS102の判定でスキップしたレコードがあったと判定した場合(ステップS102;YES)に、アプリケーション実行部1は、レコード書換処理を実行する(ステップS103)。
続いて、アプリケーション実行部1は、同年レコード加算処理を実行する(ステップS104)。
図4を参照して、同月レコード加算処理の手順について説明する。
最初に、アプリケーション実行部1は、変数Xを0で初期化する(ステップS201)。
続いて、アプリケーション実行部1は、ファイルFに未読のレコードが存在するか否かを確認する(ステップS202)。この判定がNOである場合(ステップS202;NO)には、同月レコード加算処理を終了する。
一方、上記ステップS202の判定でファイルFに未読のレコードが存在すると判定した場合(ステップS202;YES)に、アプリケーション実行部1は、ファイルFから1件レコードを読み込む(ステップS203)。
続いて、アプリケーション実行部1は、上記ステップS203で読み込んだレコードの日付のフォーマットが正しく、かつ、日付が処理実行日と同一月であるか否かを判定する(ステップS204)。この判定がNOである場合(ステップS204;NO)には、読み込んだレコードをスキップする(ステップS205)。そして、処理を上記ステップS202に移行する。
一方、上記ステップS204の判定でレコードの日付のフォーマットが正しく、かつ、レコードの日付が処理実行日と同一月であると判定した場合(ステップS204;YES)に、アプリケーション実行部1は、上記ステップS203で読み込んだレコードの値を、変数Xに加算する(ステップS206)。そして、処理を上記ステップS202に移行する。
図5を参照して、レコード書換処理の手順について説明する。
最初に、アプリケーション実行部1は、ファイルFに未読のレコードが存在するか否かを確認する(ステップS301)。この判定がNOである場合(ステップS301;NO)には、変数Xを出力してレコード書換処理を終了する。
一方、上記ステップS301の判定でファイルFに未読のレコードが存在すると判定した場合(ステップS301;YES)に、アプリケーション実行部1は、ファイルFから1件レコードを読み込む(ステップS302)。
続いて、アプリケーション実行部1は、上記ステップS302で読み込んだレコードの日付のフォーマットが不正であるか否かを判定する(ステップS303)。この判定がNOである場合(ステップS303;NO)には、処理を上記ステップS301に移行する。
一方、上記ステップS303の判定でレコードの日付のフォーマットが不正であると判定した場合(ステップS303;YES)に、アプリケーション実行部1は、上記ステップS302で読み込んだレコードの日付を、処理実行日で書き換え更新する(ステップS304)。そして、処理を上記ステップS301に移行する。
図6を参照して、同年レコード加算処理の手順について説明する。
最初に、アプリケーション実行部1は、変数Yを0で初期化する(ステップS401)。
続いて、アプリケーション実行部1は、ファイルFに未読のレコードが存在するか否かを確認する(ステップS402)。この判定がNOである場合(ステップS402;NO)には、変数Yを出力して同年レコード加算処理を終了する。
一方、上記ステップS402の判定でファイルFに未読のレコードが存在すると判定した場合(ステップS402;YES)に、アプリケーション実行部1は、ファイルFから1件レコードを読み込む(ステップS403)。
続いて、アプリケーション実行部1は、上記ステップS403で読み込んだレコードの日付が処理実行日と同一年であるか否かを判定する(ステップS404)。この判定がNOである場合(ステップS404;NO)には、処理を上記ステップS402に移行する。
一方、上記ステップS404の判定でレコードの日付が処理実行日と同一年であると判定した場合(ステップS404;YES)に、アプリケーション実行部1は、上記ステップS403で読み込んだレコードの値を、変数Yに加算する(ステップS405)。そして、処理を上記ステップS402に移行する。
次に、アプリケーション実行部1aがパラメータ“1”を指定してアプリケーションAaを実行し、これと並行して、アプリケーション実行部1bがパラメータ“2”を指定してアプリケーションAbを実行する場合の動作について説明する。
この動作において、アプリケーション実行部1aは、図2のレコードのうち、レコード番号“1”、“3”、“5”、“7”および“9”を処理対象レコードとする。一方、アプリケーション実行部1bは、図2のレコードのうち、レコード番号“2”、“4”、“6”、“8”および“10”を処理対象レコードとする。また、アプリケーションAの実行日を、“2011/6/16”とする。さらに、リソース隔離判定部4は、リソース隔離対象ステップとしてレコード書換処理を設定している。
アプリケーションAaは、以下の手順で実行される。
(a−1)アプリケーション実行部1aは、レコード番号“1”、“3”、“5”、“7”および“9”に対して同月レコード加算処理を順次実行する。
(a−2)リソース提供部2aは、アプリケーション実行部1aによって現在実行されている処理ステップが同月レコード加算処理であることを処理ステップ監視部3から得る。
(a−3)リソース提供部2aは、同月レコード加算処理がリソース隔離対象ステップに該当しないことをリソース隔離判定部4から得る。
(a−4)リソース提供部2aは、アプリケーション実行部1aに対して分散共有ストレージDS上の処理対象ファイルFを提供する。
(a−5)アプリケーション実行部1aは、同月レコード加算処理の結果として、“171”を出力する。
(a−6)アプリケーション実行部1aは、同月レコード加算処理でスキップしたレコードが存在しないため、レコード番号“1”、“3”、“5”、“7”および“9”に対して同年レコード加算処理を順次実行する。
(a−7)リソース提供部2aは、アプリケーション実行部1aによって現在実行されている処理ステップが同年レコード加算処理であることを処理ステップ監視部3から得る。
(a−8)リソース提供部2aは、同年レコード加算処理がリソース隔離対象ステップに該当しないことをリソース隔離判定部4から得る。
(a−9)リソース提供部2aは、アプリケーション実行部1aに対して分散共有ストレージDS上の処理対象ファイルFを提供する。
(a−10)アプリケーション実行部1aは、同年レコード加算処理の結果として、“171”を出力する。
アプリケーションAbは、以下の手順で実行される。
(b−1)アプリケーション実行部1bは、レコード番号“2”、“4”、“6”、“8”および“10”に対して同月レコード加算処理を順次実行する。
(b−2)リソース提供部2bは、アプリケーション実行部1bによって現在実行されている処理ステップが同月レコード加算処理であることを処理ステップ監視部3から得る。
(b−3)リソース提供部2bは、同月レコード加算処理がリソース隔離対象ステップに該当しないことをリソース隔離判定部4から得る。
(b−4)リソース提供部2bは、アプリケーション実行部1bに対して分散共有ストレージDS上の処理対象ファイルFを提供する。
(b−5)アプリケーション実行部1bは、同月レコード加算処理において、レコード番号“4”の日付のフォーマットが不正であるためレコード番号“4”のレコードをスキップし、レコード番号“8”の日付と実行日との月が異なるためレコード番号“8”のレコードをスキップする。アプリケーション実行部1bは、同月レコード加算処理の結果として、“32”を出力する。
(b−6)アプリケーション実行部1bは、同月レコード加算処理でスキップしたレコードが存在するため、レコード番号“2”、“4”、“6”、“8”および“10”に対してレコード書換処理を順次実行する。
(b−7)リソース提供部2bは、アプリケーション実行部1bによって現在実行されている処理ステップがレコード書換処理であることを処理ステップ監視部3から得る。
(b−8)リソース提供部2bは、レコード書換処理がリソース隔離対象ステップに該当することをリソース隔離判定部4から得る。
(b−9)リソース提供部2bは、分散共有ストレージDS上の処理対象ファイルFの複製である隔離ファイルCFをローカルストレージLSb上に生成する。
(b−10)リソース提供部2bは、アプリケーション実行部1bに対してローカルストレージLSb上の隔離ファイルCFを提供する。リソース提供部2bは、これ以降、アプリケーション実行部1bからの処理対象ファイルFへの参照要求に対してローカルストレージLSb上の隔離ファイルCFを提供するように変更する。
(b−11)アプリケーション実行部1bは、レコード書換処理において、レコード番号“4”の日付を、実行日“2011/6/16”に書き換える。この書き換えは、隔離ファイルCFのレコードに対してのみ行われる。したがって、ネットワークコネクションNCおよびローカルストレージLSaのリソースは利用されない。
(b−12)アプリケーション実行部1bは、レコード番号“2”、“4”、“6”、“8”および“10”に対して同年レコード加算処理を順次実行する。
(b−13)リソース提供部2bは、アプリケーション実行部1bに対してローカルストレージLSb上の隔離ファイルCFを提供する。
(b−14)アプリケーション実行部1bは、同年レコード加算処理の結果として、“52”を出力する。
上述したように、第1実施形態における分散処理システム10によれば、処理ステップがリソース隔離ステップである場合には、ローカルストレージLS上に隔離ファイルCFを生成することができる。
これにより、リソース隔離ステップが実行されたことを、隔離ファイルの存在を確認することで、容易に認識することができる。それゆえに、エラーや障害が発生した場合に、その解析作業や対応作業を容易化することが可能となる。
また、ファイルFをコピーした隔離ファイルCFを、分散共有ストレージDS上ではなく、ローカルストレージLS上に生成することで、その後、アプリケーションAからファイルFの参照要求を受けた場合には、隔離ファイルCFを提供することができる。
これにより、リソース隔離ステップ以降の処理を、ネットワークコネクションNCを利用せずに、ローカルストレージLSに閉じて実行することできるため、システム内のネットワークリソースの使用量を抑制することができる。また、他のホストノードHとの間でリソースの競合が発生しないため、他のホストノードでのアプリケーションAの実行を妨げることがない。
なお、第1実施形態では、エラーレコードのリカバリを処理したコンテナが1つであり、全体のホストノードが2つであるため、レプリカレコードの更新回数を1回削減したネットワーク使用量となる。エラーレコード数がn、全体のホストノード数がmとすると、その効果は、レプリカレコード更新をn×(m−1)回分削減できることになる。つまり、ホストノードを100用いた分散実行環境において、100レコードのエラーが均等に存在した場合には、最大で9900回分のレプリカ更新処理用の通信を削減することができる。
[第2実施形態]
本発明の第2実施形態について説明する。
図7を参照して、第2実施形態の構成について説明する。第2実施形態は、アプリケーションAを、親子関係を形成する複数のコンテナC上で実行する場合の実施例である。第2実施形態のコンテナC_<X>-<Y>は、2つの子供のコンテナC_<succ(X)>-<Y×2-1>、C_<succ(X)>-<Y×2>を形成する。ここでsucc(x)はアルファベットXに対してその後続のアルファベットを意味する。具体的には、succ(“a”)→”b”であり、succ(“b”)→”c”である。したがって、例えば、コンテナC_a-1は、2つの子供のコンテナC_b-1、C_b-2を形成し、コンテナC_b-1は、2つの子供のコンテナC_c-1、C_c-2を形成することになる。
コンテナCは、アプリケーション実行部1と、リソース提供部2と、処理ステップ監視部3と、リソース隔離判定部4と、を有する。これらの各部は、上述した第1実施形態における各部と同様の機能を有し、さらに第2実施形態に特有の機能も有する。以下においては、主に第2実施形態に特有の機能について説明する。
リソース提供部2は、分散共有ストレージDSに加え、外部サービスESにもアクセスする。
処理ステップ監視部3は、自コンテナCにおけるアプリケーションAの処理ステップを監視するとともに、子孫関係にあるコンテナにおけるアプリケーションAの処理ステップを参照する機能を有する。
処理ステップ監視部3は、自コンテナCにおける処理ステップの実行履歴と、子孫関係にあるコンテナにおける処理ステップの実行履歴とを管理する機能を有する。
リソース提供部2は、処理ステップ監視部3から得た処理ステップの実行履歴に基づいて、リソース隔離判定部4にリソースの隔離が必要であるか否かを問い合わせる。
リソース隔離判定部4は、処理ステップの実行履歴にリソース隔離対象ステップが含まれているか否かを判定する。リソース隔離判定部4は、処理ステップの実行履歴にリソース隔離対象ステップが含まれている場合に、リソースの隔離が必要である旨を応答する。
リソース提供部2は、リソースの隔離が必要である旨の応答を得た場合には、アプリケーション実行部1から受けたリソース<R>の生成要求に対して、隔離ファイル“<R>.err”を生成する。また、リソース提供部2は、アプリケーション実行部1から受けたリソース<R>の参照要求に対して、隔離ファイル“<R>.err”が存在するときには、隔離ファイル“<R>.err”を提供する。一方、リソース提供部2は、隔離ファイル“<R>.err”が存在しないときには、正常のファイル“<R>”を提供する。
次に、図8を参照して、第2実施形態におけるアプリケーションAの処理ステップについて説明する。
最初に、アプリケーション実行部1は、入力ファイルを読み込む(ステップS501)。
続いて、アプリケーション実行部1は、入力ファイルのレコードが3件以上であるか否かを判定する(ステップS502)。この判定がYESである場合(ステップS502;YES)に、ファイル分割処理を実行する(ステップS503)。そして、処理を上記ステップS501に移行する。
一方、上記ステップS502の判定で入力ファイルのレコードが2件以下であると判定された場合(ステップS502;NO)には、データ取得処理を実行する(ステップS504)。そして、本動作を終了する。
図9を参照して、ファイル分割処理の手順について説明する。
最初に、アプリケーション実行部1は、入力ファイルを二分割して分散共有ストレージDSに保存する(ステップS601)。
続いて、アプリケーション実行部1は、子供関係にある子コンテナの処理が終了したか否かを判定する(ステップS602)。この判定がNOである場合(ステップS602;NO)には、子コンテナの処理が終了するまで待機する。
一方、上記ステップS602の判定で子コンテナの処理が終了したと判定された場合(ステップS602;YES)に、アプリケーション実行部1は、二つの子コンテナから出力されたファイルを読み込み、取得したデータのサイズが最大のレコードと、最小のレコードとを格納したファイルを分散共有ストレージDS上に出力する(ステップS603)。そして、ファイル分割処理を終了する。
図10を参照して、データ取得処理の手順について説明する。
最初に、アプリケーション実行部1は、入力ファイルを読み込む(ステップS701)。
続いて、アプリケーション実行部1は、読み込んだ2件のレコードに格納されたURLに対応する外部サービスESから、それぞれデータを取得する(ステップS702)。
続いて、アプリケーション実行部1は、外部サービスESからのデータ取得に成功したか否かを判定する(ステップS703)。この判定がYESである場合(ステップS703;YES)に、アプリケーション実行部1は、二つのレコードを取得したデータのサイズの大きい順に並び換え、その二つのレコードを格納した正常のファイル“<R>”を分散共有ストレージDS上に出力する(ステップS704)。そして、データ取得処理を終了する。
一方、上記ステップS703の判定で外部サービスESからのデータ取得に失敗したと判定された場合(ステップS703;NO)に、アプリケーション実行部1は、外部サービスESからのデータ取得に成功したレコードのみを格納した隔離ファイル“<R>.err”を分散共有ストレージDS上に出力する(ステップS705)。そして、ファイル分割処理を終了する。
次に、分散共有ストレージDS上のファイルFを入力ファイルとして、コンテナC_a-1でアプリケーションAを処理する場合の動作について説明する。
この動作では、分散共有ストレージDS上のファイルFとして、図11に示すファイルを用いる。また、図11に示す各URLに対応する外部サービスESからのデータ取得結果を、図12に示す。図12の取得結果欄には、取得したデータのサイズが格納されている。取得結果欄に“エラー”が格納されている場合には、データ取得に失敗したことを示す。また、各コンテナCのリソース隔離判定部4は、リソース隔離対象ステップとして、アプリケーションAの処理ステップ“ステップS705”(図10参照)を設定している。
最初に、コンテナC_a-1のアプリケーション実行部1_a-1がアプリケーションAの実行を開始し、入力ファイルとしてファイル“F_IN”を読み込む(ステップS501)。
続いて、アプリケーション実行部1_a-1は、二つのファイル“C_a-1-F”および“C_a-1-S”を生成するように、リソース提供部2_a-1に依頼する(ステップS601)。
続いて、リソース提供部2_a-1は、処理ステップ監視部3_a-1およびリソース隔離判定部4_a-1に問い合わせた結果に基づいて、現在の処理ステップがリソースの隔離が不要な処理ステップであることを検知する。
したがって、リソース提供部2_a-1は、図13に示すように、二つのファイル“C_a-1-F”および“C_a-1-S”を分散共有ストレージDS上に生成する(ステップS601)。
続いて、コンテナC_b-1のアプリケーション実行部1_b-1がアプリケーションAの実行を開始し、入力ファイルとしてファイル“C_a-1-F”を読み込む(ステップS501)。これと並行して、コンテナC_b-2のアプリケーション実行部1_b-2がアプリケーションAの実行を開始し、入力ファイルとしてファイル“C_a-1-S”を読み込む(ステップS501)。
コンテナC_b-1およびコンテナC_b-2では、上述したコンテナC_a-1と同様にアプリケーションAが実行される。その結果、図14に示すように、四つのファイル“C_b-1-F”、“C_b-1-S”、“C_b-2-F”および“C_b-2-S”が分散共有ストレージDS上に新たに生成される(ステップS601)。
続いて、コンテナC_c-1のアプリケーション実行部1_c-1がアプリケーションAの実行を開始し、入力ファイルとしてファイル“C_b-1-F”を読み込む(ステップS501)。これと並行して、コンテナC_c-2のアプリケーション実行部1_c-2がアプリケーションAの実行を開始し、入力ファイルとしてファイル“C_b-1-S”を読み込む(ステップS501)。
同様に、コンテナC_c-3では、ファイル“C_b-2-F”を入力ファイルとして、アプリケーションAの実行が開始され(ステップS501)、コンテナC_c-4では、ファイル“C_b-2-S”を入力ファイルとして、アプリケーションAの実行が開始される(ステップS501)。
続いて、コンテナC_c-1では、URL“http://example.com/data/WEST/OSAKA”へのアクセスおよびURL“http://example.com/data/WEST/FUKUOKA”へのアクセスが実行され、それぞれ、“100”および“200”が取得結果として得られる(ステップS702)。
続いて、コンテナC_c-1では、出力ファイル“C_b-1-F-out”を生成するように、リソース提供部2_c-1に依頼する(ステップS704)。
続いて、リソース提供部2_c-1は、処理ステップ監視部3_c-1およびリソース隔離判定部4_c-1に問い合わせた結果に基づいて、現在の処理ステップがリソースの隔離が不要な処理ステップであることを検知する。
したがって、リソース提供部2_c-1は、図15に示すように、出力ファイル“C_b-1-F-out”を分散共有ストレージDS上に新たに生成する(ステップS704)。この出力ファイル“C_b-1-F-out”の内容は、一件目のレコードが(http://example.com/data/WEST/FUKUOKA,200)となり、二件目のレコードが(http://example.com/data/WEST/OSAKA,100)となる。
同様に、コンテナC_c-2では、図15に示すように、出力ファイル“C_b-1-s-out”が分散共有ストレージDS上に新たに生成される(ステップS704)。この出力ファイル“C_b-1-s-out”の内容は、一件目のレコードが(http://example.com/data/WEST/KOBE,10)となり、二件目のレコードが(http://example.com/data/WEST/KYOTO,5)となる。
同様に、コンテナC_c-4では、図15に示すように、出力ファイル“C_b-2-s-out”が分散共有ストレージDS上に新たに生成される(ステップS704)。この出力ファイル“C_b-2-s-out”の内容は、一件目のレコードが(http://example.com/data/EAST/SAPPORO,90)となり、二件目のレコードが(http://example.com/data/EAST/SENDAI,80)となる。
一方、コンテナC_c-3では、URL“http://example.com/data/EAST/TOKYO”へのアクセスに失敗する(ステップS703;NO)ため、処理ステップがステップS705に移行する。
続いて、コンテナC_c-3では、出力ファイル“C_b-2-F-out”を生成するように、リソース提供部2_c-3に依頼する(ステップS705)。
続いて、リソース提供部2_c-3は、処理ステップ監視部3_c-3およびリソース隔離判定部4_c-3に問い合わせた結果に基づいて、現在の処理ステップがリソースの隔離が必要な処理ステップであることを検知する。
したがって、リソース提供部2_c-3は、図15に示すように、隔離ファイル“C_b-2-F-out.err”を分散共有ストレージDS上に新たに生成する(ステップS705)。この隔離ファイル“C_b-2-F-out.err”の内容は、1件のレコード(http://example.com/data/EAST/YOKOHAMA,150)のみとなる。
続いて、コンテナC_b-1上では、二つの子コンテナC_c-1、C_c-2から出力されたファイル“C_b-1-F-out”および“C_b-1-S-out”を参照するように、リソース提供部2_b-1に依頼する(ステップS603)。
続いて、リソース提供部2_b-1は、処理ステップ監視部3_b-1およびリソース隔離判定部4_b-1に問い合わせた結果に基づいて、現在の処理ステップがリソースの隔離が不要な処理ステップであることを検知する。
したがって、リソース提供部2_b-1は、二つのファイル“C_b-1-F-out”および“C_b-1-S-out”を参照して、出力ファイル“C_a-1-F-out”を生成し、分散共有ストレージDSに新たに出力する(ステップS603)。この出力ファイル“C_a-1-F-out”の内容は、一件目のレコードが(http://example.com/data/WEST/FUKUOKA,200)となり、二件目のレコードが(http://example.com/data/WEST/KYOTO,5)となる。
一方、コンテナC_b-2上では、二つの子コンテナC_c-3、C_c-4から出力されたファイル“C_b-2-F-out”および“C_b-2-S-out”を参照するように、リソース提供部2_b-2に依頼する(ステップS603)。
続いて、リソース提供部2_b-2は、処理ステップ監視部3_b-2に実行履歴の問い合わせを行う。その問い合わせに対して、処理ステップ監視部3_b-2は、処理ステップ監視部3_c-3に記録されているステップS705の実行履歴を含む結果を応答する。その応答結果を用いて、リソース提供部2_b-2は、リソース隔離判定部4_b-2に問い合わせを行い、現在の処理ステップがリソースの隔離が必要な処理ステップであることを検知する。
したがって、リソース提供部2_b-2は、二つのファイル“C_b-2-F-out.err”および“C_b-2-S-out”を参照して、隔離ファイル“C_a-1-s-out.err”を生成し、分散共有ストレージDSに新たに出力する(ステップS603)。この隔離ファイル“C_a-1-s-out.err”の内容は、一件目のレコードが(http://example.com/data/EAST/YOKOHAMA,150)となり、二件目のレコードが(http://example.com/data/EAST/SENDAI,80)となる。
続いて、コンテナC_a-1上では、二つの子コンテナC_b-1、C_b-2から出力されたファイル“C_a-1-F-out”および“C_a-1-S-out”を参照するように、リソース提供部2_a-1に依頼する(ステップS603)。
上述したリソース提供部2_b-2と同様に、リソース提供部2_a-1は、現在の処理ステップがリソースの隔離が必要な処理ステップであることを検知する。
したがって、リソース提供部2_a-1は、二つのファイル“C_a-1-F-out”および“C_a-1-S-out.err”を参照して、隔離ファイル“F_IN-out.err”を生成し、分散共有ストレージDSに新たに出力する(ステップS603)。この隔離ファイル“F_IN-out.err”の内容は、一件目のレコードが(http://example.com/data/WEST/FUKUOKA,200)となり、二件目のレコードが(http://example.com/data/WEST/KYOTO,5)となる。
上述したように、第2実施形態における分散処理システムによれば、処理ステップがリソース隔離ステップである場合には、その処理の結果を格納した隔離ファイル“<R>.err”を分散共有ストレージDS上に出力することができる。
これにより、リソース隔離ステップが実行されたことを、隔離ファイルの存在を確認することで、容易に認識することができる。それゆえに、エラーや障害が発生した場合に、その解析作業や対応作業を容易化することが可能となる。
また、エラーや障害の影響を受けた隔離ファイルと、エラーや障害の影響を受けない正常なファイルとを分離して保持することができるため、アプリケーション全体を再実行することなくリカバリすることが可能となる。以下に、具体的に説明する。
上述した第2実施形態では、3つの隔離ファイル“C_b-2-F-out.err”、“C_a-1-S-out.err”および“F_IN-out.err”が生成されている。まず、その中で最も下位階層に位置する隔離ファイル“C_b-2-F-out.err”の生成要因となった“http://example.com/data/EAST/TOKYO”のデータサイズを取得する。続いて、取得したデータの内容および隔離ファイル“C_b-2-F-out.err”の内容と、その上位階層に位置する隔離ファイル“C_a-1-S-out.err”の内容とを比較して、正常なファイル“C_a-1-S-out”の内容を生成する。同様にして、生成したファイル“C_a-1-S-out”の内容と、その上位階層に位置する“F_IN-out.err”の内容とを比較して、正常なファイル“F_IN-out”の内容を生成する。これにより、アプリケーション全体の再実行を行うことなく、“F_IN-out”の内容をリカバリすることが可能となる。
なお、第2実施形態では、処理ステップの実行履歴を参照する処理ステップ監視部3_<x>-<y>が親子関係からなるツリー構造で規定される場合について説明したが、依存関係の構造はツリー構造には限定されない。任意の有向非循環グラフで既定される依存関係で構成することで同様の効果を得ることができる。
また、上述した各実施形態は、単なる例示に過ぎず、各実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
上述した各実施形態の一部または全部は、以下の付記のようにも記載され得るが、本発明を以下のように限定するものではない。
(付記1) 分散共有ストレージ上の処理対象ファイルを参照しながら一つのアプリケーションを分散して実行する複数のアプリケーション実行部と、前記アプリケーション実行部により実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視部と、前記処理ステップ監視部により監視されている前記処理ステップが、リソースの隔離が必要なリソース隔離ステップであるか否かを判定するリソース隔離判定部と、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップであると判定された場合に、隔離ファイルを生成するリソース提供部と、を備えることを特徴とする分散処理システム。
(付記2) 前記リソース提供部は、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップではないと判定された場合に、分散共有ストレージ上の処理対象ファイルを前記アプリケーションに提供し、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップであると判定された場合には、当該処理ステップを実行するノード上に前記隔離ファイルを生成し、当該隔離ファイルに前記処理対象ファイルの内容を複製し、前記アプリケーションに提供する、ことを特徴とする付記1記載の分散処理システム。
(付記3) 前記リソース提供部は、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップではないと判定された場合に、当該処理ステップの実行結果を格納した出力ファイルを生成して前記分散共有ストレージ上に出力し、前記リソース隔離判定部により前記処理ステップが前記リソース隔離ステップであると判定された場合には、当該処理ステップの実行結果を格納した前記隔離ファイルを生成して前記分散共有ストレージ上に出力する、ことを特徴とする付記1記載の分散処理システム。
(付記4) 分散共有ストレージ上の処理対象ファイルを参照しながら一つのアプリケーションを分散して実行する複数のアプリケーション実行ステップと、前記アプリケーション実行ステップにおいて実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視ステップと、前記処理ステップ監視ステップにおいて監視されている前記処理ステップが、リソースの隔離が必要なリソース隔離ステップであるか否かを判定するリソース隔離判定ステップと、前記リソース隔離判定ステップにおいて前記処理ステップが前記リソース隔離ステップであると判定された場合に、隔離ファイルを生成するリソース提供ステップと、を含むことを特徴とする分散処理方法。
(付記5) 付記4に記載の各ステップをコンピュータに実行させるための分散処理プログラム。
1 アプリケーション実行部
2 リソース提供部
3 処理ステップ監視部
4 リソース隔離判定部
10 分散処理システム
A アプリケーション
C コンテナ
CF 隔離ファイル
DS 分散共有ストレージ
ES 外部サービス
H ホストノード
LS ローカルストレージ
NC ネットワークコネクション

Claims (4)

  1. 複数のノードの数に応じて分割した一つのファイルの実体レコードを、複数のノードに分散して格納する分散処理システムであって、
    複数のノードにおいて形成される分散共有ストレージ上の処理対象ファイルを参照しながら、複数のノードでそれぞれ同一のアプリケーションを実行するアプリケーション実行部と、
    前記アプリケーション実行部により実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視部と、
    前記処理ステップ監視部により監視されている前記処理ステップが、エラーレコードのリカバリを処理するステップであるか否かを判定する判定部と、
    記判定部により前記処理ステップが前記エラーレコードのリカバリを処理するステップであると判定された場合に、当該エラーレコードのリカバリを処理するステップを実行するノードに、隔離ファイルを生成し、当該隔離ファイルに前記処理対象ファイルの内容を複製してから、当該ノードの前記アプリケーションに提供し、一方、前記判定部により前記処理ステップが前記エラーレコードのリカバリを処理するステップではないと判定された場合には、当該処理ステップを実行するノードの前記アプリケーションに、前記分散共有ストレージ上の処理対象ファイルを提供するリソース提供部と、
    を備えることを特徴とする分散処理システム。
  2. 前記リソース提供部は、前記判定部により前記処理ステップが前記エラーレコードのリカバリを処理するステップではないと判定された場合に、当該処理ステップの実行結果を格納した出力ファイルを生成して前記分散共有ストレージ上に出力し、前記判定部により前記処理ステップが前記エラーレコードのリカバリを処理するステップであると判定された場合には、当該処理ステップの実行結果を格納した前記隔離ファイルを生成して前記分散共有ストレージ上に出力する、
    ことを特徴とする請求項1記載の分散処理システム。
  3. 複数のノードの数に応じて分割した一つのファイルの実体レコードを、複数のノードに分散して格納する分散処理システムにおける分散処理方法であって、
    複数のノードにおいて形成される分散共有ストレージ上の処理対象ファイルを参照しながら、複数のノードでそれぞれ同一のアプリケーションを実行するアプリケーション実行ステップと、
    前記アプリケーション実行ステップにおいて実行されている前記アプリケーションの処理ステップを監視する処理ステップ監視ステップと、
    前記処理ステップ監視ステップにおいて監視されている前記処理ステップが、エラーレコードのリカバリを処理するステップであるか否かを判定する判定ステップと、
    記判定ステップにおいて前記処理ステップが前記エラーレコードのリカバリを処理するステップであると判定された場合に、当該エラーレコードのリカバリを処理するステップを実行するノードに、隔離ファイルを生成し、当該隔離ファイルに前記処理対象ファイルの内容を複製してから、当該ノードの前記アプリケーションに提供し、一方、前記判定ステップにおいて前記処理ステップが前記エラーレコードのリカバリを処理するステップではないと判定された場合には、当該処理ステップを実行するノードの前記アプリケーションに、前記分散共有ストレージ上の処理対象ファイルを提供するリソース提供ステップと、
    を含むことを特徴とする分散処理方法。
  4. 請求項に記載の各ステップをコンピュータに実行させるための分散処理プログラム。
JP2012069399A 2012-03-26 2012-03-26 分散処理システム、分散処理方法および分散処理プログラム Active JP5907419B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012069399A JP5907419B2 (ja) 2012-03-26 2012-03-26 分散処理システム、分散処理方法および分散処理プログラム
US13/837,672 US9262219B2 (en) 2012-03-26 2013-03-15 Distributed processing system, distributed processing method, and distributed processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012069399A JP5907419B2 (ja) 2012-03-26 2012-03-26 分散処理システム、分散処理方法および分散処理プログラム

Publications (2)

Publication Number Publication Date
JP2013200769A JP2013200769A (ja) 2013-10-03
JP5907419B2 true JP5907419B2 (ja) 2016-04-26

Family

ID=49326286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012069399A Active JP5907419B2 (ja) 2012-03-26 2012-03-26 分散処理システム、分散処理方法および分散処理プログラム

Country Status (2)

Country Link
US (1) US9262219B2 (ja)
JP (1) JP5907419B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10650046B2 (en) * 2016-02-05 2020-05-12 Sas Institute Inc. Many task computing with distributed file system
US10642896B2 (en) 2016-02-05 2020-05-05 Sas Institute Inc. Handling of data sets during execution of task routines of multiple languages
US10650045B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Staged training of neural networks for improved time series prediction performance
US10795935B2 (en) 2016-02-05 2020-10-06 Sas Institute Inc. Automated generation of job flow definitions
USD898059S1 (en) 2017-02-06 2020-10-06 Sas Institute Inc. Display screen or portion thereof with graphical user interface
USD898060S1 (en) 2017-06-05 2020-10-06 Sas Institute Inc. Display screen or portion thereof with graphical user interface

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0973381A (ja) * 1995-09-04 1997-03-18 Hitachi Ltd プロセッサ指定方法、計算機システム、ユーザ計算機
AU7996200A (en) * 1999-10-05 2001-05-10 Ejasent Inc. Virtual port multiplexing
US6856993B1 (en) * 2000-03-30 2005-02-15 Microsoft Corporation Transactional file system
JP2003202996A (ja) * 2001-12-28 2003-07-18 Nippon Digital Kenkyusho:Kk アプリケーションシステム間の機能的統合システム及びプログラム
JP2004102449A (ja) 2002-09-05 2004-04-02 Hitachi Ltd ジョブネットワークの設定方法、ジョブネットワークの実行方法、ジョブ管理システム、管理端末、およびプログラム
US7694328B2 (en) * 2003-10-21 2010-04-06 Google Inc. Systems and methods for secure client applications
US7526534B2 (en) * 2004-07-16 2009-04-28 Cassatt Corporation Unified system services layer for a distributed processing system
US9542222B2 (en) * 2008-11-14 2017-01-10 Oracle International Corporation Resource broker system for dynamically deploying and managing software services in a virtual environment based on resource usage and service level agreement
US8341631B2 (en) * 2009-04-10 2012-12-25 Open Invention Network Llc System and method for application isolation
JP5472604B2 (ja) * 2009-10-08 2014-04-16 日本電気株式会社 プロセス検疫装置、検疫システム、ファイル処理方法、及びプログラム
JP5471365B2 (ja) * 2009-11-27 2014-04-16 富士通株式会社 情報処理装置及びコンピュータプログラム
JP2011040044A (ja) * 2010-06-10 2011-02-24 System Intelligent Kk 仮想シンクライアント化装置、仮想シンクライアント化システム、仮想シンクライアント化プログラム、及び仮想シンクライアント化方法

Also Published As

Publication number Publication date
US20130275992A1 (en) 2013-10-17
US9262219B2 (en) 2016-02-16
JP2013200769A (ja) 2013-10-03

Similar Documents

Publication Publication Date Title
JP5907419B2 (ja) 分散処理システム、分散処理方法および分散処理プログラム
US10831720B2 (en) Cloud storage distributed file system
US10817498B2 (en) Distributed transactions in cloud storage with hierarchical namespace
CN107577427B (zh) 用于区块链系统的数据迁移方法、设备和存储介质
EP2501108B1 (en) Massively scalable object storage system
US20190370362A1 (en) Multi-protocol cloud storage for big data and analytics
US9904599B2 (en) Method, device, and system for data reconstruction
EP2996308B1 (en) Massively scalable object storage system
US8326800B2 (en) Seamless upgrades in a distributed database system
Uppoor et al. Cloud-based synchronization of distributed file system hierarchies
US20130218934A1 (en) Method for directory entries split and merge in distributed file system
US20150229715A1 (en) Cluster management
JP2016062609A (ja) コンピュータ実装された動的シャーディング方法
US9031906B2 (en) Method of managing data in asymmetric cluster file system
CN106605217B (zh) 用于将应用从一个站点移动到另一站点的方法和系统
CN110347651A (zh) 基于云存储的数据同步方法、装置、设备及存储介质
JP2009020757A (ja) データ登録装置、データ登録方法及びプログラム
JP6233403B2 (ja) ストレージシステム、ストレージ装置、ストレージ装置の制御方法及び制御プログラム、管理装置、管理装置の制御方法及び制御プログラム
CN105022779A (zh) 一种利用Filesystem API实现HDFS文件存取方法
EP4281912A1 (en) Handling system-characteristics drift in machine learning applications
US20140081935A1 (en) Detection and correction of corrupted or dangling data object handles
Strickland Cassandra 3. x High Availability
JP2009289089A (ja) クラスタ型ストレージシステム、そのノード装置、データ制御方法およびそのプログラム
JP5589726B2 (ja) ジョブ管理システム、ジョブ管理システム制御方法およびその制御用プログラム
US20150215404A1 (en) Replication device, replication method, and replication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151127

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: 20160226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160310

R150 Certificate of patent or registration of utility model

Ref document number: 5907419

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150