🙆

バッチ処理について

2021/04/11に公開

バッチ処理とは

・大量のデータをまとめて処理できる

一言で表すと「一定量にまで蓄積したデータを一括処置するための方法」
バッチに登録した一連のプログラムや、ファイル転送コマンドなどを順番に実行してデータの蓄積や処理を行う。

よくある利用方法

売上管理。
その日のお店の売上を勤務中に何回もカウントするのは手間なのでコンピューターへの負荷を減らすため
1日に一回、閉店後に処理するようにする。

随時計算しておく必要のないデータ処理を、 後でまとめて行うためのプログラムがバッチ処理。 現在は、店舗や企業で使用例が多い。
バッチ処理を作成し、実行する。

バッチ処理の主な方法

『バッチファイルを作成して実行する』
という手順を踏むこと

バッチファイルというのは、バッチで使う命令文を網羅したもののことで、『cmd』もしくは『bat』の拡張子が使われる

先の売上処理の例で言えば、
『ジャンルごとに集計する』『差額を計算する』『合計売上を計算する』『データを送信する』などの処理(コマンド)が複数ある。

バッチ処理のデメリット

大量のデータを処理するのには便利だが、性質上いくつかのデメリットがある。

・データをリアルタイムで集計するのには不向き。
一人一人の購入した商品の集計や処理にはバッチ処理は利用できない。

加えて、データを逐一確認できないことから、プログラムの担当者しかバッチの中身がわからないといった問題も発生する。

データ量があまりにも多すぎると処理が遅くなってしまう。
結果、予定されていた時間になっても処理が終わらず後の業務に差し支えるといったことも発生する恐れがある。

バッチ処理の利用シーン

・在庫管理
・テストの自動化(例あり)
エラーが発生しないようにテストを行う。
また、プログラムが想定通りの動作を行うかといったこっともテストしなければならない。
テストでは膨大な工程を何パターンも行わなければならないこともあり、
人の手で行うのは大変なのでバッチ処理を活用してテストを自動化することで人間を削減する試みが行われている。
・銀行の夜間バッチ

その他の処理との違い

バッチ処理以外にも、コンピューターで使う処理方式にはさまざまな種類がある。

リアルタイム処理

バッチ処理の対義語としてよく用いられる。
『即座にデータ処理を実行する』処理方式のこと。
ショップのレジや決済、ATMなどが該当する。
性質もバッチ処理とは真逆。一つ一つのデータを即座に処理するのは得意ですが大量のデータを一度に扱うのには向いてない。

リアルタイム処理とバッチ処理を組み合わせてデータ処理を行うシステムも多くある。

シェルスクリプト

『シェル』とは
人間がコンピューターに何か命令するときに、それを中仲介する役割を担うプログラム。

シェルスクリプトとは、シェルを介したコンピューターへの命令(コマンド)を集めたもののことを言う。

コンピューターに命令を下して実行させるという点ではバッチと共通。
違いは、バッチがWindowsで使用するためのファイルなのに対し、シェルスクリプトは、UNIX系で使うプログラムだという点。
他のプログラム言語よりも、比較的簡単に扱えるのも、シェルスクリプトの大きな特徴。

Discussion