図面 (/)

技術 判定プログラム、判定装置および判定方法

出願人 富士通株式会社
発明者 佐々木晃杉浦由紹橋口雅史
出願日 2016年6月7日 (5年8ヶ月経過) 出願番号 2016-113584
公開日 2017年12月14日 (4年2ヶ月経過) 公開番号 2017-220010
状態 特許登録済
技術分野 検索装置 計算機におけるファイル管理
主要キーワード バッチ管理 並列分散処理 要求解釈 排他解除 排他管理 排他情報 要素種別 排他状態
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2017年12月14日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

指定された資源排他制御の対象とできるか否かの判定を効率的に行うことができるようにする。

解決手段

排他制御の対象の資源の所在情報受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、処理をコンピュータに実行させる。

概要

背景

バッチ処理では所定のファイルの参照・更新が行われるが、あるバッチ処理の動作中に他のバッチ処理が同じファイルを更新してしまうと処理結果に矛盾が生じてしまうため、他のバッチ処理による更新ができないよう、論理的な排他制御を行っている。また、バッチ処理では比較的長い時間にわたって決められた処理を行うため、排他制御を行うファイル等の資源を必要最小限にものとすることが望まれる。

従来における排他制御は、対象となるファイル等の資源に対してロック状態排他状態)を管理することにより行っていた(例えば、特許文献1等を参照)。

概要

指定された資源を排他制御の対象とできるか否かの判定を効率的に行うことができるようにする。排他制御の対象の資源の所在情報受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、処理をコンピュータに実行させる。

目的

そこで、一側面では、指定された資源を排他制御の対象とできるか否かの判定を効率的に行うことができるようにすることを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

排他制御の対象の資源所在情報受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、処理をコンピュータに実行させることを特徴とする判定プログラム

請求項2

前記所在情報は、前記対象の資源が格納される共有ディスク識別情報と、該共有ディスク上のルートディレクトリから対象の資源であるディレクトリまたはファイルまでを示すフルパスとを含む、ことを特徴とする請求項1に記載の判定プログラム。

請求項3

前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記共有ディスクの識別情報を含むディスク識別構造体と、各資源についての要素名、要素種別、排他制御状態、上位の資源へのリンク情報および下位の資源へのリンク情報を含むファイル・ディレクトリ識別構造体とにより表される、ことを特徴とする請求項2に記載の判定プログラム。

請求項4

前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記受け付けた排他制御の対象の資源が排他制御の対象とできると判定した場合に、該資源の所在情報に基づいて記憶する、ことを特徴とする請求項1乃至3のいずれか一項に記載の判定プログラム。

請求項5

前記対象の資源が前記複数の資源の階層関係を示す情報に存在する場合は、前記対象の資源および該資源の上位または下位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、ことを特徴とする請求項1乃至4のいずれか一項に記載の判定プログラム。

請求項6

前記対象の資源が前記複数の資源の階層関係を示す情報に存在しない場合は、前記対象の資源に階層上で最も近い資源および該資源の上位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、ことを特徴とする請求項1乃至5のいずれか一項に記載の判定プログラム。

請求項7

排他制御の対象の資源の所在情報を受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定する手段と、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得する手段と、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う手段と、を備えたことを特徴とする判定装置

請求項8

排他制御の対象の資源の所在情報を受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、処理をコンピュータが実行することを特徴とする判定方法

技術分野

0001

本発明は、判定プログラム判定装置および判定方法に関する。

背景技術

0002

バッチ処理では所定のファイルの参照・更新が行われるが、あるバッチ処理の動作中に他のバッチ処理が同じファイルを更新してしまうと処理結果に矛盾が生じてしまうため、他のバッチ処理による更新ができないよう、論理的な排他制御を行っている。また、バッチ処理では比較的長い時間にわたって決められた処理を行うため、排他制御を行うファイル等の資源を必要最小限にものとすることが望まれる。

0003

従来における排他制御は、対象となるファイル等の資源に対してロック状態排他状態)を管理することにより行っていた(例えば、特許文献1等を参照)。

先行技術

0004

特開2013−109630号公報

発明が解決しようとする課題

0005

上述したように、従来は対象となるファイル等の資源毎に排他制御を行っていたため、ディレクトリの階層(包含)関係を含めたファイル・ディレクトリ間の排他制御を行うことができなかった。

0006

昨今、ビッグデータ活用等における主要技術として注目されているHadoop(データを複数のサーバに分散し並列して処理するミドルウェア)などの並列分散処理では、計算結果ディレクトリ配下の複数のファイルに分割されて出力されることがある。ファイル名は事前にはわからないが、それらのファイルを後続のステップで必要とすることがある。

0007

バッチ処理を短時間で実行するため、バッチ処理においてHadoopと連携するニーズがあるが、Hadoop連携では連携するための入力や出力の資源をディレクトリとして指定する必要がある。そのため、ファイル・ディレクトリ間の排他制御はもとより、ディレクトリとその包含関係にあるファイルやサブディレクトリの排他制御を効率的に実施する必要がある。

0008

そこで、一側面では、指定された資源を排他制御の対象とできるか否かの判定を効率的に行うことができるようにすることを目的とする。

課題を解決するための手段

0009

一つの形態では、排他制御の対象の資源の所在情報受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、処理をコンピュータに実行させる。

発明の効果

0010

指定された資源を排他制御の対象とできるか否かの判定を効率的に行うことができる。

図面の簡単な説明

0011

一実施形態にかかるシステム構成例を示す図である。
排他制御装置機能構成例を示す図である。
排他管理ツリー情報の要素となる構造体の例を示す図である。
排他管理ツリー情報の例を示す図である。
排他制御装置のハードウェア構成例を示す図である。
実施形態の処理例を示すシーケンス図である。
排他制御装置の処理例を示すフローチャートである。
排他情報取得における「排他管理ツリーから排他獲得可能か判定」の処理例を示すフローチャートである。
排他獲得要求に対する処理例を示す図(その1)である。
排他獲得要求に対する処理例を示す図(その2)である。
排他獲得要求に対する処理例を示す図(その3)である。
排他獲得要求に対する処理例を示す図(その4)である。
排他獲得要求に対する処理例を示す図(その5)である。
排他獲得要求に対する処理例を示す図(その6)である。

実施例

0012

以下、本発明の好適な実施形態につき説明する。

0013

<構成>
図1は一実施形態にかかるシステム構成例を示す図である。図1において、ネットワーク3(有線無線を問わない)には、複数のバッチ処理サーバ1A、1B、・・・と、バッチ管理サーバ2と、共有ディスク4と、クライアント5と、排他制御装置6とが接続されている。バッチ処理サーバ1A、1B、・・・は、クライアント5からのバッチ処理要求に応じ、バッチ管理サーバ2を介して起動され、内部で実行される単数または複数のジョブによりバッチ処理を実行する機能を有している。バッチ処理サーバ1A、1B、・・・のジョブは、バッチ処理に際して共有ディスク4上のファイルを参照・更新する。また、バッチ処理サーバ1A、1B、・・・のジョブは、バッチ処理に際して、自らが参照・更新するファイルが他のジョブにより更新されないように、ディレクトリまたはファイルを指定した排他獲得要求を排他制御装置6に対して行う。

0014

バッチ管理サーバ2は、クライアント5からのバッチ処理要求に応じ、負荷状態等を考慮して、バッチ処理サーバ1A、1B、・・・に処理の振り分けを行う等のバッチ処理の管理を行う機能を有している。排他制御装置6は、バッチ処理サーバ1A、1B、・・・のジョブからのサービス起動命令および使用開始命令に従って処理の準備を行うとともに、排他獲得要求や排他情報取得要求に応じて、排他制御または情報提供を行う機能を有している。また、排他制御装置6は、バッチ処理サーバ1A、1B、・・・のジョブからの要求に応じて、排他制御の解除の機能も有している。

0015

図2は排他制御装置6の機能構成例を示す図である。図2において、排他制御装置6は、排他管理ツリー情報60と命令・要求/応答送受信部61と命令・要求解釈部62と操作判定部63と排他判定部64と排他管理ツリー・ロック管理部65とを備えている。排他管理ツリー情報60は、共有ディスク4毎に排他制御の状態を管理する情報である。排他管理ツリー情報60による排他管理ツリーは、初期状態ではブランクであり、バッチ処理サーバ1(1A、1B、・・・)からの排他獲得要求により追加されていく。すなわち、排他獲得可である場合に排他制御の対象となる資源(ディレクトリ、ファイル)の階層構造および排他制御の状態の情報が追加されていく。

0016

図3は排他管理ツリー情報60の要素となる構造体の例を示す図であり、共有ディスク4の識別情報を含むディスク識別構造体と、各資源についての情報を含むファイル・ディレクトリ識別構造体とがある。ディスク識別構造体には、ディスク識別子が含まれている。ディスク識別子にはディスク識別子名が入る。

0017

ファイル・ディレクトリ識別構造体には、要素名、要素種別ロック中?、子へのリンクおよび親へのリンクが含まれている。要素名は、資源を特定する情報であり、具体的には共有ディスク上のルートディレクトリから対象の資源であるディレクトリまたはファイルまでを示すフルパス(所在情報)の記述である。要素種別は、ディレクトリまたはファイルの別である。ロック中?は、排他制御状態を示す情報であり、YESの場合は排他制御中(ロック中)、NOの場合は排他制御されていないことを示す。子へのリンクは、該資源の階層構造における直近の下位の資源を示す情報である。子は、存在しない場合、単数の場合、複数の場合がある。親へのリンクは、該資源の階層構造における直近の上位の資源を示す情報である。親はルートディレクトリの場合は存在しない。その他の場合は1つの親が存在する。

0018

図4は排他管理ツリー情報60の例を示す図である。図示の例では、ディスク識別子:"disk001_GYOMU_A"において、ルートディレクトリX0、その下位のディレクトリX1、X2、ディレクトリX1の下位のディレクトリY1、ディレクトリX2の下位のディレクトリZ0について示している。なお、着色しているディレクトリY1、Z0はロック中であることを示している。なお、末端の資源はファイルであることもある。

0019

なお、前述したように、排他管理ツリーは初期状態ではブランクであり、バッチ処理サーバ1(1A、1B、・・・)からの排他獲得要求に対して排他獲得可である場合にツリー部分が追加されていく。ツリー部分の追加は、ファイル・ディレクトリ識別構造体が追加されることを意味する。

0020

排他獲得要求は、排他獲得要求である旨と、共有ディスクの識別情報と、排他獲得対象の資源を示すフルパスとを排他制御装置6に送信することで行われる。例えば、排他獲得要求+"disk001_GYOMU_A":X0/X1/Y1/に応じ("/"は階層が変わることを示すパス文字)、対応する資源が排他管理ツリー上に存在しない場合、図4のX0→X1→Y1のツリー部分が追加される。また、排他獲得要求+"disk001_GYOMU_A":X0/X2/Z0/に応じ、対応する資源が排他管理ツリー上に存在しない場合、図4のX0→X2→Z0のツリー部分が追加される。また、資源の排他制御を解除する場合も、解除をする旨と資源のフルパスを指定することで、該当する資源をロック中から非ロック中に変更する。なお、排他制御の解除に際して、該当するツリー部分を削除(対応する構造体を削除)してもよい。

0021

図2戻り、命令・要求/応答送受信部61は、バッチ処理サーバ1(1A、1B、・・・)から命令(サービス起動命令、使用開始命令等)または要求(排他獲得要求、排他情報取得要求、排他解除要求等)を受信し、処理後に応答を行う機能を有している。命令・要求解釈部62は、命令・要求/応答送受信部61の受信した命令または要求を定義情報等に基づいて解釈する機能を有している。操作判定部63は、命令・要求解釈部62により解釈された命令または要求に応じて行うべき操作を判定する機能を有している。排他判定部64は、排他獲得要求または排他情報取得要求に対応する操作として、排他管理ツリー情報60を参照し、指定された資源が排他制御可能であるか否かを判定する機能を有している。排他管理ツリー・ロック管理部65は、サービス起動命令、使用開始命令に対応する操作として、排他管理ツリー情報60の初期化(記憶領域確保等)を行うとともに、排他獲得要求に応じて新たなツリー部分の追加・変更等を行う機能を有している。

0022

図5は排他制御装置6のハードウェア構成例を示す図である。図5において、排他制御装置6は、バス607を介して相互に接続されたCPU(Central Processing Unit)601、ROM(Read Only Memory)602、RAM(Random Access Memory)603を備えている。また、排他制御装置6は、HDD(Hard Disk Drive)/SSD(Solid State Drive)604、接続I/F(Interface)605、通信I/F606を備えている。CPU601は、RAM603をワークエリアとしてROM602またはHDD/SSD604等に格納されたプログラムを実行することで、排他制御装置6の動作を統括的に制御する。接続I/F605は、排他制御装置6に接続される機器とのインタフェースである。通信I/F606は、ネットワークを介して他の情報処理装置と通信を行うためのインタフェースである。

0023

図2で説明した排他制御装置6の機能は、CPU601において所定のプログラムが実行されることで実現される。プログラムは、記録媒体を経由して取得されるものでもよいし、ネットワークを経由して取得されるものでもよいし、ROM組込でもよい。処理に際して参照・更新されるデータは、RAM603またはHDD/SSD604に保持される。

0024

<動作>
図6は上記の実施形態の処理例を示すシーケンス図である。図6において、バッチ処理サーバ1(1A、1B、・・・)は、クライアント5(図1)からのバッチ処理要求に応じ、バッチ管理サーバ2(図1)を介して起動されると(ステップS111)、排他制御装置6に対してサービス起動命令を発行する(ステップS112)。

0025

サービス起動命令を受信した排他制御装置6は、排他制御サービスを起動し(ステップS113)、各種の初期化を行う(ステップS114)。すなわち、各部の初期化処理を実施し、排他管理ツリー情報60の排他管理ツリーを一つも要素を含まない状態に初期化し、排他管理ツリーの操作が行える状態にする。そして、初期化が完了すると、排他制御装置6は要求元のバッチ処理サーバ1に対して起動完了応答を行う(ステップS115)。

0026

その後、バッチ処理サーバ1がバッチ処理の開始に際して排他制御装置6に対して使用開始命令を発行すると(ステップS121)、排他制御装置6は各種の設定を行う(ステップS122)。すなわち、命令・要求解釈部62へ新規のバッチ処理サーバ1に関する情報の追加等を行い、命令・要求解釈部62がバッチ処理サーバ1からの命令・要求を解釈できるように処理する。これにより、バッチ処理サーバ1からの要求に応じて排他管理ツリーに要素の追加・削除などの操作ができる状態となる。そして、設定が完了すると、排他制御装置6はバッチ処理サーバ1に対して使用可能応答を行う(ステップS123)。

0027

その後、バッチ処理サーバ1は、バッチ処理に際して、自らが参照・更新するファイルが他のジョブにより更新されないように、ディレクトリまたはファイルを指定した排他獲得要求を排他制御装置6に対して行う(ステップS131)。排他獲得要求は、前述したように、排他獲得要求である旨と、共有ディスクの識別情報と、排他獲得対象の資源を示すフルパスとを含む。

0028

排他獲得要求を受信した排他制御装置6は、排他管理ツリーを参照することで排他制御の可否の判定を行う(ステップS132)。処理の詳細は後述する。

0029

そして、排他制御が可能である場合、排他制御装置6は、排他管理ツリーの追加等を行う(ステップS133)。処理の詳細は後述する。

0030

そして、排他制御装置6は、排他獲得結果を要求元のバッチ処理サーバ1に応答する(ステップS134)。

0031

また、バッチ処理サーバ1は、排他獲得ではなく、排他制御の状態を確認したい場合、ディレクトリまたはファイルを指定した排他情報取得要求を排他制御装置6に対して行う(ステップS141)。排他情報取得要求には、排他情報取得要求である旨と、共有ディスクの識別情報と、排他獲得対象の資源を示すフルパスとを含む。

0032

排他情報取得要求を受信した排他制御装置6は、排他管理ツリーを参照することで排他制御の可否の判定を行う(ステップS142)。処理の詳細は後述する。

0033

そして、排他制御の可否を排他情報として要求元のバッチ処理サーバ1に応答する(ステップS143)。

0034

図7は、図6におけるステップS132、S133等の処理の詳細を示したものである。図8は、図7におけるステップS211の処理の詳細を示している。

0035

図7において、排他制御装置6は、バッチ処理サーバ1から要求(リクエスト)を受信すると(ステップS201)、要求が資源の排他獲得か排他情報取得かにより処理を分岐する(ステップS202)。資源の排他獲得である場合、排他制御装置6は、要求された資源が排他管理ツリー内に存在するか否か判断する(ステップS203)。

0036

要求された資源が排他管理ツリー内に存在しないと判断した場合(ステップS203のNo)、排他制御装置6は、要求された資源に最も近い資源またはその上位の資源のいずれかがロック中であるか否か判断する(ステップS204)。要求された資源に最も近い資源とは、同じ共有ディスクで既に排他管理ツリーに存在する資源のうち、要求された資源と階層構造上で最も近い資源である。

0037

要求された資源に最も近い資源またはその上位の資源のいずれもロック中でないと判断した場合(ステップS204のNo)、排他制御装置6は、排他獲得可と判定し(ステップS205)、要求された資源を排他管理ツリーに追加する(ステップS206)。そして、排他獲得の旨の応答(レスポンス)を要求元のバッチ処理サーバ1に送信する(ステップS212)。排他獲得の旨の応答を受け取ったバッチ処理サーバ1は、処理を継続(待機していた場合は再開)する。排他獲得の可否に応じて処理の継続・待機を行うことが、論理的な排他制御となる。

0038

図9は排他管理ツリーがブランクの状態で、排他獲得要求「disk001_GYOMU_A:/X0/X1/Y1」が行われた状態を示している。排他管理ツリーがブランクであるため、要求された資源が排他管理ツリー内に存在しないと判断され(ステップS203のNo)、要求された資源に最も近い資源またはその上位の資源のいずれも存在しないためロック中でないと判断される(ステップS204のNo)。そのため、排他獲得可と判定され(ステップS205)、要求された資源が排他管理ツリーに追加される(ステップS206)。図9の右側には、指定された資源Y1を末端としたツリー部分が追加された状態を示している。なお、資源Y1は排他獲得によりロック中とされる。ツリー部分を示す構造体は図4に示したのと同様である。

0039

図10は、左側に示す排他管理ツリーの状態(図9の右の状態)において更に排他獲得要求「disk001_GYOMU_A:/X0/X2/Z0」が行われた状態を示している。この場合も排他獲得可と判定され(ステップS205)、要求された資源が排他管理ツリーに追加される(ステップS206)。図10の右側には、指定された資源Z0を末端としてたツリー部分が追加された状態を示している。なお、資源Z0は排他獲得によりロック中とされる。ツリー部分を示す構造体は図4に示したのと同様である。

0040

図11は、左側に示す排他管理ツリーの状態(図10の右の状態)で、排他獲得要求「disk001_GYOMU_A:/X0/X2/X3/Q1」が行われた状態を示している。この場合、資源Q1は要求された資源が排他管理ツリー内に存在しないと判断され(ステップS203のNo)、要求された資源Q1に最も近い資源X2またはその上位の資源X0のいずれもロック中でないと判断される(ステップS204のNo)。そのため、排他獲得可と判定され(ステップS205)、要求された資源が排他管理ツリーに追加される(ステップS206)。図11の右側はX2−X3−Q1のツリー部分が追加された状態を示している。

0041

図7に戻り、要求された資源に最も近い資源またはその上位の資源のいずれかがロック中であると判断した場合(ステップS204のYes)、排他制御装置6は、排他獲得不可と判定する(ステップS207)。そして、排他制御装置6は、排他獲得不可の旨の応答を要求元のバッチ処理サーバ1に送信する(ステップS212)。排他獲得不可の旨の応答を受け取ったバッチ処理サーバ1は、処理を待機する。

0042

図12は、左側に示す排他管理ツリーの状態で、排他獲得要求「disk001_GYOMU_A:/X0/X2/Z0/Q2」が行われた状態を示している。この場合、資源Q2は要求された資源が排他管理ツリー内に存在しないと判断され(ステップS203のNo)、要求された資源Q2に最も近い資源Z0がロック中であると判断される(ステップS204のYes)。そのため、排他獲得不可と判定される(ステップS207)。

0043

図7に戻り、要求された資源が排他管理ツリー内に存在すると判断した場合(ステップS203のYes)、排他制御装置6は、要求された資源またはその上位・下位の資源のいずれかがロック中であるか否か判断する(ステップS208)。下位の資源の排他状態も確認するのは、あるディレクトリを排他制御するということはその下位の全ての資源を排他制御することとなるため、既に排他制御されている資源がある場合には重複して排他制御することを避ける必要があるからである。

0044

要求された資源またはその上位・下位の資源のいずれもロック中でないと判断した場合(ステップS208のNo)、排他制御装置6は、排他獲得可と判定し(ステップS209)、要求された資源をロック中に変更する(ステップS210)。そして、排他獲得の旨の応答を要求元のバッチ処理サーバ1に送信する(ステップS212)。排他獲得の旨の応答を受け取ったバッチ処理サーバ1は、処理を継続(待機していた場合は再開)する。

0045

図13は、左側に示す排他管理ツリーの状態で、排他獲得要求「disk001_GYOMU_A:/X0/X1/Y1」が行われた状態を示している。なお、排他管理ツリーの資源Y1は排他制御が解除されているものとしている。この場合、要求された資源Y1は排他管理ツリー内に存在すると判断され(ステップS203のYes)、要求された資源Y1またはその上位・下位の資源X1、X0のいずれもロック中でないと判断される(ステップS208のNo)。そのため、排他獲得可と判定され(ステップS209)、図13の右側に示すように、要求された資源Y1はロック中に変更される(ステップS210)。

0046

図7に戻り、要求された資源またはその上位・下位の資源のいずれかがロック中であると判断した場合(ステップS208のYes)、排他制御装置6は、排他獲得不可と判定する(ステップS207)。そして、排他制御装置6は、排他獲得不可の旨の応答を要求元のバッチ処理サーバ1に送信する(ステップS212)。排他獲得不可の旨の応答を受け取ったバッチ処理サーバ1は、処理を待機する。

0047

図14は、左側に示す排他管理ツリーの状態で、排他獲得要求「disk001_GYOMU_A:/X0/X1/Y1」が行われた状態を示している。この場合、要求された資源Y1は排他管理ツリー内に存在すると判断され(ステップS203のYes)、要求された資源Y1はロック中であると判断される(ステップS208のYes)。そのため、排他獲得不可と判定される(ステップS207)。

0048

図7に戻り、要求が排他情報取得である場合(ステップS202の排他情報取得)、排他制御装置6は排他管理ツリーから排他獲得可能か判定し(ステップS211)、判定結果を要求元のバッチ処理サーバ1に送信する(ステップS212)。

0049

「排他管理ツリーから排他獲得可能か判定」(図7のステップS211)の処理例を図8により説明する。図8において、処理を開始すると(ステップS221)、排他制御装置6は、要求された資源が排他管理ツリー内に存在するか否か判断する(ステップS222)。

0050

要求された資源が排他管理ツリー内に存在しないと判断した場合(ステップS222のNo)、排他制御装置6は、要求された資源に最も近い資源またはその上位の資源のいずれかがロック中であるか否か判断する(ステップS223)。

0051

要求された資源に最も近い資源またはその上位の資源のいずれもロック中でないと判断した場合(ステップS223のNo)、排他制御装置6は、排他獲得可と判定し(ステップS224)、処理を終了する。

0052

要求された資源に最も近い資源またはその上位の資源のいずれかがロック中であると判断した場合(ステップS223のYes)、排他制御装置6は、排他獲得不可と判定し(ステップS225)、処理を終了する。

0053

要求された資源が排他管理ツリー内に存在すると判断した場合(ステップS222のYes)、排他制御装置6は、要求された資源またはその上位・下位の資源のいずれかがロック中であるか否か判断する(ステップS226)。

0054

要求された資源またはその上位・下位の資源のいずれもロック中でないと判断した場合(ステップS226のNo)、排他制御装置6は、排他獲得可と判定し(ステップS227)、処理を終了する。

0055

要求された資源またはその上位・下位の資源のいずれかがロック中であると判断した場合(ステップS226のYes)、排他制御装置6は、排他獲得不可と判定し(ステップS225)、処理を終了する。

0056

なお、上述したフローチャートでは、排他制御の解除についての処理については省略したが、排他制御が不要となった場合、バッチ処理サーバ1は排他解除の旨と資源のフルパスを指示することで、排他制御装置6は該当する資源のロック中を非ロック中に変更する。以降の構造体の取り扱いは実装に依存した処理としてよい。例えば、排他解除と同時に構造体を削除するようにしてもよい。

0057

総括
以上説明したように、本実施形態によれば、指定された資源を排他制御の対象とできるか否かの判定を効率的に行うことができる。

0058

また、従来は行えなかったファイルとディレクトリの包含関係を考慮した排他制御を行うことができる。

0059

以上、好適な実施の形態により説明した。ここでは特定の具体例を示して説明したが、特許請求の範囲に定義された広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により限定されるものと解釈してはならない。

0060

以上の説明に関し、更に以下の項を開示する。
(付記1)
排他制御の対象の資源の所在情報を受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、
前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、
取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、
処理をコンピュータに実行させることを特徴とする判定プログラム。
(付記2)
前記所在情報は、前記対象の資源が格納される共有ディスクの識別情報と、該共有ディスク上のルートディレクトリから対象の資源であるディレクトリまたはファイルまでを示すフルパスとを含む、
ことを特徴とする付記1に記載の判定プログラム。
(付記3)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記共有ディスクの識別情報を含むディスク識別構造体と、各資源についての要素名、要素種別、排他制御状態、上位の資源へのリンク情報および下位の資源へのリンク情報を含むファイル・ディレクトリ識別構造体とにより表される、
ことを特徴とする付記2に記載の判定プログラム。
(付記4)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記受け付けた排他制御の対象の資源が排他制御の対象とできると判定した場合に、該資源の所在情報に基づいて記憶する、
ことを特徴とする付記1乃至3のいずれか一項に記載の判定プログラム。
(付記5)
前記対象の資源が前記複数の資源の階層関係を示す情報に存在する場合は、前記対象の資源および該資源の上位または下位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記1乃至4のいずれか一項に記載の判定プログラム。
(付記6)
前記対象の資源が前記複数の資源の階層関係を示す情報に存在しない場合は、前記対象の資源に階層上で最も近い資源および該資源の上位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記1乃至5のいずれか一項に記載の判定プログラム。
(付記7)
排他制御の対象の資源の所在情報を受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定する手段と、
前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得する手段と、
取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う手段と、
を備えたことを特徴とする判定装置。
(付記8)
前記所在情報は、前記対象の資源が格納される共有ディスクの識別情報と、該共有ディスク上のルートディレクトリから対象の資源であるディレクトリまたはファイルまでを示すフルパスとを含む、
ことを特徴とする付記7に記載の判定装置。
(付記9)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記共有ディスクの識別情報を含むディスク識別構造体と、各資源についての要素名、要素種別、排他制御状態、上位の資源へのリンク情報および下位の資源へのリンク情報を含むファイル・ディレクトリ識別構造体とにより表される、
ことを特徴とする付記8に記載の判定装置。
(付記10)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記受け付けた排他制御の対象の資源が排他制御の対象とできると判定した場合に、該資源の所在情報に基づいて記憶する、
ことを特徴とする付記7乃至9のいずれか一項に記載の判定装置。
(付記11)
前記判定を行う手段は、前記対象の資源が前記複数の資源の階層関係を示す情報に存在する場合は、前記対象の資源および該資源の上位または下位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記7乃至10のいずれか一項に記載の判定装置。
(付記12)
前記判定を行う手段は、前記対象の資源が前記複数の資源の階層関係を示す情報に存在しない場合は、前記対象の資源に階層上で最も近い資源および該資源の上位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記7乃至11のいずれか一項に記載の判定装置。
(付記13)
排他制御の対象の資源の所在情報を受け付けると、階層化された複数の資源の階層関係を示す情報を参照して、受け付けた前記所在情報に含まれる、前記対象の資源の上位の資源を特定し、
前記複数の資源それぞれが排他制御されているか否かを示す情報を前記複数の資源それぞれに対応付けて記憶する記憶部を参照して、特定した前記資源に対応付けられた情報を取得し、
取得した前記情報に基づき、前記対象の資源を排他制御の対象とできるか否かの判定を行う、
処理をコンピュータが実行することを特徴とする判定方法。
(付記14)
前記所在情報は、前記対象の資源が格納される共有ディスクの識別情報と、該共有ディスク上のルートディレクトリから対象の資源であるディレクトリまたはファイルまでを示すフルパスとを含む、
ことを特徴とする付記13に記載の判定方法。
(付記15)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記共有ディスクの識別情報を含むディスク識別構造体と、各資源についての要素名、要素種別、排他制御状態、上位の資源へのリンク情報および下位の資源へのリンク情報を含むファイル・ディレクトリ識別構造体とにより表される、
ことを特徴とする付記14に記載の判定方法。
(付記16)
前記複数の資源の階層関係を示す情報および前記複数の資源それぞれが排他制御されているか否かを示す情報は、前記受け付けた排他制御の対象の資源が排他制御の対象とできると判定した場合に、該資源の所在情報に基づいて記憶する、
ことを特徴とする付記13乃至15のいずれか一項に記載の判定方法。
(付記17)
前記対象の資源が前記複数の資源の階層関係を示す情報に存在する場合は、前記対象の資源および該資源の上位または下位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記13乃至16のいずれか一項に記載の判定方法。
(付記18)
前記対象の資源が前記複数の資源の階層関係を示す情報に存在しない場合は、前記対象の資源に階層上で最も近い資源および該資源の上位のいずれの資源も排他制御されていない場合に、前記対象の資源を排他制御の対象とできると判定する、
ことを特徴とする付記13乃至17のいずれか一項に記載の判定方法。

0061

1、1A、1Bバッチ処理サーバ
2バッチ管理サーバ
3ネットワーク
4共有ディスク
5クライアント
6排他制御装置
60排他管理ツリー情報
61命令・要求/応答送受信部
62 命令・要求解釈部
63操作判定部
64排他判定部
65 排他管理ツリー・ロック管理部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • 株式会社日立製作所の「 検索支援システム、及び検索支援方法」が 公開されました。( 2021/09/30)

    【課題】ユーザによる情報検索を容易にする検索支援システム及び検索支援方法を提供する。【解決手段】検索支援システム1は、1又は複数の項目と、その項目の内容を示す情報とを対応づけた検索対象情報を作成するデ... 詳細

  • 株式会社日立製作所の「 画像取得装置及び画像取得方法」が 公開されました。( 2021/09/30)

    【課題】パンチアウト先の運用負荷を低減しつつ、認証が必要なWebページからも画像を収集して商品と商品画像との紐づけ精度を向上させる。【解決手段】画像取得装置は、商品を特定する商品特定情報と、商品につい... 詳細

  • カシオ計算機株式会社の「 情報処理装置、表示方法、及びプログラム」が 公開されました。( 2021/09/30)

    【課題】入力された語句と該語句に関する詳細情報とを表示する情報処理装置において、現在表示されている語句と以前に表示されていた語句との対応関係を把握しやすくする。【解決手段】情報処理装置1は、入力情報に... 詳細

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ