FE EXAM

バッチ処理(まとめて一括処理)

一定量のデータをためてまとめて一括処理する方式。

DIAGRAM
たまるデータ
一括処理
結果出力
① データをためる(キュー)1日分の取引・伝票が順番に蓄積取引データ #1取引データ #2取引データ #3取引データ #4... 大量にたまる夜間に② まとめて一括処理システムの空き時間に一気に実行BATCH JOB集計・計算・更新③ 結果を出力帳票・レポートを生成集計レポートイメージ: 銀行の夜間バッチ日中にたまった1日分の取引を、利用者が少ない夜間にまとめて集計し、翌朝までに残高を更新する。
解説

📌
バッチ処理とは

ためる一括まとめて処理結果出力

バッチ処理とは、データを1件ずつその場で処理するのではなく、一定量・一定期間ぶんのデータをいったんためてから、まとめて一括で処理する方式のことです。「バッチ(batch)」とは英語で「ひとまとめ」という意味です。

身近な例で考えると、コインランドリーの洗濯に似ています。服が出るたびに1枚ずつ洗うのではなく、洗濯カゴ(=キュー、順番待ちの置き場のこと)にたまるまで待ち、ある程度たまったらまとめて一気に洗うほうが効率的です。

上の図解のように、処理は次の3ステップで進みます。
ためる:データをキューに順番に蓄積する
一括処理:たまったデータをまとめて計算・集計する
出力:処理結果を帳票やレポートとして出す

📌
用途(夜間処理・集計等)

日中: データがたまる夜間: 一括実行0時翌朝空き時間(夜間)にまとめて処理

バッチ処理は、即時の応答が不要で、大量のデータをまとめて処理したい場面で広く使われています。代表的な用途には次のようなものがあります。

銀行の夜間バッチ:1日の取引をまとめて集計し、残高を更新する
給与計算:全社員の勤怠データから月末にまとめて給与を算出する
月次・年次の集計:売上や在庫を一定期間ぶんまとめて締める
大量データのレポート生成:たまったログから報告書を一括で作る

これらに共通するのは、まとめて処理することで効率が良くなる点です。さらに、利用者が少ない夜間など空いている時間帯に処理を回せば、システムの負荷を分散でき、日中の動作を妨げません。

📌
リアルタイムとの違い

バッチ(ためる)一括あとでまとめて処理リアルタイム(即時)要求即応答来たらすぐ処理

バッチ処理とよく対比されるのがリアルタイム処理です。リアルタイム処理は、要求が来るたびにその場ですぐ処理して応答を返す方式で、銀行ATMやオンライン予約のように「待たせられない」場面で使われます。

両者の違いを整理すると次のようになります。

項目バッチ処理リアルタイム処理
処理のタイミングたまってからまとめて要求のたびに即座に
即時性不要(あとで良い)必須(すぐ返す)
得意なこと大量データを効率処理1件ずつの即応答
夜間バッチ・給与計算ATM・予約システム

つまり、バッチは「即時性が不要なものを効率重視でまとめて処理」リアルタイムは「要求のたびに即応答」という関係です。どちらが優れているわけではなく、扱う仕事の性質に合わせて使い分けます。

📝
練習問題

Q1. バッチ処理の説明として最も適切なものはどれか。

Q2. バッチ処理の利用例として適切でないものはどれか。

Q3. バッチ処理を夜間に実行することが多い理由として最も適切なものはどれか。

関連コンテンツ