JP2005275522A - Batch processing system - Google Patents
Batch processing system Download PDFInfo
- Publication number
- JP2005275522A JP2005275522A JP2004084180A JP2004084180A JP2005275522A JP 2005275522 A JP2005275522 A JP 2005275522A JP 2004084180 A JP2004084180 A JP 2004084180A JP 2004084180 A JP2004084180 A JP 2004084180A JP 2005275522 A JP2005275522 A JP 2005275522A
- Authority
- JP
- Japan
- Prior art keywords
- script
- batch
- execution
- file
- processing
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明はバッチ処理を行うコンピュータシステムに関する。 The present invention relates to a computer system that performs batch processing.
大量のデータをまとめて処理するバッチ処理では、処理手順をスクリプトファイルに記述し、そのスクリプトファイルに従って処理を実行する。スクリプトファイルには、実行する処理の順に従って、所定のコマンドなどが記述される。スクリプトファイルとしては、Unix(登録商標)系OS(Operating System)ではシェルスクリプト、Windows(登録商標)ではWindowsスクリプト(バッチファイル)が利用されている。 In batch processing that processes a large amount of data collectively, a processing procedure is described in a script file, and processing is executed according to the script file. In the script file, predetermined commands and the like are described according to the order of processing to be executed. As the script file, a shell script is used in the Unix (registered trademark) OS (Operating System), and a Windows script (batch file) is used in the Windows (registered trademark).
マルチプラットフォーム環境のバッチ処理システムであっても、Unix系OS、Windowsのいずれの場合もそれぞれのスクリプトを利用していて、OSに依存していた。つまり、プログラムはJAVA(登録商標)などのマルチプラットフォーム環境で動作するように作られたバッチ処理システムであっても、スクリプトファイルに関しては、依然としてOSに依存した作りになっていた。 Even in a batch processing system in a multi-platform environment, each of the Unix-based OS and Windows uses the respective scripts and depends on the OS. That is, even if the program is a batch processing system designed to operate in a multi-platform environment such as JAVA (registered trademark), the script file is still dependent on the OS.
このため、例えば、開発段階の環境はWindowsであるのに対して、リリース後にシステムが動く運用環境ではUnix系OSを用いる場合には、開発環境で作ったプログラムはそのまま移植できるが、スクリプトファイルは移植できないという問題があった。つまり、従来のプラットフォームフリーのバッチ処理システムでは、スクリプトはプラットフォームに依存しており不完全であった。 For this reason, for example, while the environment at the development stage is Windows, when using a Unix-based OS in an operating environment in which the system operates after release, the program created in the development environment can be ported as it is, but the script file is There was a problem that could not be transplanted. In other words, in the conventional platform-free batch processing system, the script is platform-dependent and incomplete.
そこで、本発明の目的は、完全なプラットフォームフリーのバッチ処理システムを提供することである。 Accordingly, an object of the present invention is to provide a complete platform-free batch processing system.
本発明の一つの実施態様に従うバッチ処理システムは、バッチ処理の内容が記述されているスクリプトファイルを保持し、前記スクリプトファイルに従った処理の実行を要求するスクリプト処理部と、所定の処理を実行する複数の実行ファイルと、前記複数の実行ファイルから、前記スクリプト処理部からの要求に対応する実行ファイルを特定し、特定された実行ファイルに処理の実行を指示するバッチ処理部と、を備える。 A batch processing system according to an embodiment of the present invention holds a script file in which the contents of a batch process are described, and executes a predetermined process with a script processing unit that requests execution of the process according to the script file. And a batch processing unit that specifies an execution file corresponding to the request from the script processing unit from the plurality of execution files, and instructs the specified execution file to execute the process.
好適な実施形態では、前記バッチ処理システムは、JAVA(登録商標)環境で実行可能に実装されている。このとき、前記複数の実行ファイルは、EJB(Enterprise Java Beans)の形式で実装され、前記バッチ処理部は、JAVAプログラムで実装されていてもよい。さらに、前記スクリプト処理部は、antで実現されていてもよい。 In a preferred embodiment, the batch processing system is implemented to be executable in a JAVA environment. At this time, the plurality of execution files may be mounted in an EJB (Enterprise Java Beans) format, and the batch processing unit may be mounted in a JAVA program. Further, the script processing unit may be realized by an ant.
好適な実施形態では、所定のジョブスケジュールに従って前記スクリプト処理部を起動するジョブスケジューラをさらに備えるようにしてもよい。 In a preferred embodiment, a job scheduler that activates the script processing unit according to a predetermined job schedule may be further provided.
以下、本発明の一実施形態に係るバッチ処理システムについて、図面を用いて説明する。 Hereinafter, a batch processing system according to an embodiment of the present invention will be described with reference to the drawings.
本システムの全体構成を図1に示す。本システムは、同図に示すように、バッチサーバ1と、1以上のAPサーバ2と、運用監視サーバ3とを備え、それらが互いにネットワーク9を介して接続されている。本システムは、ジョブスケジュールを管理する運用監視サーバ3からの指示に基づいて、バッチサーバ1がAPサーバ2にインストールされている所定の実行ファイルに、一連のバッチジョブを実行させる。また、同図に示すように、APサーバ2が複数台あるときは負荷分散装置8をさらに備え、複数台のAPサーバ2へ処理を分散させてもよい。
The overall structure of this system is shown in FIG. As shown in the figure, the system includes a batch server 1, one or
バッチサーバ1、各APサーバ2および運用監視サーバ3は、いずれも例えば汎用的なコンピュータシステムにより構成され、以下に説明する各サーバ1,2,3内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
The batch server 1, each AP
バッチサーバ1は、バッチ処理を管理するバッチマネージャ11と、バッチ処理を記述したスクリプトに従ってバッチマネージャ11に処理要求を行うスクリプトツール12と、バッチ処理の実行履歴を記録したバッチログ13とを備える。
The batch server 1 includes a
バッチマネージャ11は、スクリプトツール12からの処理要求に従って、APサーバ2の実行ファイル21に所定の処理の実行を指示する。例えば、バッチマネージャ11は、バッチ起動処理部15と、変換テーブル16とを備えている。
The
変換テーブル16は、例えば、図2に示すように、APサーバグループ名161と、ネットワーク論理名162とが対応付けられている。APサーバグループ名161は、後述するスクリプトファイルの中で用いられているAPサーバのグループ名である。ネットワーク論理名162は、ネットワーク上での論理的な場所を示す名称である。負荷分散装置8が、ネットワーク論理名162を個別のAPサーバ2上の物理的な位置を特定するためのアドレスへ変換する。
In the conversion table 16, for example, as shown in FIG. 2, an AP
バッチ起動処理部15は、スクリプトツール12からの処理要求に基づいて、ネットワーク論理名及び実行ファイルを特定し、処理の実行を指示する。例えば、バッチ起動処理部15が、処理要求としてAPサーバグループ名及び実行ファイル名の指定を受けると、変換テーブル16からそのAPサーバグループ名161に対応するネットワーク論理名162を取得し、ネットワーク論理名及び実行ファイルを用いて処理の実行を指示する。バッチ起動処理部15は、上記のようにして実行指示をした処理内容および日時などをバッチログ13へ追加する。
The batch
本システムは、例えば、JAVA環境で動作するように実装することができる。この場合、バッチ起動処理部15はJavaプログラムで記述することが可能である。
The system can be implemented, for example, to operate in a JAVA environment. In this case, the batch
スクリプトツール12は、複数のスクリプトファイル121を備える。そして、スクリプトツール12は各スクリプトファイル121に記述されている内容に従った処理を実行する。スクリプトファイル121は、業務の仕様などに基づいて、システム管理者等が予め作成したものである。例えば、それぞれのスクリプトファイル121には、本システムが行うバッチ処理の手順が記述されている。ここで、スクリプトファイル121の一例を図3に示す。この例では、一つのスクリプトファイル121に一つのジョブ(後述する)が対応している。なお、各スクリプトファイル121は、実際にはそれぞれのスクリプトに固有な所定の文法に従って記述されるが、ここでは理解を容易にするための普通の文章で記述している。
The
本システムをJAVA環境で動作するように実装した場合、スクリプトツール12は、antと呼ばれるビルドツールを用いて実現することができる。ここで、antは、Unixにおけるmakefileコマンドに相当するものである。つまり、antは、一般にはバッチ処理の実行を制御するためのツールとは認識されていない。本発明の発明者は、従来はビルドツールとしてしか利用されていなかったantが持つ機能に着目し、バッチ処理の実行制御に対する利用可能性を見出したものである。
When this system is mounted so as to operate in the JAVA environment, the
また、スクリプトツール12をantで実装した場合、スクリプトツール12からの処理要求は、JMX(Java Management eXtensions)の形式で行うようにしてもよい。
Further, when the
再び図1を参照すると、それぞれのAPサーバ2は、複数の実行形式の実行ファイル21と、データ記憶部22とを備える。各実行ファイル21は、必要に応じてデータ記憶部22からのデータ読みだし及びデータの書き込みを行って、それぞれ所定の処理を実行する。本システムをJAVA環境で動作可能に実装した場合、各実行ファイル21はEJB(Enterprise Java Beans)の形式で実現することができる。
Referring to FIG. 1 again, each
運用監視サーバ3は、ジョブスケジューラ31と現在時刻を提供する計時部32とを備える。例えば、ジョブスケジューラ31は、図4に示すようなジョブスケジュール33を保持している。ジョブスケジュール33は、同図に示すように、ジョブ単位に起動時刻が指定されている。一つのジョブは一つ以上の処理を含む。そして、ジョブスケジューラ31はジョブ単位で処理を管理する。ジョブスケジューラ31は、計時部32が示す現在時刻を参照し、ジョブスケジュール33に従ってバッチサーバ1に対して所定のジョブの実行を指示する。
The
次に、図5に示すシーケンスチャートに従って、本システムの動作概要を説明する。 Next, an outline of the operation of this system will be described according to the sequence chart shown in FIG.
まず、ジョブスケジュールに決められた所定の時刻になると、ジョブスケジューラ31がスクリプトツール12に対して、所定のスクリプトの起動を指示する。ここでは、時刻が22時になり、ジョブスケジューラ31はスクリプトツール12に対して「ジョブA」を実行するため、これに対応するスクリプトの起動を指示したとする。
First, at a predetermined time determined in the job schedule, the
スクリプトツール12は、起動指示されたスクリプトファイル121を参照し、これに記載された処理を実行する。この場合、スクリプトツール12は、「ジョブA」に対応するスクリプトファイルに記述された内容を実行するよう、バッチマネージャ11へ逐次処理要求をする。つまり、スクリプトツール12は、バッチマネージャ11への処理要求として「グループAの実行ファイルAを実行」、「グループAの実行ファイルBを実行」などを通知する。
The
バッチマネージャ11が上記の処理要求を受けると、それぞれの処理要求の内容に基づいて、バッチ起動処理部15が負荷分散装置8を介してAPサーバ2へ処理の実行指示をする。そして、この実行指示を受けたAPサーバ2では、実行指示に係る実行ファイル21などが、それぞれ所定の処理を実行する。
When the
なお、バッチ起動処理部15がAPサーバ2へ処理の実行指示をするときは、変換テーブル16を参照してスクリプトツール12からの処理要求に含まれているAPサーバグループ名をネットワーク論理名162に変換した実行指示を、負荷分散装置8へ送信する。
Note that when the batch
これにより、ジョブスケジュールに基づいてバッチ処理を行うシステムを実現することができる。 Thereby, it is possible to realize a system that performs batch processing based on a job schedule.
さらに、従来は、JAVAではバッチ処理の制御に使用できるスクリプトツールがなかった。このため、Unix環境で動作するバッチシステムの場合はシェルスクリプト、Windows環境で動作するバッチシステムの場合はWindowsスクリプトで記述しなければならなかったが、スクリプトツールとしてantを用いることにより、マルチプラットフォームのJAVA環境でスクリプトツールを利用することにより、本システムはUnixマシンおよびWindowsマシンのいずれでも動作することができるようになった。 Furthermore, conventionally, JAVA has no script tool that can be used to control batch processing. For this reason, in the case of a batch system operating in the Unix environment, it must be described in a shell script, and in the case of a batch system operating in the Windows environment, it must be described in a Windows script. By using a script tool in the JAVA environment, the system can be operated on both Unix machines and Windows machines.
この結果、さらに、運用環境にUnixマシンを使用し、開発環境は比較的安価なWindowsマシンを利用した場合でも、実行ファイルのみならずスクリプトまでまったく同一のものを利用できるようになり、開発効率が向上する。そればかりか、antをサポートするテストツールが多数あるので、開発プロセス全体の効率化につながる。 As a result, even when a Unix machine is used for the operating environment and a relatively inexpensive Windows machine is used, not only the executable file but also the script can be used exactly the same, and the development efficiency can be improved. improves. Not only that, there are many test tools that support ant, leading to greater efficiency in the entire development process.
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。 The above-described embodiments of the present invention are examples for explaining the present invention, and are not intended to limit the scope of the present invention only to those embodiments. Those skilled in the art can implement the present invention in various other modes without departing from the gist of the present invention.
例えば、上述したバッチサーバ、APサーバ及び運用監視サーバは、それら3つを纏めて一つのコンピュータマシンで集中的に実現することもできるし、それぞれ一つのコンピュータマシンに分けて実現することもできるし、それぞれ複数のコンピュータマシンで分散的に実現することもできる。 For example, the batch server, the AP server, and the operation monitoring server described above can be realized in a centralized manner on a single computer machine, or can be realized separately on a single computer machine. It can also be realized in a distributed manner by a plurality of computer machines.
1…バッチサーバ、2…APサーバ、3…運用監視サーバ、9…ネットワーク、11…バッチマネージャ、12…スクリプトツール、31…ジョブスケジューラ。
DESCRIPTION OF SYMBOLS 1 ... Batch server, 2 ... AP server, 3 ... Operation monitoring server, 9 ... Network, 11 ... Batch manager, 12 ... Script tool, 31 ... Job scheduler.
Claims (4)
所定の処理を実行する複数の実行ファイルと、
前記複数の実行ファイルから、前記スクリプト処理部からの要求に対応する実行ファイルを特定し、特定された実行ファイルに処理の実行を指示するバッチ処理部と、を備えるバッチ処理システム。 A script processing unit that holds a script file in which the contents of the batch processing are described, and requests execution of processing according to the script file;
A plurality of executable files for executing a predetermined process;
A batch processing system comprising: a batch processing unit that specifies an execution file corresponding to a request from the script processing unit from the plurality of execution files and instructs the specified execution file to execute the processing.
前記複数の実行ファイルは、EJB(Enterprise Java Beans)の形式で実装されていて、
前記バッチ処理部は、JAVAプログラムで実装されていて、
前記スクリプト処理部は、antで実現されていることを特徴とする請求項1記載のバッチ処理システム。 The batch processing system is implemented to be executable in a JAVA (registered trademark) environment,
The plurality of executable files are implemented in the form of EJB (Enterprise Java Beans),
The batch processing unit is implemented by a JAVA program,
The batch processing system according to claim 1, wherein the script processing unit is realized by an ant.
所定の処理を実行する複数の実行ファイルの中から前記処理要求に対応する実行ファイルを特定し、特定された実行ファイルに処理の実行を指示する、バッチ処理方法。
Hold a script file that describes the contents of the batch process, request execution of the process according to the script file,
A batch processing method for specifying an execution file corresponding to the processing request from a plurality of execution files for executing a predetermined process, and instructing the specified execution file to execute the process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004084180A JP2005275522A (en) | 2004-03-23 | 2004-03-23 | Batch processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004084180A JP2005275522A (en) | 2004-03-23 | 2004-03-23 | Batch processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005275522A true JP2005275522A (en) | 2005-10-06 |
Family
ID=35175171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004084180A Pending JP2005275522A (en) | 2004-03-23 | 2004-03-23 | Batch processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005275522A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006260281A (en) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | Script generation program and batch execution system |
JP2010108095A (en) * | 2008-10-28 | 2010-05-13 | Jfe Steel Corp | Batch job execution apparatus, batch job execution method, and batch job execution program |
WO2012173355A2 (en) * | 2011-06-17 | 2012-12-20 | (주)네오위즈게임즈 | Device and method for executing task files in a game server |
-
2004
- 2004-03-23 JP JP2004084180A patent/JP2005275522A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006260281A (en) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | Script generation program and batch execution system |
JP2010108095A (en) * | 2008-10-28 | 2010-05-13 | Jfe Steel Corp | Batch job execution apparatus, batch job execution method, and batch job execution program |
WO2012173355A2 (en) * | 2011-06-17 | 2012-12-20 | (주)네오위즈게임즈 | Device and method for executing task files in a game server |
WO2012173355A3 (en) * | 2011-06-17 | 2013-03-28 | (주)네오위즈게임즈 | Device and method for executing task files in a game server |
KR101264615B1 (en) * | 2011-06-17 | 2013-05-27 | (주)네오위즈게임즈 | Device and method for executing and managing job file of game server |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7114159B2 (en) | Processing resource for use in a distributed processing framework system and methods for implementing the same | |
US6961937B2 (en) | Registry service for use in a distributed processing framework system and methods for implementing the same | |
US8166458B2 (en) | Method and system for automated distributed software testing | |
US7979859B2 (en) | Managing automated resource provisioning with a workload scheduler | |
US7426729B2 (en) | Distributed processing framework system | |
US20060089995A1 (en) | System for conversion between physical machines, virtual machines and machine images | |
US8214809B2 (en) | Grid-enabled ANT compatible with both stand-alone and grid-based computing systems | |
EP1276047A2 (en) | System controller for use in a distributed processing framework system and methods for implementing the same | |
WO2014171130A1 (en) | Information processing system, deployment method, processing device, and deployment device | |
US11029899B2 (en) | Maintenance system including information processing device that performs maintenance operation on image forming device | |
JP2003005979A (en) | Automatic configuration for performance management tool | |
JP5377231B2 (en) | Job net control program and job net control device | |
US20190012161A1 (en) | Distributed and self-deleting apparatus for fast software deployment and upgrade in a network | |
JP4287830B2 (en) | Job management apparatus, job management method, and job management program | |
JP2005275522A (en) | Batch processing system | |
JP2010152846A (en) | File sharing method, computer system and job scheduler | |
US10592227B2 (en) | Versioned intelligent offline execution of software configuration automation | |
US7240348B2 (en) | Suspending scenario generation method, server device, and program therefor | |
WO2002079985A2 (en) | Self-downloading network client | |
JP4685053B2 (en) | Job execution order control device, method and program | |
CN113608744A (en) | Method for establishing environment construction unit for executing distributed compilation and distributed compilation system | |
JPH1115677A (en) | Process controller | |
JP2007206769A (en) | Program download device | |
JP2009163732A (en) | Computer, and program | |
CA2524549A1 (en) | A system for conversion between physical machines, virtual machines and machine images |