【ばっちしょり】

バッチ処理 とは?

💡 大量データを「まとめて一気に」処理する、夜間などに実行する仕組み
📌 このページのポイント
バッチ処理 vs リアルタイム処理 リアルタイム処理(1件ずつ) 1件 処理 1件 処理 即時 即時 バッチ処理(まとめて処理) タスクをためる 一括処理 まとめて効率よく 例:月末の給与計算、 夜間のデータ集計など 大量のデータをまとめて処理することで効率化
バッチ処理とリアルタイム処理の比較
ひよこ ひよこ

バッチ処理って何?

ペンギン先生 ペンギン先生

「夜中に1日分のデータを一気にまとめて処理する」みたいな方式だよ。銀行の口座残高の確定・給与計算・月次集計レポートの生成などは、リアルタイムでなくてもいいから夜間にバッチで実行するのが典型例。

ひよこ ひよこ

リアルタイム処理との違いは?

ペンギン先生 ペンギン先生

リアルタイム(オンライン)処理はユーザーの操作ごとに即座に処理する(ECサイトの購入確認など)。バッチは「ためておいてまとめて処理」。リアルタイムは高速性が必要、バッチは大量データを効率よく処理するのに向いている。

ひよこ ひよこ

Windowsのバッチファイル(.bat)とは違うの?

ペンギン先生 ペンギン先生

概念的には「まとめて実行する」という共通点があるけど、.batファイルは「コマンドを記述したWindowsのスクリプトファイル」のこと。バッチ処理システムとは別物。Linuxならシェルスクリプトがそれに相当する。

ひよこ ひよこ

バッチ処理が途中で失敗したらどうなるの?

ペンギン先生 ペンギン先生

途中で止まると「どこまで処理したか分からない」という問題が起きるんだ。だから実務では「べき等性(同じ処理を何回実行しても結果が同じ)」を意識して設計するのが鉄則だよ。たとえば「INSERT」ではなく「UPSERT(あれば更新、なければ挿入)」を使ったり、処理済みフラグを付けたりする。リカバリポイント(チェックポイント)を設けて、失敗した箇所から再開できるようにするのも大事なテクニックだね。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
バッチ処理って出てきたら「大量データを一括処理する方式、夜間などの決まったタイミングで実行する」と思えばOK!
📖 おまけ:英語の意味
「Batch Processing」 = 一括処理
💬 一束(batch)のデータをまとめて処理することから。コンピュータが高価だった時代に、夜間に大量ジョブをまとめて処理していた名残
← 用語集にもどる