Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5458615B2 - Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program - Google Patents
[go: Go Back, main page]

JP5458615B2 - Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program - Google Patents

Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program Download PDF

Info

Publication number
JP5458615B2
JP5458615B2 JP2009064870A JP2009064870A JP5458615B2 JP 5458615 B2 JP5458615 B2 JP 5458615B2 JP 2009064870 A JP2009064870 A JP 2009064870A JP 2009064870 A JP2009064870 A JP 2009064870A JP 5458615 B2 JP5458615 B2 JP 5458615B2
Authority
JP
Japan
Prior art keywords
processing
online
batch
state
unit
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
JP2009064870A
Other languages
Japanese (ja)
Other versions
JP2010218268A (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.)
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 JP2009064870A priority Critical patent/JP5458615B2/en
Publication of JP2010218268A publication Critical patent/JP2010218268A/en
Application granted granted Critical
Publication of JP5458615B2 publication Critical patent/JP5458615B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、共通のデータベースを利用するオンライン処理とバッチ処理とを並行して処理する並行処理システムに関し、特にオンライン処理とバッチ処理との間のリソースの競合の防止に関する。   The present invention relates to a parallel processing system that processes online processing and batch processing using a common database in parallel, and particularly relates to prevention of resource contention between online processing and batch processing.

販売、物流などに関する各種業務システムは、かつては店舗の営業中である昼間にオンラインで動作し、オンラインで処理できない一括処理を夜間にオンライン処理を停止させてバッチ処理で行っていた。しかしながら、店舗が24時間営業となり、さらにインターネット販売なども普及したのに伴い、バッチ処理を行うためにオンライン処理を停止させる時間帯を設けることが困難になっている。そこで、オンライン処理とバッチ処理とを並行して動作させることが可能な並行処理システムが求められている。   Various business systems related to sales, logistics, etc. used to operate online in the daytime when the store is in operation, and batch processing that cannot be processed online is stopped at night and batch processing is performed. However, as stores have been open 24 hours and Internet sales have become widespread, it has become difficult to provide a time slot for stopping online processing in order to perform batch processing. Thus, there is a need for a parallel processing system that can operate online processing and batch processing in parallel.

図10は、特許文献1〜2に記載された、オンライン処理とバッチ処理とを並行して動作させることが可能な並行処理システム701の構成を示す説明図である。並行処理システム701は、異なる2台のコンピュータ装置であるオンライン処理装置710とバッチ処理装置720、およびこれらの装置によって共有される大容量記憶装置であるデータベースサーバ730とが相互に接続されて構成される。   FIG. 10 is an explanatory diagram showing a configuration of a parallel processing system 701 described in Patent Documents 1 and 2 and capable of operating online processing and batch processing in parallel. The parallel processing system 701 includes an online processing device 710 and a batch processing device 720 that are two different computer devices, and a database server 730 that is a mass storage device shared by these devices. The

オンライン処理装置710はさらに、通信回線を通じてユーザが処理要求を送信するオンライン利用者端末740と接続されている。バッチ処理装置720は、通信回線を通じてバッチファイルを送信するバッチ利用者装置750と接続されている。オンライン利用者端末740およびバッチ利用者装置750は、いずれもコンピュータ装置である。   The online processing device 710 is further connected to an online user terminal 740 through which a user transmits a processing request through a communication line. The batch processing device 720 is connected to a batch user device 750 that transmits a batch file through a communication line. Both the online user terminal 740 and the batch user device 750 are computer devices.

オンライン処理装置710は、コンピュータプログラムを実行する主体であるCPU(Central Processing Unit)711と、通信インターフェイス712とを備える。CPU711では、オンライン処理部711aが、コンピュータプログラムとして実行される。   The online processing device 710 includes a CPU (Central Processing Unit) 711 that is a main body that executes a computer program, and a communication interface 712. In the CPU 711, the online processing unit 711a is executed as a computer program.

バッチ処理装置720は、コンピュータプログラムを実行する主体であるCPU721と、データを一時的に記憶するRAM(Random Access Memory)722と、通信インターフェイス723とを備える。CPU721では、バッチ処理部721aと、バッチ制御部721bと、監視部721cとが、コンピュータプログラムとして実行される。RAM722には、パラメータ722aが記憶される。   The batch processing device 720 includes a CPU 721 that is a main body that executes a computer program, a RAM (Random Access Memory) 722 that temporarily stores data, and a communication interface 723. In the CPU 721, a batch processing unit 721a, a batch control unit 721b, and a monitoring unit 721c are executed as computer programs. The RAM 722 stores a parameter 722a.

データベースサーバ730は、オンライン処理装置710とバッチ処理装置720とが共通して利用し、処理を行う対象である共有データベース731を有する。   The database server 730 includes a shared database 731 that is used in common by the online processing device 710 and the batch processing device 720 and is a target for processing.

監視装置721cは、オンライン処理部711aの共有データベース731に対する動作を監視し、その負荷状況や応答時間によってバッチ制御部721bに制御情報を送る。バッチ制御部721bは、静的もしくは動的に決定付けられたパラメータ722aに基づいて、バッチ処理のコミット間隔を調整するなど、バッチ処理部721aの共有データベース731に対する動作を制限させるよう制御する。   The monitoring device 721c monitors the operation of the online processing unit 711a with respect to the shared database 731 and sends control information to the batch control unit 721b according to the load status and response time. The batch control unit 721b performs control to limit the operation of the batch processing unit 721a with respect to the shared database 731 such as adjusting the commit interval of batch processing based on the parameter 722a determined statically or dynamically.

並行処理システムについて、これ以外には次の技術文献がある。特許文献3には、バッチ処理が開始されたことをオンライン処理装置側に通知し、利用者にオンライン処理を強制的に終了するよう促す画面を表示し、バッチ処理の動作を速やかに開始できるようにするという技術が記載されている。特許文献4には、クライアントからの指示があった際に、先に非同期的に(バッチ処理で)実行した結果があればそれを返すという業務処理システムが記載されている。   In addition to this, there are the following technical documents on parallel processing systems. Patent Document 3 notifies the online processing device that batch processing has started, displays a screen that prompts the user to forcibly end online processing, and allows batch processing operations to be started quickly. The technology of making is described. Patent Document 4 describes a business processing system in which when there is an instruction from a client, if there is a result executed asynchronously (by batch processing), it is returned.

特許文献5には、仮想計算機で競合リソースのロック待ち状態になったことを仮想計算機モニタに通知し、優先度の高い処理に該リソースを明け渡すという技術が記載されている。そして特許文献6には、オフライン処理(バッチ処理)を実行可能な時間を調整してオンライン処理との競合を少なくするという技術が記載されている。   Patent Document 5 describes a technique in which a virtual computer is notified to a virtual machine monitor that a competing resource has been locked, and the resource is handed over to a process with high priority. Patent Document 6 describes a technique of adjusting the time during which offline processing (batch processing) can be performed to reduce competition with online processing.

特開2003−085133号公報JP 2003-085133 A 特開2004−280457号公報JP 2004-280457 A 特開2001−014274号公報JP 2001-014274 A 特開2000−207358号公報JP 2000-207358 A 特開平01−246636号公報Japanese Patent Laid-Open No. 01-246636 特開平10−247158号公報JP-A-10-247158

オンライン処理とバッチ処理とが共通の共有データベースを利用する並行処理システムでは、バッチ処理が共有データベースを更新することに伴って該共有データベースを排他処理すると、オンライン処理が妨げられ、その結果としてオンライン処理のレスポンスの遅延が発生する。   In a parallel processing system in which online processing and batch processing use a common shared database, when batch processing exclusively processes the shared database as the shared database is updated, online processing is hindered, resulting in online processing. Response delay occurs.

そのため、時間帯に応じてバッチ処理のコミット間隔を調整することが一般的に行われていた。より具体的には、オンライン処理の発生する頻度の高い時間帯にはバッチ処理のコミット間隔を短くして、これによってオンライン処理が待たされる時間を短くしてレスポンス悪化の影響を抑制する。逆に、深夜などオンライン処理の発生する頻度の低い時間帯にはコミット間隔を長くして、バッチ処理を高速に処理することを可能にする。   Therefore, in general, the commit interval of batch processing is adjusted according to the time zone. More specifically, the batch processing commit interval is shortened in a time zone in which online processing occurs frequently, thereby shortening the time for which online processing is waited for, thereby suppressing the influence of response deterioration. Conversely, in a time zone where online processing occurs less frequently, such as late at night, the commit interval is increased to enable batch processing to be performed at high speed.

図10に記載した(特許文献1〜2に記載の)並行処理システム701では、これをさらに進めて、オンライン処理に係る負荷状態を監視してバッチ処理の動作を制限した。しかしながら、これらの技術のように時間帯や負荷状態などに応じてバッチ処理の動作を制限するという手法では、バッチ処理のコミット間隔を短くしたとしても、その間のオンライン処理は確実に待機させられる。このため、突発的に発生するオンライン処理でレスポンスの遅延を回避するには有効ではない。   In the parallel processing system 701 described in FIG. 10 (described in Patent Documents 1 and 2), this is further advanced, the load state related to online processing is monitored, and the operation of batch processing is limited. However, in the technique of limiting the operation of the batch processing according to the time zone or the load state as in these techniques, even if the commit interval of the batch processing is shortened, the online processing during that time is surely kept on standby. For this reason, it is not effective in avoiding a response delay in an unexpected online process.

また、特許文献3に記載の技術では、オンライン処理装置側で利用者にオンライン処理を強制的に終了するよう促すメッセージを出しても、そのことをバッチ処理装置側では利用者が都度確認することはできないので、オンライン処理を優先的に処理させたい場合には有効ではない。特許文献4に記載の技術では、先に非同期的に(バッチ処理で)実行した結果があればそれを返すということであるので、オンライン処理を優先的に処理させるというものではない。その他の特許文献5〜6にも、オンライン処理とバッチ処理との間のリソースの競合に起因する上記の問題について解決しうる技術は記載されていない。   Further, in the technique described in Patent Document 3, even if a message prompting the user to forcibly end online processing is issued on the online processing device side, the user confirms this on the batch processing device side each time. It is not effective when you want to process online processing with priority. In the technique described in Patent Document 4, if there is a result of asynchronous execution (by batch processing), it is returned. Therefore, online processing is not preferentially processed. Other patent documents 5 to 6 do not describe a technique that can solve the above-described problem caused by resource competition between online processing and batch processing.

本発明の目的は、オンライン処理とバッチ処理との間で同一リソースへの処理が競合する場合に、オンライン処理の遅延を抑制することを可能とする並行処理システム、オンライン処理装置、バッチ処理装置、並行処理方法、および並行処理プログラムを提供することにある。   An object of the present invention is to provide a parallel processing system, an online processing device, a batch processing device, and a parallel processing system that can suppress delays in online processing when processing to the same resource competes between online processing and batch processing. To provide a parallel processing method and a parallel processing program.

上記目的を達成するため、本発明に係る並行処理システムは、オンライン利用者端末からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、オンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムであって、オンライン処理装置が、共有データベースに対してオンライン処理を実行するオンライン処理部と、共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する特定のリソースとの組をあらかじめ定義するオンライン処理定義を記憶している記憶手段と、オンライン処理部の処理状態がオンライン処理定義に定義されたIN状態に遷移したらバッチ処理装置にIN通知を発信するオンライン処理状態通知部とを有し、バッチ処理装置が、共有データベースに対してバッチ処理を実行するバッチ処理部と、IN通知を受信するオンライン処理状態受信部と、IN通知を受信したことに反応して、オンライン処理部が利用する可能性のある特定のリソースを利用する処理の実行をバッチ処理部に一時停止させるバッチ処理調整部とを有すると共に、バッチ処理装置のバッチ処理調整部が、IN通知の対象となるリソースの一覧であるオンライン処理実行中リストを作成する実行中リスト作成手段と、オンライン処理実行中リストにあるリソースを利用する処理をバッチファイルから抽出するリソース抽出手段と、抽出された処理の実行をバッチ処理部に一時停止させる処理一時停止手段とを有することを特徴とする。 In order to achieve the above object, a parallel processing system according to the present invention receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and a batch file given in advance. A parallel processing system configured by interconnecting a batch processing apparatus that performs batch processing based on defined contents and a database server having a shared database that is a target for online processing and batch processing, An online processing unit that performs online processing on a shared database, a processing state corresponding to an IN state that may use a specific resource of the shared database, and a specific resource corresponding to the processing state Memorize online processing definition that predefines the tuple That storage means, processing state of the line processing unit and a line processing status notification unit for transmitting a IN notification batch processor After transition to the IN state defined on-line processing definition, batch processing apparatus, shared database In response to receiving the IN notification, a specific resource that the online processing unit may use in response to receiving the IN notification, both the and a batch processing arrangement for temporarily stopping the execution of a process utilized to batch processing unit, the batch processing arrangements of a batch processing apparatus, the line processing performed in the list is a listing of the resources of iN notifications From the batch file, create the running list creation means and the process that uses the resources in the online process running list. And having a resource extraction means for exiting the execution of the extracted processed batch processing unit and a processing pause means for pausing.

上記目的を達成するため、本発明に係るオンライン処理装置は、オンライン利用者端末からユーザによる処理要求を受信して処理要求に基づくオンライン処理を行うオンライン処理装置であって、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置およびオンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバと相互に接続されてデータ交換を行う通信インターフェイスと、共有データベースに対してオンライン処理を実行するオンライン処理部と、共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する特定のリソースとの組をあらかじめ定義するオンライン処理定義を記憶している記憶手段と、オンライン処理部の処理状態がオンライン処理定義に定義されたIN状態に遷移したらバッチ処理装置にIN通知を発信するオンライン処理状態通知部とを有することを特徴とする。 In order to achieve the above object, an online processing apparatus according to the present invention is an online processing apparatus that receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and is a batch file given in advance. A batch processing device that performs batch processing based on the contents defined in the above, a communication interface that is interconnected with a database server that has a shared database that is the target of online processing and batch processing, and a shared database Online processing section that executes online processing for the online processing definition that defines in advance a set of a processing state corresponding to an IN state in which a specific resource of the shared database may be used and a specific resource corresponding thereto Means for storing , And having a line processing status notification unit for processing state of the online processing section originates a IN notification batch processor After transition to the IN state defined on-line process definition.

上記目的を達成するため、本発明に係るバッチ処理装置は、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置であって、オンライン利用者端末からユーザによる処理要求を受信して処理要求に基づくオンライン処理を行うオンライン処理装置およびオンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバと相互に接続されてデータ交換を行う通信インターフェイスと、共有データベースに対してバッチ処理を実行するバッチ処理部と、オンライン処理装置からIN通知を受信するオンライン処理状態受信部と、IN通知を受信したことに反応して、オンライン処理部が利用する可能性のある特定のリソースを利用する処理の実行をバッチ処理部に一時停止させるバッチ処理調整部とを有すると共に、バッチ処理調整部が、IN通知の対象となるリソースの一覧であるオンライン処理実行中リストを作成する実行中リスト作成手段と、オンライン処理実行中リストにあるリソースを利用する処理をバッチファイルから抽出するリソース抽出手段と、抽出された処理の実行をバッチ処理部に一時停止させる処理一時停止手段とを有することを特徴とする。 In order to achieve the above object, a batch processing apparatus according to the present invention is a batch processing apparatus that performs batch processing based on contents defined in a batch file given in advance, and a processing request by a user from an online user terminal A communication interface that exchanges data with an online processing device that performs online processing based on a processing request and a database server that has a shared database that is a target for online processing and batch processing, and a shared database A batch processing unit that executes batch processing, an online processing status receiving unit that receives an IN notification from an online processing device, and a specification that the online processing unit may use in response to receiving the IN notification Batch processing unit that executes processing that uses resources Together and a batch processing arrangement for temporarily stopping, batch processing arrangement comprises a running list creating means for creating on-line processing performed in the list is a list of resources to be IN notification, on-line processing executed in the list It is characterized by having resource extraction means for extracting a process that uses a certain resource from a batch file, and process pause means for causing the batch processing section to pause execution of the extracted process .

上記目的を達成するため、本発明に係る並行処理方法は、オンライン利用者端末からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、オンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、オンライン処理とバッチ処理とを並行して処理する方法であって、オンライン処理装置のオンライン処理部が、共有データベースに対してオンライン処理を実行し、オンライン処理装置のオンライン処理状態通知部が、備えられた記憶手段に記憶されている共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する特定のリソースとの組をあらかじめ定義するオンライン処理定義に定義されたIN状態に、オンライン処理部の処理状態が遷移したか否かを判断し、IN状態に遷移したらオンライン処理状態通知部がバッチ処理装置にIN通知を発信し、バッチ処理装置のオンライン処理状態受信部がIN通知を受信し、バッチ処理装置のバッチ処理調整部がIN通知を受信したことに反応して、予め作成してあるIN通知の対象となるリソースの一覧であるオンライン処理実行中リストにあるリソースを利用する処理をバッチファイルから抽出し、当該抽出された処理の実行をバッチ処理を実行するバッチ処理部に一時停止させることを特徴とする。 In order to achieve the above object, a parallel processing method according to the present invention includes an online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and a batch file given in advance. A parallel processing system configured by interconnecting a batch processing apparatus that performs batch processing based on defined contents and a database server having a shared database that is a target of online processing and batch processing, A method of processing online processing and batch processing in parallel, wherein the online processing unit of the online processing device executes online processing on the shared database, and an online processing status notifying unit of the online processing device is provided. Specific resources of the shared database stored in the storage means Scan the IN state defined on-line process definition set to predefine the specific resource corresponding to the processing state corresponding to IN state that might be utilized, the processing status of the line processing unit has transitioned The online processing status notification unit sends an IN notification to the batch processing device when the state transits to the IN state, the online processing status reception unit of the batch processing device receives the IN notification, and the batch processing of the batch processing device In response to the reception of the IN notification by the adjustment unit , a process that uses a resource in the online processing execution list that is a list of resources that are targets of the IN notification that has been created in advance is extracted from the batch file, The execution of the extracted process is temporarily stopped by a batch processing unit that executes the batch process.

上記目的を達成するため、本発明に係る並行処理プログラムは、オンライン利用者端末からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、オンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、オンライン処理装置が備えるコンピュータに、共有データベースに対してオンライン処理を実行する手順と、備えられた記憶手段に記憶されている共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する特定のリソースとの組をあらかじめ定義するオンライン処理定義に定義されたIN状態に、オンライン処理の処理状態が遷移したか否かを判断する手順と、IN状態に遷移したらオンライン処理状態通知部がバッチ処理装置にIN通知を発信する手順とを実行させることを特徴とする。 In order to achieve the above object, a parallel processing program according to the present invention receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and a batch file given in advance. A parallel processing system configured by interconnecting a batch processing apparatus that performs batch processing based on defined contents and a database server having a shared database that is a target of online processing and batch processing, Procedures for executing online processing on a shared database in a computer provided in the online processing device, and processing corresponding to an IN state that may use a specific resource of the shared database stored in the provided storage means A pair of a state and a specific resource corresponding to this The IN state defined on-line process definition beforehand defined, the procedure processing state of the online process determines whether the transition, online processing status notification unit upon transition to the IN state the IN notifies the batch processing unit And a procedure for transmitting.

上記目的を達成するため、本発明に係る他の並行処理プログラムは、オンライン利用者端末からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、オンライン処理およびバッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、バッチ処理装置が備えるコンピュータに、バッチファイルに定義された内容に基づいてバッチ処理を行う手順と、オンライン利用者端末からIN通知を受信する手順と、IN通知を受信したことに反応して、予め作成してあるIN通知の対象となるリソースの一覧であるオンライン処理実行中リストにあるリソースを利用する処理をバッチファイルから抽出し、当該抽出された処理の実行をバッチ処理を実行するバッチ処理部に一時停止させる手順とを実行させることを特徴とする。 In order to achieve the above object, another parallel processing program according to the present invention includes an online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and a batch given in advance. There is a parallel processing system in which a batch processing device that performs batch processing based on the contents defined in a file and a database server that has a shared database on which online processing and batch processing are performed are connected to each other. In response to receiving the IN notification, the procedure for performing the batch processing based on the contents defined in the batch file, the procedure for receiving the IN notification from the online user terminal, , is a list of resources to be iN notification you have created in advance online Extracting process using the resources in the down-progress list from a batch file, characterized in that to execute a step of temporarily stopping the execution of the extracted processed batch processing unit for executing a batch process.

本発明は、上述したように、バッチ処理の中でオンライン処理に使用される可能性のあるリソースを使用する処理の実行を一時停止するように構成したので、同一リソースへの処理が競合する場合にもこの競合を回避することができる。これによって、オンライン処理の遅延を抑制することが可能であるという、優れた特徴を持つ並行処理システム、オンライン処理装置、バッチ処理装置、並行処理方法、および並行処理プログラムを提供することができる。   As described above, the present invention is configured to temporarily stop execution of a process using a resource that may be used for online processing in batch processing, so that processing to the same resource competes Even this conflict can be avoided. Accordingly, it is possible to provide a parallel processing system, an online processing device, a batch processing device, a parallel processing method, and a parallel processing program having an excellent feature that online processing delay can be suppressed.

本発明の第1の実施形態に係る並行処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the parallel processing system which concerns on the 1st Embodiment of this invention. 図1で示したバッチ処理リソース定義の定義内容の一例を示す説明図である。It is explanatory drawing which shows an example of the definition content of the batch processing resource definition shown in FIG. 図1で示したオンライン処理定義の定義内容の一例を示す説明図である。It is explanatory drawing which shows an example of the definition content of the online process definition shown in FIG. 図1で示したオンライン処理実行中リストの記録内容の一例を示す説明図である。It is explanatory drawing which shows an example of the recorded content of the online process execution list shown in FIG. 図1で示したオンライン処理状態通知部が実行する処理を表すフローチャートである。It is a flowchart showing the process which the online process state notification part shown in FIG. 1 performs. 図1で示したバッチ処理調整部が実行する処理を表すフローチャートである。It is a flowchart showing the process which the batch process adjustment part shown in FIG. 1 performs. 本発明の第2の実施形態に係る並行処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the parallel processing system which concerns on the 2nd Embodiment of this invention. 本発明の第3の実施形態に係る並行処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the parallel processing system which concerns on the 3rd Embodiment of this invention. 本発明の第4の実施形態に係る並行処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the parallel processing system which concerns on the 4th Embodiment of this invention. 特許文献1〜2に記載された、オンライン処理とバッチ処理とを並行して動作させることが可能な並行処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the parallel processing system which can operate | move an online process and a batch process described in patent documents 1-2 in parallel.

(第1の実施形態)
以下、本発明の第1の実施形態の構成について添付図1に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係る並行処理システム1は、オンライン利用者端末40からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置10と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置20と、オンライン処理およびバッチ処理が行われる対象である共有データベース301を有するデータベースサーバ30とが相互に接続されて構成される並行処理システムである。オンライン処理装置10は、共有データベースに対してオンライン処理を実行するオンライン処理部111と、オンライン処理部が共有データベースの特定のリソースを利用する可能性のあるIN状態に遷移したらバッチ処理装置にIN通知を発信するオンライン処理状態通知部112とを有する。バッチ処理装置20は、共有データベースに対してバッチ処理を実行するバッチ処理部211と、IN通知を受信するオンライン処理状態受信部213と、IN通知を受信したことに反応して、オンライン処理部が利用する可能性のある特定のリソースを利用する処理の実行をバッチ処理部に一時停止させるバッチ処理調整部212とを有する。
(First embodiment)
Hereinafter, the structure of the 1st Embodiment of this invention is demonstrated based on attached FIG.
First, the basic content of the present embodiment will be described, and then more specific content will be described.
The parallel processing system 1 according to the present embodiment is defined in an online processing device 10 that receives a processing request from a user from the online user terminal 40 and performs online processing based on the processing request, and a batch file given in advance. This is a parallel processing system in which a batch processing device 20 that performs batch processing based on contents and a database server 30 having a shared database 301 that is an object on which online processing and batch processing are performed are connected to each other. The online processing device 10 is configured to notify the batch processing device when the online processing unit 111 executes online processing on the shared database, and when the online processing unit transitions to an IN state that may use a specific resource of the shared database. The online processing status notifying unit 112 for transmitting In response to receiving the IN notification, the online processing unit is responsive to the batch processing unit 211 executing batch processing on the shared database, the online processing state receiving unit 213 receiving the IN notification, And a batch processing adjustment unit 212 that causes the batch processing unit to temporarily stop execution of processing using a specific resource that may be used.

また、オンライン処理装置10のオンライン処理状態通知部112に、あらかじめ与えられたIN状態に該当する処理状態とこれに対応する特定のリソースとの組を定義するオンライン処理定義113が付属しており、オンライン処理状態通知部112は、オンライン処理部の処理状態がこのオンライン処理定義に定義されていればバッチ処理装置にIN通知を発信する。   The online processing status notifying unit 112 of the online processing device 10 is provided with an online processing definition 113 that defines a set of a processing state corresponding to a predetermined IN state and a specific resource corresponding thereto, The online processing status notifying unit 112 sends an IN notification to the batch processing device if the processing status of the online processing unit is defined in the online processing definition.

このオンライン処理状態通知部112は、オンライン処理部がIN状態ではない状態であるOUT状態に遷移したらバッチ処理装置にOUT通知を発信する機能を有し、バッチ処理装置20のバッチ処理調整部212は、このOUT通知を受信したことに反応して、一時停止していた特定のリソースを利用する処理の実行をバッチ処理部に再開させる。   The online processing status notification unit 112 has a function of transmitting an OUT notification to the batch processing device when the online processing unit transitions to the OUT state, which is not the IN state. The batch processing adjustment unit 212 of the batch processing device 20 In response to receiving this OUT notification, the batch processing unit is caused to resume execution of the process using the specific resource that has been suspended.

さらにオンライン処理状態通知部112には、時間の経過をカウントするタイマー114が付属している。オンライン処理状態通知部112は、特定のリソースがIN状態に遷移したらタイマーに所定の時間の経過をカウントさせ、所定の時間が経過したら特定のリソースを強制的にIN状態ではない状態に遷移させる。   Furthermore, a timer 114 that counts the passage of time is attached to the online processing state notification unit 112. The online processing state notification unit 112 causes the timer to count the elapse of a predetermined time when the specific resource transitions to the IN state, and forcibly causes the specific resource to transition to the non-IN state when the predetermined time elapses.

また、オンライン処理状態通知部112には、オンライン処理部で発生する各処理状態に与えられるIDごとに数値をカウントするカウンタ115が付属している。オンライン処理状態通知部112は、特定のリソースがIN状態となった時にIDに対応するカウンタに1を加算する。さらにオンライン処理状態通知部112は、特定のリソースがIN状態となった時にIDに対応するカウンタの数値が0である場合にバッチ処理装置20にIN通知を発信し、その後にカウンタに1を加算する。   The online processing state notification unit 112 is attached with a counter 115 that counts a numerical value for each ID given to each processing state generated in the online processing unit. The online processing state notification unit 112 adds 1 to the counter corresponding to the ID when a specific resource is in the IN state. Further, the online processing status notifying unit 112 sends an IN notification to the batch processing device 20 when the numerical value of the counter corresponding to the ID is 0 when a specific resource is in the IN status, and then adds 1 to the counter. To do.

そしてオンライン処理状態通知部112は、特定のリソースがIN状態ではなくなった時にIDに対応するカウンタから1を減算し、カウンタの数値が0になった場合にバッチ処理装置にOUT通知を発信する。バッチ処理装置のバッチ処理調整部212は、OUT通知を受信したことに反応して、一時停止していた特定のリソースを利用する処理の実行をバッチ処理部211に再開させる。   The online processing state notification unit 112 subtracts 1 from the counter corresponding to the ID when the specific resource is not in the IN state, and sends an OUT notification to the batch processing device when the value of the counter becomes 0. In response to receiving the OUT notification, the batch processing adjustment unit 212 of the batch processing apparatus causes the batch processing unit 211 to resume execution of the process that uses the specific resource that has been temporarily stopped.

一方、バッチ処理装置20のバッチ処理調整部212は、IN通知の対象となるリソースの一覧であるオンライン処理実行中リストを作成する実行中リスト作成手段212aと、オンライン処理実行中リストにあるリソースを利用する処理をバッチファイルから抽出するリソース抽出手段212bと、抽出された処理の実行をバッチ処理部に一時停止させる処理一時停止手段212cとを有する。   On the other hand, the batch processing adjustment unit 212 of the batch processing apparatus 20 executes an online processing execution list 212a for generating an online processing execution list, which is a list of resources to be notified of IN, and resources in the online processing execution list. It has resource extraction means 212b for extracting the processing to be used from the batch file, and processing pause means 212c for causing the batch processing section to temporarily stop execution of the extracted processing.

以上の構成を備えることにより、オンライン処理とバッチ処理との間で有効にリソースの競合を回避できる。
以下、これをより詳細に説明する。
By providing the above configuration, resource contention can be effectively avoided between online processing and batch processing.
Hereinafter, this will be described in more detail.

図1は、本発明の第1の実施形態に係る並行処理システム1の構成を示す説明図である。並行処理システム1は、異なる2台のコンピュータ装置であるオンライン処理装置10とバッチ処理装置20、およびこれらの装置によって共有される大容量記憶装置であるデータベースサーバ30とが相互に接続されて構成される。   FIG. 1 is an explanatory diagram showing a configuration of a parallel processing system 1 according to the first embodiment of the present invention. The parallel processing system 1 includes an online processing device 10 and a batch processing device 20 which are two different computer devices, and a database server 30 which is a mass storage device shared by these devices. The

オンライン処理装置10はさらに、通信回線を通じてユーザが処理要求を送信するオンライン利用者端末40と接続されている。バッチ処理装置20は、通信回線を通じてバッチファイルを送信するバッチ利用者装置50と接続されている。オンライン利用者端末40およびバッチ利用者装置50は、いずれもコンピュータ装置であり、またいずれも1台以上何台でもよい。   The online processing device 10 is further connected to an online user terminal 40 through which a user transmits a processing request through a communication line. The batch processing device 20 is connected to a batch user device 50 that transmits a batch file through a communication line. The online user terminal 40 and the batch user device 50 are both computer devices, and any one or more devices may be used.

オンライン処理装置10は、コンピュータプログラムを実行する主体であるCPU101と、CPU101が実行するコンピュータプログラムおよび処理する対象であるデータが記憶されているHDD(Hard Disk Drive)102と、CPU101がHDD102から読み込んだプログラムおよびデータが一時的に記憶されるRAM103と、通信回線を通じて他のコンピュータと通信を行う通信インターフェイス104とを備える。   The online processing apparatus 10 includes a CPU 101 that is a main body that executes a computer program, an HDD (Hard Disk Drive) 102 that stores a computer program that the CPU 101 executes and data to be processed, and the CPU 101 reads from the HDD 102. A RAM 103 that temporarily stores programs and data, and a communication interface 104 that communicates with other computers through a communication line are provided.

CPU101では、オンライン処理部111と、オンライン処理状態通知部112と、タイマー114と、カウンタ115とが、HDD102から読み出されてRAM103に記憶され、コンピュータプログラムとして実行される。さらに、予め定められた定義データであるオンライン処理定義113も、HDD102から読み出されてRAM103に記憶され、オンライン処理状態通知部112が実行中にこれを参照する。   In the CPU 101, an online processing unit 111, an online processing state notification unit 112, a timer 114, and a counter 115 are read from the HDD 102, stored in the RAM 103, and executed as a computer program. Further, the online process definition 113 which is predetermined definition data is also read from the HDD 102 and stored in the RAM 103, and the online process state notification unit 112 refers to this while executing it.

バッチ処理装置20も、オンライン処理装置10と同様に、CPU201と、HDD202と、RAM203と、通信インターフェイス204とを備える。これらの各々の機能は、オンライン処理装置10の同名の各機能部と同一である。   The batch processing device 20 also includes a CPU 201, an HDD 202, a RAM 203, and a communication interface 204, similar to the online processing device 10. Each of these functions is the same as each functional unit having the same name in the online processing apparatus 10.

CPU201では、バッチ処理部211と、バッチ処理調整部212と、オンライン処理状態受信部213とが、HDD202から読み出されてRAM203に記憶され、コンピュータプログラムとして実行される。さらに、予め定められた定義データであるバッチ処理リソース定義214およびバッチファイル215も、HDD202から読み出されてRAM203に記憶され、バッチ処理調整部212が実行中にこれを参照する。オンライン処理実行中リスト216は、バッチ処理調整部212が一時的に作成するデータであるが、これについて詳しくは後述する。   In the CPU 201, a batch processing unit 211, a batch processing adjustment unit 212, and an online processing state receiving unit 213 are read from the HDD 202, stored in the RAM 203, and executed as a computer program. Further, the batch processing resource definition 214 and the batch file 215, which are predetermined definition data, are also read from the HDD 202 and stored in the RAM 203, and the batch processing adjustment unit 212 refers to them during execution. The online process execution list 216 is data temporarily created by the batch process adjustment unit 212, which will be described in detail later.

データベースサーバ30は、オンライン処理装置10とバッチ処理装置20とが共通して利用する共有データベース301を有する。オンライン処理装置10のオンライン処理部111、およびバッチ処理装置20のバッチ処理部211は、各々通信回線を介して共有データベース301にアクセスして、そこに含まれるデータを利用し、各々の処理を行うことができる。   The database server 30 includes a shared database 301 that is used in common by the online processing device 10 and the batch processing device 20. The online processing unit 111 of the online processing device 10 and the batch processing unit 211 of the batch processing device 20 each access the shared database 301 via a communication line and use the data contained therein to perform each processing. be able to.

オンライン処理部111は、オンライン利用者端末40から処理要求を受信し、この処理要求に応じて共有データベース301にアクセスして処理を行い、その結果をオンライン利用者端末40に返す。オンライン処理状態通知部112は、オンライン処理部111の動作状態を監視して、オンライン処理定義113に定義された処理が行われたか否かを監視する。定義された処理が行われた場合は、その旨をバッチ処理装置20のオンライン処理状態受信部213に通知する。   The online processing unit 111 receives a processing request from the online user terminal 40, accesses the shared database 301 in response to the processing request, performs processing, and returns the result to the online user terminal 40. The online processing status notifying unit 112 monitors the operation status of the online processing unit 111 and monitors whether the processing defined in the online processing definition 113 has been performed. When the defined processing is performed, the online processing status reception unit 213 of the batch processing device 20 is notified of that fact.

タイマー114は、オンライン処理状態通知部112からの指示によって動作し、指定された時間が経過したらその旨をオンライン処理状態通知部112に通知する。カウンタ115は、オンライン処理状態通知部112からの指示によって動作し、後述の状態IDごとに数値をカウントする。なお、図1ではタイマー114およびカウンタ115はソフトウェア的に実現されるものとしたが、ハードウェア的に実現されるようにしてもよい。   The timer 114 operates in response to an instruction from the online processing state notification unit 112, and notifies the online processing state notification unit 112 when a specified time has elapsed. The counter 115 operates in accordance with an instruction from the online processing state notification unit 112 and counts a numerical value for each state ID described later. In FIG. 1, the timer 114 and the counter 115 are realized by software, but may be realized by hardware.

一方、バッチ利用者装置50は、端末装置(図示せず)から処理内容を集配してバッチファイル215を作成し、このバッチファイル215をバッチ処理装置20に送信する。バッチ処理装置20は、バッチファイル215に定義された内容に従って共有データベース301にアクセスして処理を行い、その結果をバッチ利用者装置50に返す。なお、バッチ処理の要求元および出力先、そしてそれらにデータを集配信する形式については様々なものが存在するが、それらの形式の違いについては本発明では特に問題としない。   On the other hand, the batch user device 50 collects processing contents from a terminal device (not shown) to create a batch file 215, and transmits the batch file 215 to the batch processing device 20. The batch processing device 20 accesses the shared database 301 in accordance with the contents defined in the batch file 215, performs processing, and returns the result to the batch user device 50. There are various types of request sources and output destinations of batch processing, and formats for collecting and delivering data to them. However, differences in these formats are not particularly problematic in the present invention.

バッチ処理部211は、バッチ利用者装置50からバッチファイル215を受信してHDD202に保存し、この内容に従ってバッチ処理を行う。オンライン処理状態受信部213は、オンライン処理状態通知部112からオンライン処理部111の動作状態についての通知を受ける。   The batch processing unit 211 receives the batch file 215 from the batch user device 50, stores it in the HDD 202, and performs batch processing according to this content. The online processing status reception unit 213 receives a notification about the operating status of the online processing unit 111 from the online processing status notification unit 112.

バッチ処理調整部212は、さらに実行中リスト作成手段212a、リソース抽出手段212b、処理一時停止手段212cといった各機能部を有する。実行中リスト作成手段212aは、オンライン処理状態通知部112から実行中であるという旨の通知を受けたリソースの一覧を、オンライン処理実行中リスト216として作成し、RAM203に一時的に記憶する。リソース抽出手段212bは、バッチファイル215の中から、オンライン処理実行中リスト216にあるリソースを使用する処理を全て抽出する。   The batch process adjustment unit 212 further includes functional units such as a running list creation unit 212a, a resource extraction unit 212b, and a process suspension unit 212c. The in-execution list creating unit 212 a creates a list of resources that have been notified from the online processing state notifying unit 112 as an on-line processing in-execution list 216 and temporarily stores it in the RAM 203. The resource extraction unit 212b extracts all processes that use resources in the online process execution list 216 from the batch file 215.

そして処理一時停止手段212cは、リソース抽出手段212bが抽出した処理を一時的に停止させ、使わない処理だけをバッチ処理部211に実行させる。また、該当するリソースが使用可能になったら、一時停止されていた処理をバッチ処理部211に再開させる機能も有する。   Then, the process suspension unit 212c temporarily stops the process extracted by the resource extraction unit 212b, and causes the batch processing unit 211 to execute only the unused process. In addition, when the corresponding resource becomes available, the batch processing unit 211 has a function of resuming the suspended processing.

図2は、図1で示したバッチ処理リソース定義214の定義内容の一例を示す説明図である。バッチ処理リソース定義214は、各処理に与えられるIDである処理ID214aと、該処理が利用するリソースである要求リソース214bとで定義される。   FIG. 2 is an explanatory diagram showing an example of the definition contents of the batch processing resource definition 214 shown in FIG. The batch process resource definition 214 is defined by a process ID 214a that is an ID given to each process and a request resource 214b that is a resource used by the process.

図3は、図1で示したオンライン処理定義113の定義内容の一例を示す説明図である。オンライン処理定義113は、オンライン処理部111で発生する各処理状態に与えられるIDである状態ID113aと、このうちリソース占有要求可能状態になりえる状態遷移(以後IN遷移という)であるIN遷移113bと、リソース占有要求不可状態に遷移する状態遷移(以後OUT遷移という)であるOUT遷移113cと、これに該当するリソースである要求リソース113dとで定義される。   FIG. 3 is an explanatory diagram showing an example of the definition contents of the online process definition 113 shown in FIG. The online processing definition 113 includes a state ID 113a that is an ID given to each processing state generated in the online processing unit 111, and an IN transition 113b that is a state transition (hereinafter referred to as an IN transition) that can be a resource occupation requestable state. , Defined as an OUT transition 113c that is a state transition (hereinafter referred to as an OUT transition) that makes a transition to a resource occupation request impossible state, and a request resource 113d that is a resource corresponding thereto.

ここでいうIN状態およびOUT状態について、さらに説明する。1つのデータベースはデータを格納する1つ以上のテーブルによって構成される。共有データベース301に対して行われる処理は、オンライン処理とバッチ処理のいずれにおいても、特定のテーブル、もしくはそのテーブルの中の特定の行もしくは列に対して、そこに格納されたデータを操作することによって行われる。ここでいうリソースとは、データベース内の特定のテーブル、もしくはそのテーブルの中の特定の行、列、セルなどの形で表される。   The IN state and OUT state here will be further described. One database is composed of one or more tables that store data. The processing performed on the shared database 301 is to manipulate the data stored in a specific table or a specific row or column in the table in both online processing and batch processing. Is done by. The resource here is expressed in the form of a specific table in the database or a specific row, column, cell, etc. in the table.

以後本明細書では、オンライン利用者端末40のうち1台以上がオンライン処理装置10上で動作させているクライアントセッションが共有リソース(即ち共有データベース301)の占有を要求する可能性がある、言い換えれば共有リソースにアクセスする可能性がある状態をIN状態といい、そうでない状態をOUT状態という。そしてOUT状態からIN状態に遷移することをIN遷移、その逆をOUT遷移という。さらに、共有リソースがIN状態になった旨をオンライン処理状態通知部112がオンライン処理状態受信部213に通知することをIN通知、OUT状態になった旨を通知することをOUT通知という。   Hereinafter, in this specification, a client session in which one or more of the online user terminals 40 are operating on the online processing device 10 may request the occupation of the shared resource (that is, the shared database 301). A state where there is a possibility of accessing the shared resource is referred to as an IN state, and a state other than that is referred to as an OUT state. Transition from the OUT state to the IN state is referred to as IN transition, and the reverse is referred to as OUT transition. Furthermore, notification that the online processing state notification unit 112 notifies the online processing state reception unit 213 that the shared resource is in the IN state is referred to as IN notification, and notification that the shared resource is in the OUT state is referred to as OUT notification.

オンライン処理とバッチ処理とで同一のリソースへの処理が競合すると、前述のような不都合が生じるので、オンライン処理状態通知部112は共有データベース301において特定のリソース(テーブル、行、列、セルなど)がIN状態であるか(IN遷移したか)否かを監視し、IN遷移したならオンライン処理状態受信部213にIN通知を行う。   When online processing and batch processing compete with each other for processing the same resource, the inconvenience as described above occurs. Therefore, the online processing state notification unit 112 has a specific resource (table, row, column, cell, etc.) in the shared database 301. Is in the IN state (whether the IN transition is made). If the IN transition is made, the online processing state receiving unit 213 is notified of the IN.

図4は、図1で示したオンライン処理実行中リスト216の記録内容の一例を示す説明図である。バッチ処理調整部212は、オンライン処理状態通知部112からIN通知を受けると、このIN通知の対象となった状態ID113aと要求リソース113dとをオンライン処理実行中リスト216に記録する。   FIG. 4 is an explanatory diagram showing an example of the recorded contents of the online processing execution list 216 shown in FIG. When the batch processing adjustment unit 212 receives the IN notification from the online processing state notification unit 112, the batch processing adjustment unit 212 records the state ID 113a and the request resource 113d that are the targets of the IN notification in the online processing execution list 216.

図5は、図1で示したオンライン処理状態通知部112が実行する処理を表すフローチャートである。オンライン処理状態通知部112は、オンライン処理部111の動作状態を監視して、オンライン処理定義113に定義されたIN遷移もしくはOUT遷移に該当する処理が行われたか否かを監視し、それに該当する処理が行われた場合に動作を開始する(ステップS201)。   FIG. 5 is a flowchart showing processing executed by the online processing state notification unit 112 shown in FIG. The online processing state notification unit 112 monitors the operation state of the online processing unit 111 to monitor whether or not processing corresponding to the IN transition or OUT transition defined in the online processing definition 113 has been performed, and corresponds to that. When the processing is performed, the operation is started (step S201).

動作を開始するとまず、オンライン処理状態通知部112はID、R、COUNTの各パラメータを定義する(ステップS202)。IDは前述の状態ID113a、Rは要求リソース113dである。COUNTはカウンタ115によって各IDごとに定義されるカウントであり、その初期値は0である。   When the operation is started, first, the online processing state notifying unit 112 defines ID, R, and COUNT parameters (step S202). ID is the aforementioned state ID 113a, and R is the request resource 113d. COUNT is a count defined for each ID by the counter 115, and its initial value is zero.

続いてオンライン処理状態通知部112は、自らの動作開始のきっかけがIN遷移であるかOUT遷移であるかを判断する(ステップS203)。IN遷移であれば、該IDにおいて最初のIN遷移であるか否か、言い換えればIDに対応するCOUNTが0であるか否かを判断する(ステップS204)。   Subsequently, the online processing state notification unit 112 determines whether the trigger for starting its own operation is an IN transition or an OUT transition (step S203). If it is an IN transition, it is determined whether or not the ID is the first IN transition, in other words, whether or not COUNT corresponding to the ID is 0 (step S204).

該IDにおいて最初のIN遷移であれば(ステップS204:YES)、Rに該当するリソースが占有要求可能状態であるので、該当するIDおよびRがIN遷移したという旨をバッチ処理装置20のオンライン処理状態受信部213に通知して、即ちIN通知をして(ステップS205)、IDに対応するCOUNTに1を加算する(ステップS206)。ステップS204で、該IDにおいて最初のIN遷移でなければ(ステップS204:NO)、そのままステップS206に進んでCOUNTの1加算を実行する。   If the ID is the first IN transition (step S204: YES), since the resource corresponding to R is in the exclusive request enabled state, the online processing of the batch processing apparatus 20 indicates that the corresponding ID and R have made the IN transition. The status receiving unit 213 is notified, that is, notified of IN (step S205), and 1 is added to COUNT corresponding to the ID (step S206). If it is determined in step S204 that the ID is not the first IN transition (step S204: NO), the process proceeds to step S206 and 1 is added to COUNT.

同時期にオンライン利用者端末40から複数のオンライン処理要求が発生したことにより、既にIN遷移しているリソースに対して再びIN通知を行うことは無意味なことであるが、この動作によって無駄なIN通知が発生することを防ぐことができる。   Since a plurality of online processing requests are generated from the online user terminal 40 at the same time, it is meaningless to perform IN notification again for resources that have already made IN transition, but this operation is useless. It is possible to prevent the occurrence of IN notification.

また、オンライン処理において、通常の状態遷移を伴わずに更新処理を中断する場合もありうるので、ステップS206でCOUNTを1を加算した後、オンライン処理状態通知部112はタイマー114をセットして所定の時間が経過したらRに該当するリソースを強制的にOUT遷移させ(ステップS207〜209)、当該リソースをIN状態から強制的に抜けさせて処理を終了する。ここでいう所定の時間とは、たとえば数分〜十数分程度の、一般的にウェブ上の処理などで「タイムアウト」とされる時間である。   In online processing, the update processing may be interrupted without causing a normal state transition. Therefore, after adding COUNT to 1 in step S206, the online processing status notifying unit 112 sets a timer 114 and sets a predetermined value. When the time elapses, the resource corresponding to R is forcibly shifted to OUT (steps S207 to S209), the resource is forcibly removed from the IN state, and the process is terminated. The predetermined time referred to here is a time that is generally “timed out” in processing on the web or the like of, for example, about several minutes to several tens of minutes.

自らの動作開始のきっかけがOUT遷移であれば(ステップS204:NO)、オンライン処理状態通知部112はIDに対応するCOUNTに1を減算し(ステップS210)、これで該COUNTが0になったか、即ちIDに対応するRに該当するリソースがOUT状態になったか否かを判断し(ステップS211)、OUT状態になったなら該当するIDおよびRがOUT状態になったという旨をバッチ処理装置20のオンライン処理状態受信部213に通知して、即ちOUT通知をして(ステップS212)処理を終了する。OUT状態になっていないなら(ステップS211:NO)そのまま処理を終了する。   If the trigger for starting its own operation is the OUT transition (step S204: NO), the online processing status notifying unit 112 subtracts 1 from COUNT corresponding to the ID (step S210), and whether this COUNT has become 0? That is, it is determined whether or not the resource corresponding to R corresponding to the ID is in the OUT state (step S211). If the resource is in the OUT state, the batch processing apparatus indicates that the corresponding ID and R are in the OUT state. 20 online processing status reception unit 213 is notified, that is, OUT notification is made (step S212), and the process is terminated. If it is not in the OUT state (step S211: NO), the process is terminated as it is.

図5の処理を終了した後も、ID、R、COUNTの各パラメータはリセットされず、各々の値は次回処理まで保持される。   Even after the processing of FIG. 5 is completed, the parameters of ID, R, and COUNT are not reset, and each value is retained until the next processing.

図6は、図1で示したバッチ処理調整部212が実行する処理を表すフローチャートである。バッチ処理調整部212は、オンライン処理状態通知部112からのIN通知もしくはOUT通知を受けることによって動作を開始する(ステップS301)。動作を開始するとまず、実行中リスト作成手段212aはID、Rの各パラメータを定義する(ステップS302)。ID、Rは、いずれもオンライン処理状態通知部112から通知された前述のパラメータである。   FIG. 6 is a flowchart showing processing executed by the batch processing adjustment unit 212 shown in FIG. The batch processing adjustment unit 212 starts the operation upon receiving an IN notification or an OUT notification from the online processing state notification unit 112 (step S301). When the operation is started, the in-execution list creation unit 212a first defines ID and R parameters (step S302). ID and R are the above-described parameters notified from the online processing state notification unit 112.

続いて実行中リスト作成手段212aは、自らの動作開始のきっかけがIN通知であるかOUT通知であるかを判断し、IN通知であれば(ステップS303:YES)該当するIDおよびRをオンライン処理実行中リスト216に登録し(ステップS304)、OUT通知であれば(ステップS303:NO)該当するIDおよびRをオンライン処理実行中リスト216から削除する(ステップS305)。   Subsequently, the in-execution list creation unit 212a determines whether the start of its own operation is an IN notification or an OUT notification, and if it is an IN notification (step S303: YES), the corresponding ID and R are processed online. It is registered in the executing list 216 (step S304), and if it is an OUT notification (step S303: NO), the corresponding ID and R are deleted from the online processing executing list 216 (step S305).

ステップS304およびS305のオンライン処理実行中リスト216に係る処理の後、リソース抽出手段212bはオンライン処理実行中リスト216にある要求リソースを全て抽出する(ステップS306)。抽出された要求リソースの一覧をRLISTとする。そしてリソース抽出手段212bは、バッチファイル215に記載されているバッチ処理のうち、バッチ処理リソース定義214を参照しつつ、RLISTにあるリソースと競合するバッチ処理のIDを特定する(ステップS307)。   After the processing related to the online processing execution list 216 in steps S304 and S305, the resource extraction unit 212b extracts all the requested resources in the online processing execution list 216 (step S306). Let RLIST be a list of the extracted request resources. Then, the resource extraction unit 212b specifies the ID of the batch process that competes with the resource in the RLIST while referring to the batch process resource definition 214 among the batch processes described in the batch file 215 (step S307).

処理一時停止手段212cは、自らの動作開始のきっかけがIN通知であるかOUT通知であるかを再び判断し、IN通知であれば(ステップS308:YES)ステップS307で特定された要求リソースと競合する全てのバッチ処理をバッチ処理部211に一時停止させ(ステップS309)、OUT通知であれば(ステップS308:NO)一時停止していた全てのバッチ処理をバッチ処理部211に再開させる(ステップS310)。   The processing suspension unit 212c determines again whether the trigger for starting its operation is an IN notification or an OUT notification, and if it is an IN notification (step S308: YES), it competes with the requested resource specified in step S307. All batch processes to be performed are temporarily stopped by the batch processing unit 211 (step S309), and if it is an OUT notification (step S308: NO), all batch processes that have been temporarily stopped are restarted by the batch processing unit 211 (step S310). ).

(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本発明に係るディスクアレイ装置の起動方法は、オンライン利用者端末40からユーザによる処理要求を受信し、処理要求に基づいてオンライン処理を行うオンライン処理装置10と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置20と、オンライン処理およびバッチ処理が行われる対象である共有データベース301を有するデータベースサーバ30とが相互に接続されて構成される並行処理システムにあって、オンライン処理とバッチ処理とを並行して処理する方法である。まずオンライン処理装置10のオンライン処理部111が、共有データベース301に対してオンライン処理を実行し、オンライン処理状態通知部112が、オンライン処理部が共有データベースの特定のリソースを利用する可能性のあるIN状態に遷移したか否かを判断する(図5:ステップS201)。IN状態に遷移したらオンライン処理状態通知部213がバッチ処理装置20にIN通知を発信し(図5:ステップS205)、バッチ処理装置20のオンライン処理状態受信部213がIN通知を受信し(図6:ステップS301)、バッチ処理装置20のバッチ処理調整部212がIN通知を受信したことに反応して、オンライン処理部111が利用する可能性のある特定のリソースを利用する処理の実行をバッチ処理を実行するバッチ処理部211に一時停止させる(図6:ステップS308)。
(Overall operation of the first embodiment)
Next, the overall operation of the above embodiment will be described. The disk array apparatus activation method according to the present invention is defined in an online processing apparatus 10 that receives a processing request from a user from the online user terminal 40 and performs online processing based on the processing request, and a batch file given in advance. A parallel processing system in which a batch processing device 20 that performs batch processing based on the contents and a database server 30 having a shared database 301 that is a target for online processing and batch processing are connected to each other. In this method, online processing and batch processing are performed in parallel. First, the online processing unit 111 of the online processing apparatus 10 executes online processing on the shared database 301, and the online processing state notification unit 112 may cause the online processing unit to use a specific resource of the shared database. It is determined whether or not the state has been changed (FIG. 5: Step S201). When the state transitions to the IN state, the online processing state notification unit 213 transmits an IN notification to the batch processing device 20 (FIG. 5: Step S205), and the online processing state reception unit 213 of the batch processing device 20 receives the IN notification (FIG. 6). : Step S301), in response to the batch processing adjustment unit 212 of the batch processing apparatus 20 receiving the IN notification, the batch processing is executed to use the specific resource that the online processing unit 111 may use. Is temporarily stopped by the batch processing unit 211 (FIG. 6: step S308).

ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行する主体であるオンライン処理装置10およびバッチ処理装置20に実行させるようにしてもよい。
この構成および動作により、本実施形態は以下のような効果を奏する。
Here, each of the above-described operation steps may be programmed to be executable by a computer, and these may be executed by the online processing device 10 and the batch processing device 20 which are the main body that directly executes each of the steps.
With this configuration and operation, the present embodiment has the following effects.

本実施形態では、オンライン処理装置10が、オンライン処理における画面遷移を監視し、データベース内の情報を更新する可能性がある状態に遷移した場合にそのことをバッチ処理装置20に通知し、バッチ処理装置20はその通知を受けてバッチ処理の中でオンライン処理と競合する可能性のある処理を一時停止させる構成とした。このことによって、オンライン処理装置10は更新処理を待機することなく処理を行えるようになり、リソースの競合によるオンライン処理のレスポンス悪化を回避することができる。しかも、オンライン処理装置10がデータベースサーバ30にアクセスするよりも前の段階で処理を行うので、より有効にリソースの競合を回避することができる。   In the present embodiment, the online processing device 10 monitors screen transitions in online processing, and notifies the batch processing device 20 when it changes to a state where information in the database may be updated. In response to the notification, the apparatus 20 is configured to temporarily stop processing that may compete with online processing in batch processing. As a result, the online processing apparatus 10 can perform the processing without waiting for the update processing, and the response deterioration of the online processing due to resource contention can be avoided. Moreover, since the processing is performed before the online processing apparatus 10 accesses the database server 30, contention for resources can be avoided more effectively.

また本実施形態では、バッチ処理装置20で、バッチ処理のコミット間隔がN秒とすると、オンライン処理のリソース占有要求可能状態に遷移してから実際のリソース保持要求が発生するまでの間隔がN秒より長い場合にも、バッチ処理が共有リソースを保持することによる影響を受けることなくオンライン処理を実行することができる。   Further, in this embodiment, when the batch processing commit interval of the batch processing apparatus 20 is N seconds, the interval from the transition to the online processing resource occupancy request enabled state to the occurrence of the actual resource holding request is N seconds. Even longer, online processing can be performed without being affected by batch processing holding shared resources.

さらに、本実施形態では、オンライン処理装置10を複数台のコンピュータ装置で構成する場合であっても、該コンピュータ装置の各々にオンライン処理状態通知部112を追加するだけでよいので、そのような場合にも容易に対応でき、上記の効果を同様に得ることができる。オンライン処理状態通知部112はプログラムであるので、特に新規のハードウェアなどを必要とはしない。   Furthermore, in this embodiment, even when the online processing device 10 is configured by a plurality of computer devices, it is only necessary to add the online processing status notification unit 112 to each of the computer devices. The above effects can be obtained in the same manner. Since the online processing status notification unit 112 is a program, no new hardware or the like is required.

(第2の実施形態)
図7は、本発明の第2の実施形態に係る並行処理システム401の構成を示す説明図である。並行処理システム401は、原則として第1の実施形態に係る並行処理システム1の構成と同一であるが、図1で示したオンライン処理装置10と同一のコンピュータ装置10a〜10nが複数台存在するのに加えて、これらの複数台のオンライン処理装置にオンライン利用者端末40から要求されたオンライン処理を割り振る負荷分散装置440が存在する。
(Second Embodiment)
FIG. 7 is an explanatory diagram showing a configuration of a parallel processing system 401 according to the second embodiment of the present invention. The parallel processing system 401 is basically the same as the configuration of the parallel processing system 1 according to the first embodiment, but there are a plurality of computer devices 10a to 10n that are the same as the online processing device 10 shown in FIG. In addition, there is a load balancer 440 that allocates online processing requested by the online user terminal 40 to the plurality of online processing devices.

負荷分散装置440は、図1で示したオンライン処理装置10と同様のコンピュータ装置であり、CPU401と、HDD402と、RAM403と、通信インターフェイス404とを備える。これらの各々の機能は、図1で示したオンライン処理装置10の同名の各機能部と同一である。   The load distribution device 440 is a computer device similar to the online processing device 10 illustrated in FIG. 1, and includes a CPU 401, an HDD 402, a RAM 403, and a communication interface 404. Each of these functions is the same as each functional part having the same name of the online processing apparatus 10 shown in FIG.

CPU401では、負荷分散処理部411と、オンライン処理状態通知部112と、タイマー114と、カウンタ115とが、HDD102から読み出されてRAM103に記憶され、コンピュータプログラムとして実行される。さらに、オンライン処理定義113も、HDD102から読み出されてRAM103に記憶される。   In the CPU 401, a load distribution processing unit 411, an online processing state notification unit 112, a timer 114, and a counter 115 are read from the HDD 102, stored in the RAM 103, and executed as a computer program. Further, the online processing definition 113 is also read from the HDD 102 and stored in the RAM 103.

負荷分散処理部411は、コンピュータ装置10a〜10nにオンライン利用者端末40から要求されたオンライン処理を割り振る処理を行う。これ以外の各動作部は、図1で示したオンライン処理装置10の同名・同参照番号の各動作部と同一の動作を行う。   The load distribution processing unit 411 performs processing for allocating online processing requested from the online user terminal 40 to the computer devices 10a to 10n. The other operation units perform the same operations as the operation units having the same names and reference numbers of the online processing apparatus 10 shown in FIG.

オンライン処理は1台のみのコンピュータ装置ではなく、複数台のコンピュータ装置に処理を分散するという構成になっている場合も多くあるが、そのような場合にはそれら複数台のオンライン処理装置の各々にオンライン処理の状態遷移を監視および通知する機能を持たせなくても、負荷分散装置440にその機能を持たせれば、前述の第1の実施形態と同一の動作を行うことができ、また同一の効果を得ることができる。   In many cases, the online processing is configured to distribute the processing to a plurality of computer devices instead of only one computer device. In such a case, each of the plurality of online processing devices is provided. Even if the function of monitoring and notifying the status transition of the online processing is not provided, if the load distribution device 440 has the function, the same operation as that of the first embodiment can be performed, and the same operation can be performed. An effect can be obtained.

(第3の実施形態)
図8は、本発明の第3の実施形態に係る並行処理システム501の構成を示す説明図である。並行処理システム501は、第1の実施形態に係る並行処理システム1の構成で、データベースサーバ30に替えて外部サービス550に接続するようにした以外は、図1に示した並行処理システム1と同一の構成である。
(Third embodiment)
FIG. 8 is an explanatory diagram showing the configuration of a parallel processing system 501 according to the third embodiment of the present invention. The parallel processing system 501 is the same as the parallel processing system 1 shown in FIG. 1 except that the parallel processing system 501 has the configuration of the parallel processing system 1 according to the first embodiment and is connected to the external service 550 instead of the database server 30. It is the composition.

前述した第1の実施形態では、オンライン処理装置10とバッチ処理装置20との間でオンライン処理の処理状態を監視して、その処理状態に応じてバッチ処理を調整する構成であるので、データベースサーバ30には同実施形態のために新たに付加される構成は特にない。そのため、データベースサーバ30をオンライン処理装置10およびバッチ処理装置20とは別の環境やベンダによって提供される外部サービス550に置き換えることも可能である。もちろん、これによって得られる効果も前述の第1の実施形態と同一である。   In the first embodiment described above, the processing status of online processing is monitored between the online processing device 10 and the batch processing device 20, and the batch processing is adjusted according to the processing status. No special arrangement is added to 30 for the same embodiment. Therefore, it is possible to replace the database server 30 with an external service 550 provided by a different environment or vendor from the online processing device 10 and the batch processing device 20. Of course, the effect obtained by this is the same as that of the first embodiment.

(第4の実施形態)
図9は、本発明の第4の実施形態に係る並行処理システム601の構成を示す説明図である。並行処理システム601は、前述した第1の実施形態におけるオンライン処理装置10とバッチ処理装置20が、各々オンライン処理装置610とバッチ処理装置620に置き換わっている以外は、図1に示した並行処理システム1と同一の構成である。
(Fourth embodiment)
FIG. 9 is an explanatory diagram showing the configuration of a parallel processing system 601 according to the fourth embodiment of the present invention. The parallel processing system 601 is the same as the parallel processing system shown in FIG. 1 except that the online processing device 10 and the batch processing device 20 in the first embodiment described above are replaced with the online processing device 610 and the batch processing device 620, respectively. 1 is the same configuration.

オンライン処理装置610は、図1に示したオンライン処理装置10の構成に加えて、新たにオンライン処理解析部616がCPU101でコンピュータプログラムとして実行される。バッチ処理装置620は、図1に示したバッチ処理装置20の構成に加えて、新たにバッチ処理解析部627がCPU201でコンピュータプログラムとして実行される。この点以外は、オンライン処理装置610およびバッチ処理装置620は、各々オンライン処理装置10およびバッチ処理装置20と同一の構成を有し、同一の動作を行う。   In the online processing device 610, an online processing analysis unit 616 is newly executed as a computer program by the CPU 101 in addition to the configuration of the online processing device 10 shown in FIG. 1. In the batch processing device 620, in addition to the configuration of the batch processing device 20 shown in FIG. 1, a batch processing analysis unit 627 is newly executed as a computer program by the CPU 201. Except for this point, the online processing device 610 and the batch processing device 620 have the same configuration as the online processing device 10 and the batch processing device 20, respectively, and perform the same operations.

オンライン処理解析部616は、オンライン処理部111のソースコードもしくはバイナリコードを解析して、オンライン処理定義113を生成する。ここでいうソースコードもしくはバイナリコードは、たとえばJava(登録商標)、Javaサーブレットなど、任意の言語もしくは開発手法に対して適用できる。同様に、バッチ処理解析部627は、バッチ処理部211のソースコードもしくはバイナリコードを解析して、バッチ処理リソース定義214を生成する。   The online processing analysis unit 616 analyzes the source code or binary code of the online processing unit 111 and generates an online processing definition 113. The source code or binary code here can be applied to an arbitrary language or development method such as Java (registered trademark) or Java servlet. Similarly, the batch processing analysis unit 627 analyzes the source code or binary code of the batch processing unit 211 and generates a batch processing resource definition 214.

たとえば、バッチ処理部211がJavaで作成されている場合、バッチ処理解析部627はこのバッチ処理部211のバイトコードを解析してバッチアプリケーションで定義されたSQL文を抽出して文字列解析することによって、バッチ処理で使用されるテーブルなどのリソースを特定し、そこからバッチ処理リソース定義214を生成する。   For example, when the batch processing unit 211 is created in Java, the batch processing analysis unit 627 analyzes the byte code of the batch processing unit 211 to extract the SQL sentence defined by the batch application and analyze the character string. Thus, a resource such as a table used in batch processing is specified, and a batch processing resource definition 214 is generated therefrom.

同様に、オンライン処理部111がJavaサーブレットで作成されている場合、オンライン処理解析部616はこのオンライン処理部111のバイトコードを解析して、バッチ処理解析部627と同様にオンライン処理で使用されるテーブルなどのリソースを特定するのに加えて、このサーブレットの定義を解析することで画面遷移を特定し、そこからIN遷移およびOUT遷移を特定し、そこからオンライン処理定義113を生成する。   Similarly, when the online processing unit 111 is created with a Java servlet, the online processing analysis unit 616 analyzes the byte code of the online processing unit 111 and is used in online processing in the same manner as the batch processing analysis unit 627. In addition to specifying resources such as tables, the screen transition is specified by analyzing the definition of this servlet, the IN transition and the OUT transition are specified therefrom, and the online processing definition 113 is generated therefrom.

本実施形態によって、前述した第1の実施形態と同一の効果が得られるのに加えて、次の効果を得ることができる。本実施形態では、通常は複数の連続した処理によって構成されるオンライン処理およびバッチ処理から、オンライン処理定義113とバッチ処理リソース定義214が生成されるように構成したので、これらに定義された内容をより的確なものとすることができるので、オンライン処理とバッチ処理との間でリソースの競合を回避する効果もより的確なものとすることができる。   In addition to obtaining the same effects as those of the first embodiment described above, the present embodiment can obtain the following effects. In the present embodiment, since the online process definition 113 and the batch process resource definition 214 are generated from the online process and batch process that are normally configured by a plurality of continuous processes, the contents defined in these are defined. Since it can be more accurate, the effect of avoiding resource contention between online processing and batch processing can also be more accurate.

これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。   The present invention has been described with reference to the specific embodiments shown in the drawings. However, the present invention is not limited to the embodiments shown in the drawings, and any known hitherto provided that the effects of the present invention are achieved. Even if it is a structure, it is employable.

共通のデータベースを利用するオンライン処理とバッチ処理とを並行して処理する並行処理システムに適用することができる。   The present invention can be applied to a parallel processing system that processes online processing and batch processing using a common database in parallel.

1、401、501、601 並行処理システム
10、610 オンライン処理装置
20、620 バッチ処理装置
30 データベースサーバ
40 オンライン利用者端末
50 バッチ利用者装置
101、201、401 CPU
102、202、402 HDD
103、203、403 RAM
104、204、404 通信インターフェイス
111 オンライン処理部
112 オンライン処理状態通知部
113 オンライン処理定義
114 タイマー
115 カウンタ
211 バッチ処理部
212 バッチ処理調整部
212a 実行中リスト作成手段
212b リソース抽出手段
212c 処理一時停止手段
213 オンライン処理状態受信部
214 バッチ処理リソース定義
215 バッチファイル
216 オンライン処理実行中リスト
301 共有データベース
411 負荷分散処理部
440 負荷分散装置
500 外部サービス
616 オンライン処理解析部
627 バッチ処理解析部
1, 401, 501, 601 Parallel processing system 10, 610 Online processing device 20, 620 Batch processing device 30 Database server 40 Online user terminal 50 Batch user device 101, 201, 401 CPU
102, 202, 402 HDD
103, 203, 403 RAM
104, 204, 404 Communication interface 111 Online processing unit 112 Online processing status notification unit 113 Online processing definition 114 Timer 115 Counter 211 Batch processing unit 212 Batch processing adjustment unit 212a Running list creation unit 212b Resource extraction unit 212c Processing pause unit 213 Online processing status reception unit 214 Batch processing resource definition 215 Batch file 216 Online processing execution list 301 Shared database 411 Load distribution processing unit 440 Load distribution device 500 External service 616 Online processing analysis unit 627 Batch processing analysis unit

Claims (13)

オンライン利用者端末からユーザによる処理要求を受信し、前記処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムであって、
前記オンライン処理装置が、前記共有データベースに対して前記オンライン処理を実行するオンライン処理部と、前記共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する前記特定のリソースとの組をあらかじめ定義するオンライン処理定義を記憶している記憶手段と、前記オンライン処理部の処理状態が前記オンライン処理定義に定義されたIN状態に遷移したら前記バッチ処理装置にIN通知を発信するオンライン処理状態通知部とを有し、
前記バッチ処理装置が、前記共有データベースに対して前記バッチ処理を実行するバッチ処理部と、前記IN通知を受信するオンライン処理状態受信部と、前記IN通知を受信したことに反応して、前記オンライン処理部が利用する可能性のある前記特定のリソースを利用する処理の実行を前記バッチ処理部に一時停止させるバッチ処理調整部とを有すると共に、
前記バッチ処理装置の前記バッチ処理調整部が、前記IN通知の対象となるリソースの一覧であるオンライン処理実行中リストを作成する実行中リスト作成手段と、前記オンライン処理実行中リストにあるリソースを利用する処理を前記バッチファイルから抽出するリソース抽出手段と、抽出された処理の実行を前記バッチ処理部に一時停止させる処理一時停止手段とを有することを特徴とする並行処理システム。
An online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request; and a batch processing device that performs batch processing based on contents defined in a batch file given in advance; A parallel processing system configured to be connected to each other with a database server having a shared database on which the online processing and the batch processing are performed,
The online processing device performs an online processing on the shared database, a processing state corresponding to an IN state that may use a specific resource of the shared database, and the corresponding state Storage means for storing an online processing definition that predefines a set with a specific resource, and IN notification to the batch processing device when the processing state of the online processing unit transitions to the IN state defined in the online processing definition And an online processing status notification unit for sending
In response to the batch processing device receiving the IN notification, the online processing state receiving unit receiving the IN notification, the online processing state receiving unit receiving the IN notification, the online processing state both the execution of a process by the processing unit utilizes the particular resource that may use having said batch processing arrangement for temporarily stopping the batch processing unit,
The batch processing adjustment unit of the batch processing device uses an on-going list creation means for creating an on-line processing execution list that is a list of resources to be notified of IN, and uses resources on the on-line processing execution list A parallel processing system comprising: resource extracting means for extracting processing to be performed from the batch file; and processing suspending means for causing the batch processing unit to temporarily stop execution of the extracted processing.
前記オンライン処理装置の前記オンライン処理状態通知部が、前記オンライン処理部が前記オンライン処理定義に定義されていない状態であるOUT状態に遷移したら前記バッチ処理装置にOUT通知を発信する機能を有し、
前記バッチ処理装置の前記バッチ処理調整部が、前記OUT通知を受信したことに反応して、一時停止していた前記特定のリソースを利用する処理の実行を前記バッチ処理部に再開させる機能を有することを特徴とする、請求項1に記載の並行処理システム。
The online processing status notification unit of the online processing device has a function of sending an OUT notification to the batch processing device when the online processing unit transitions to an OUT state that is not defined in the online processing definition ,
In response to the reception of the OUT notification, the batch processing adjustment unit of the batch processing apparatus has a function of causing the batch processing unit to resume execution of a process that uses the specific resource that has been suspended. The parallel processing system according to claim 1, wherein:
前記オンライン処理装置の前記オンライン処理状態通知部に、時間の経過をカウントするタイマーが付属しており、
前記オンライン処理状態通知部が、前記オンライン処理部の処理状態がIN状態に遷移したら前記タイマーに所定の時間の経過をカウントさせ、前記所定の時間が経過したら前記特定のリソースを強制的に前記OUT状態に遷移させる機能を有することを特徴とする、請求項に記載の並行処理システム。
A timer that counts the passage of time is attached to the online processing state notification unit of the online processing device,
The online processing state notifying unit causes the timer to count the elapse of a predetermined time when the processing state of the online processing unit transitions to the IN state, and forcibly moves the specific resource to the OUT when the predetermined time elapses. The parallel processing system according to claim 2 , which has a function of transitioning to a state .
前記オンライン処理装置の前記オンライン処理状態通知部に、前記オンライン処理部で発生する各処理状態に与えられるIDごとに数値をカウントするカウンタが付属しており、
前記オンライン処理状態通知部が、前記特定のリソースが前記IN状態となった時に前記IDに対応する前記カウンタに1を加算する機能を有することを特徴とする、請求項1に記載の並行処理システム。
A counter that counts a numerical value for each ID given to each processing state generated in the online processing unit is attached to the online processing state notification unit of the online processing device,
2. The parallel processing system according to claim 1, wherein the online processing state notification unit has a function of adding 1 to the counter corresponding to the ID when the specific resource is in the IN state. .
前記オンライン処理装置の前記オンライン処理状態通知部が、前記特定のリソースが前記IN状態となった時に前記IDに対応する前記カウンタの数値が0である場合に前記バッチ処理装置にIN通知を発信し、その後に前記カウンタに1を加算する機能を有することを特徴とする、請求項に記載の並行処理システム。 The online processing status notification unit of the online processing device sends an IN notification to the batch processing device when the numerical value of the counter corresponding to the ID is 0 when the specific resource is in the IN state. 5. The parallel processing system according to claim 4 , further comprising a function of adding 1 to the counter thereafter. 前記オンライン処理装置の前記オンライン処理状態通知部が、前記特定のリソースが前記IN状態ではなくなった時に前記IDに対応する前記カウンタから1を減算し、前記カウンタの数値が0になった場合に前記バッチ処理装置にOUT通知を発信する機能を有し、
前記バッチ処理装置の前記バッチ処理調整部が、前記OUT通知を受信したことに反応して、一時停止していた前記特定のリソースを利用する処理の実行を前記バッチ処理部に再開させる機能を有することを特徴とする、請求項に記載の並行処理システム。
The online processing status notifier of the online processing device subtracts 1 from the counter corresponding to the ID when the specific resource is no longer in the IN state, and the numerical value of the counter becomes 0 Has a function to send OUT notification to the batch processing device,
In response to the reception of the OUT notification, the batch processing adjustment unit of the batch processing apparatus has a function of causing the batch processing unit to resume execution of a process that uses the specific resource that has been suspended. The parallel processing system according to claim 4 , wherein:
前記オンライン処理装置が複数台のコンピュータ装置で構成されると共に、前記複数台のコンピュータ装置に処理要求を分配する負荷分散部を有することを特徴とする、請求項1に記載の並行処理システム。   The parallel processing system according to claim 1, wherein the online processing apparatus includes a plurality of computer apparatuses, and further includes a load distribution unit that distributes processing requests to the plurality of computer apparatuses. 前記オンライン処理装置が、前記オンライン処理のソースコードの内容を解析して前記IN状態に該当する処理状態とこれに対応する前記特定のリソースとの組を定義するオンライン処理定義を生成するオンライン処理解析部を有し、
前記バッチ処理装置が、前記バッチ処理のソースコードの内容を解析して各処理段階に対応する処理状態とこれに対応する前記特定のリソースとの組を定義するバッチ処理リソース定義を生成するバッチ処理解析部を有することを特徴とする、請求項1に記載の並行処理システム。
Online processing analysis in which the online processing device analyzes the contents of the source code of the online processing and generates an online processing definition that defines a set of a processing state corresponding to the IN state and the specific resource corresponding thereto Part
Batch processing in which the batch processing device analyzes the contents of the source code of the batch processing and generates a batch processing resource definition that defines a set of processing states corresponding to each processing stage and the specific resource corresponding thereto The parallel processing system according to claim 1, further comprising an analysis unit.
オンライン利用者端末からユーザによる処理要求を受信して前記処理要求に基づくオンライン処理を行うオンライン処理装置であって、
あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置および前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバと相互に接続されてデータ交換を行う通信インターフェイスと、
前記共有データベースに対して前記オンライン処理を実行するオンライン処理部と、
前記共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する前記特定のリソースとの組をあらかじめ定義するオンライン処理定義を記憶している記憶手段と、
前記オンライン処理部の処理状態が前記オンライン処理定義に定義されたIN状態に遷移したら前記バッチ処理装置にIN通知を発信するオンライン処理状態通知部とを有することを特徴とするオンライン処理装置。
An online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request,
A batch processing apparatus that performs batch processing based on the contents defined in a batch file given in advance, and a database server having the shared database that is the target of the online processing and the batch processing are mutually connected to exchange data. Communication interface to do,
An online processing unit for executing the online processing on the shared database;
Storage means for storing an online processing definition that predefines a set of a processing state corresponding to an IN state that may use a specific resource of the shared database and the specific resource corresponding thereto;
An online processing apparatus comprising: an online processing state notifying unit that issues an IN notification to the batch processing device when the processing state of the online processing unit transitions to an IN state defined in the online processing definition .
あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置であって、
オンライン利用者端末からユーザによる処理要求を受信して前記処理要求に基づくオンライン処理を行うオンライン処理装置および前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバと相互に接続されてデータ交換を行う通信インターフェイスと、
前記共有データベースに対して前記バッチ処理を実行するバッチ処理部と、
前記オンライン処理装置からIN通知を受信するオンライン処理状態受信部と、
前記IN通知を受信したことに反応して、前記オンライン処理装置が利用する可能性のある特定のリソースを利用する処理の実行を前記バッチ処理部に一時停止させるバッチ処理調整部とを有すると共に、
前記バッチ処理調整部が、前記IN通知の対象となるリソースの一覧であるオンライン処理実行中リストを作成する実行中リスト作成手段と、前記オンライン処理実行中リストにあるリソースを利用する処理を前記バッチファイルから抽出するリソース抽出手段と、抽出された処理の実行を前記バッチ処理部に一時停止させる処理一時停止手段とを有することを特徴とするバッチ処理装置。
A batch processing apparatus that performs batch processing based on contents defined in a batch file given in advance,
Interconnected with an online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request, and a database server having a shared database on which the online processing and batch processing are performed A communication interface for exchanging data,
A batch processing unit that executes the batch processing on the shared database;
An online processing status receiving unit for receiving an IN notification from the online processing device;
In response to receiving the IN notification, and a said batch processing arrangements for online processing apparatus temporarily stops the execution of a process that utilizes Oh Ru specific resource possibility of utilizing the batch processing unit With
The batch processing adjustment unit executes an online list execution means for generating an online process execution list that is a list of resources that are the targets of the IN notification, and a process that uses the resources in the online process execution list. A batch processing apparatus comprising: resource extracting means for extracting from a file; and processing pause means for causing the batch processing unit to temporarily stop execution of the extracted process.
オンライン利用者端末からユーザによる処理要求を受信し、前記処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、前記オンライン処理と前記バッチ処理とを並行して処理する方法であって、
前記オンライン処理装置のオンライン処理部が、前記共有データベースに対して前記オンライン処理を実行し、
前記オンライン処理装置のオンライン処理状態通知部が、備えられた記憶手段に記憶されている前記共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する前記特定のリソースとの組をあらかじめ定義するオンライン処理定義に定義されたIN状態に、前記オンライン処理部の処理状態が遷移したか否かを判断し、
前記IN状態に遷移したら前記オンライン処理状態通知部が前記バッチ処理装置にIN通知を発信し、
前記バッチ処理装置のオンライン処理状態受信部が前記IN通知を受信し、
前記バッチ処理装置のバッチ処理調整部が前記IN通知を受信したことに反応して、予め作成してある前記IN通知の対象となるリソースの一覧であるオンライン処理実行中リストにあるリソースを利用する処理を前記バッチファイルから抽出し、当該抽出された処理の実行を前記バッチ処理を実行するバッチ処理部に一時停止させることを特徴とする並行処理方法。
An online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request; and a batch processing device that performs batch processing based on contents defined in a batch file given in advance; , A parallel processing system configured by interconnecting a database server having a shared database that is an object on which the online processing and the batch processing are performed, and processing the online processing and the batch processing in parallel A way to
An online processing unit of the online processing device executes the online processing on the shared database;
The processing state corresponding to the IN state in which the online processing state notifying unit of the online processing device may use the specific resource of the shared database stored in the storage unit provided, and the identification corresponding to the processing state Determining whether or not the processing state of the online processing unit has transitioned to the IN state defined in the online processing definition that predefines a pair with the resource ,
When the transition to the IN state, the online processing state notification unit sends an IN notification to the batch processing device,
The online processing status receiving unit of the batch processing apparatus receives the IN notification,
In response to the receipt of the IN notification by the batch processing adjustment unit of the batch processing apparatus, the resources in the online processing execution list that is a list of resources that are the targets of the IN notification that are created in advance are used. A parallel processing method, wherein a process is extracted from the batch file , and execution of the extracted process is temporarily stopped by a batch processing unit that executes the batch process.
オンライン利用者端末からユーザによる処理要求を受信し、前記処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、
前記オンライン処理装置が備えるコンピュータに、
前記共有データベースに対して前記オンライン処理を実行する手順と、
備えられた記憶手段に記憶されている前記共有データベースの特定のリソースを利用する可能性のあるIN状態に該当する処理状態とこれに対応する前記特定のリソースとの組をあらかじめ定義するオンライン処理定義に定義されたIN状態に、前記オンライン処理の処理状態が遷移したか否かを判断する手順と、
前記IN状態に遷移したら前記バッチ処理装置にIN通知を発信する手順とを実行させることを特徴とする並行処理プログラム。
An online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request; and a batch processing device that performs batch processing based on contents defined in a batch file given in advance; In a parallel processing system configured to be interconnected with a database server having a shared database that is a target on which the online processing and the batch processing are performed,
A computer included in the online processing device,
Executing the online process on the shared database;
Online process definition for predefining a set of a processing state corresponding to an IN state that may use a specific resource of the shared database stored in a storage unit provided and the specific resource corresponding to the IN state A procedure for determining whether or not the processing state of the online processing has transitioned to the IN state defined in FIG.
Parallel processing program characterized by executing the steps of transmitting an IN notification to transition the al pre Symbol batch processing apparatus to the IN state.
オンライン利用者端末からユーザによる処理要求を受信し、前記処理要求に基づいてオンライン処理を行うオンライン処理装置と、あらかじめ与えられたバッチファイルに定義された内容に基づいてバッチ処理を行うバッチ処理装置と、前記オンライン処理および前記バッチ処理が行われる対象である共有データベースを有するデータベースサーバとが相互に接続されて構成される並行処理システムにあって、
前記バッチ処理装置が備えるコンピュータに、
前記バッチファイルに定義された内容に基づいて前記バッチ処理を行う手順と、
前記オンライン利用者端末からIN通知を受信する手順と、
前記IN通知を受信したことに反応して、予め作成してある前記IN通知の対象となるリソースの一覧であるオンライン処理実行中リストにあるリソースを利用する処理を前記バッチファイルから抽出し、当該抽出された処理の実行を前記バッチ処理を実行するバッチ処理部に一時停止させる手順とを実行させることを特徴とする並行処理プログラム。
An online processing device that receives a processing request from a user from an online user terminal and performs online processing based on the processing request; and a batch processing device that performs batch processing based on contents defined in a batch file given in advance; In a parallel processing system configured to be interconnected with a database server having a shared database that is a target on which the online processing and the batch processing are performed,
A computer provided in the batch processing apparatus,
A procedure for performing the batch processing based on the contents defined in the batch file;
Receiving an IN notification from the online user terminal;
In response to receiving the IN notification, a process that uses a resource in the online processing execution list that is a list of resources that are targets of the IN notification that has been created in advance is extracted from the batch file, and A parallel processing program that causes a batch processing unit that executes the batch processing to temporarily execute execution of the extracted processing.
JP2009064870A 2009-03-17 2009-03-17 Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program Expired - Fee Related JP5458615B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009064870A JP5458615B2 (en) 2009-03-17 2009-03-17 Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009064870A JP5458615B2 (en) 2009-03-17 2009-03-17 Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program

Publications (2)

Publication Number Publication Date
JP2010218268A JP2010218268A (en) 2010-09-30
JP5458615B2 true JP5458615B2 (en) 2014-04-02

Family

ID=42977046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009064870A Expired - Fee Related JP5458615B2 (en) 2009-03-17 2009-03-17 Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program

Country Status (1)

Country Link
JP (1) JP5458615B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112001732B (en) * 2020-09-03 2024-07-26 浙江网商银行股份有限公司 Service processing system, method and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2526501B2 (en) * 1993-08-17 1996-08-21 日本電気株式会社 A traveling control method for large-volume data processing in computer systems.
JP3641341B2 (en) * 1997-03-04 2005-04-20 日本電気株式会社 Online exclusive weight avoidance device
JP5058416B2 (en) * 2001-09-07 2012-10-24 株式会社日本総合研究所 Batch control system for online combination system, program for batch control of online combination system, and recording medium recording the program
JP2004171339A (en) * 2002-11-21 2004-06-17 Nippon Telegr & Teleph Corp <Ntt> Real-time request receiving system, real-time request receiving method, program and medium
JP4712283B2 (en) * 2003-03-14 2011-06-29 株式会社日本総合研究所 Data management system, batch control system, and batch control program

Also Published As

Publication number Publication date
JP2010218268A (en) 2010-09-30

Similar Documents

Publication Publication Date Title
CN113452774B (en) Message pushing method, device, equipment and storage medium
US9740761B2 (en) Management of application state data
US9940598B2 (en) Apparatus and method for controlling execution workflows
CN108744504B (en) Game data processing method and device, game server and game system
CN107315761A (en) A kind of data-updating method, data query method and device
CN101196912A (en) Method and apparatus for application state synchronization
CN104601696A (en) Service processing method and service invoking frame, device and architecture
JP2011164704A (en) Client program, terminal, server device, system, and method
CN115102839A (en) A master-slave node election method, device, equipment and medium
US10908963B2 (en) Deterministic real time business application processing in a service-oriented architecture
CN112269622B (en) Page management method, device, equipment and medium
WO2019242455A1 (en) Method and apparatus for user request forwarding, reverse proxy and computer readable storage medium
JP2005521945A (en) Optimal server in common work queue environment
CN108153794B (en) Page cache data refreshing method, device and system
JP4957765B2 (en) Software program execution device, software program execution method, and program
US20180131756A1 (en) Method and system for affinity load balancing
EP3687133B1 (en) System and method for synchronization of media objects between devices operating in a multiroom system
JP5458615B2 (en) Parallel processing system, online processing device, batch processing device, parallel processing method, and parallel processing program
EP1546872B1 (en) A key event controlling apparatus
US20200348840A1 (en) System and method for event driven storage management
CN112434050B (en) Data synchronization method, device and business processing system of power grid business processing system
CN106550021B (en) Push method and device for push message
CN108234481B (en) A method and distributed system for controlling multi-machine distributed access to external systems
WO2024251107A1 (en) Container orchestration method, data access method, and electronic device and storage medium
CN115103005B (en) Request response method, device, electronic device and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130730

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131015

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131128

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131230

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees