バッチ処理とは? わかりやすく解説

バッチ‐しょり【バッチ処理】


バッチ処理

利用者(225-5)は、フォートランコボルベーシック、あるいはアルゴルのような一般的なプログラム言語 1特定の言語プログラム(225-8)を書くことによって、課題処理することができる。これらの言語は、データバンク 2を創り出し維持するのに使われるデータベース管理システム 2調査データ処理プログラム 3、あるいは統計パッケージ 4のようなコンピューター中央記憶装置(226-2)に保管されるデータ処理プログラム(226-9)を使うために考案されたものである情報コンピューター入力し結果を得るために用いられる方法は、データ処理方式に応じて異なことがある。バッチ処理 7では、普通の入出力装置は、カード・リーダー 5ライン・プリンター 6である。コンソール 8は、タイム・シェアリング方式 9におけるデータ処理のための普通の入出力装置である。いずれの場合においても、入力装置コンピューターとは場所的に離れている場合があり、これらの条件の下でのデータ処理は、遠隔の端末装置 10によって達成される


バッチ処理

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/12/22 10:27 UTC 版)

バッチ処理(バッチしょり、: batch processing)はバッチ単位で行なわれる処理である。特に以下の2つの意味で用いられる。

  1. コンピュータでひとまとまりのデータを一括して処理する方式。本項で詳述する。
  2. ひとつの設備である程度まとまった時間、または単位操作ごとに処理を区切り、原材料をこの区切りごとにまとめて投入する処理のこと。回分処理(かいぶんしょり)も同義。発酵工程やバッチ殺菌などは典型的なバッチ処理である。反対語は逐次処理または連続処理

コンピュータのバッチ処理

コンピュータのデータ処理におけるバッチ処理は、ひとまとまりのデータを一括して処理する方式である[1]。逐次生み出されるデータを一定期間・一定量集めたものをバッチといい、このバッチ単位で処理を行なう方式がバッチ処理である。

バックアップ、フィルタリング、ソートなどの特定のデータ処理タスクは、個々のデータトランザクションで実行するには計算負荷が高く、非効率的となる場合がある。代わりに、データシステムはそのようなタスクをバッチで(まとめて)処理する。大量の反復的なデータジョブを定期的に完了するためにコンピュータが使用する方法である[2]

比較される方式として、逐次生み出されるデータをストリームとして捉え、到着したデータを順次扱うストリーム処理がある[3]。データをキューイングせず即時処理するリアルタイム処理とも比較される。

バッチ処理を直列につなぎパイプライン処理とする(パイプラインを構築する)ことがしばしば行なわれる。

MS-DOSおよびMicrosoft Windowsバッチファイルは複数のコマンド行を連続で自動実行できるようにまとめて記述したテキストファイルであり、プログラムの一種である[4]Unix系オペレーティングシステムシェルスクリプトほどの柔軟性はないものの、コマンド群を定期的に繰り返し実行する際に使われ、いずれもバッチ処理に応用される。例えば複数のソースファイルからなるプログラムをコンパイルしてリンクし、実行ファイルを生成(ビルド)するとき、プログラムを修正するたびに毎回コマンドラインシェル(コマンドラインインタプリタ)上でコンパイラに渡す複雑なオプションを指定するためのコマンドを手入力するのは骨が折れるし、途中で入力ミスをしてしまうと最初からやり直しになってしまうこともある。バッチファイルやスクリプトファイルにあらかじめコマンド群を記述しておけば、次回からはそのファイルを使って実行するだけで済み、作業を自動化することができる[注釈 1]。定期的なデータのバックアップや集計作業などにも同じことが言える。ただし、狭義のバッチ処理は単なる自動化にとどまらず、一定期間または一定量蓄積されたデータをまとめて効率的に処理することを指す。

OpenGLやバージョン11までのDirect3Dは、GPUに描画準備をさせるためのレンダーステート(合成方式などの描画設定)の変更や、描画命令を発行するためのドローコールのオーバーヘッドが大きい。スプライトフォント(文字)の画面描画(レンダリング)をする際、1つのスプライトや1つの文字を描画するたびに設定変更メソッドや描画メソッドを呼び出してしまうと、大量に描画する際のオーバーヘッドが無視できないものとなって低速化してしまう。そのため、複数のスプライトの描画リクエストを一定量キューイングしておき、同じレンダーステートや同じテクスチャを使って描画できるものはまとめてドローコールを発行するバッチ処理で効率化を図るのが一般的である。Direct3D 9/10では公式の拡張ライブラリD3DXにスプライトバッチ機能が用意されていた[5][6]。Direct3D 11上に構築されたDirect2D 1.3にも、スプライトバッチ機能が用意されている[7]

「バッチ (batch)」はプログラミングをする際、紙テープパンチカードを利用していた時代より使用され始めた言葉である。カードまたは紙テープはシステムオペレーターに渡され、オペレーターはタスクスケジューリングをし、コンピュータにカードまたは紙テープを投入していった。スケジューリングされたタスクは直ちにシステムに入れられたのではなく、一緒にまとめて投入されたので(バッチとは、複数の似ているものを1つのグループとして生産、処理すること、または一緒に集めて1つのユニットとして扱うこと。en:Batch processingより)、これらのタスクの集まりを「バッチジョブ」と呼ぶようになった[要出典]

バッチジョブは一度設定されると人間の手を煩わせることなく動作する非対話型処理である。そのため入力データもスクリプトやコマンド行パラメータを通してあらかじめ用意される。この点でユーザーの入力を必要とする対話型プログラムとは対極にある。

バッチジョブは相互対話式の思想に基づく処理の仕組みではないが、IBMCICS のようなトランザクション処理システムもテクニカルな視点から見ればバッチジョブとして動いている。もっとも、その部分はユーザーから隠れて見えない部分である。

様々な計算ジョブを制御された順番に行なう強力なユーティリティがUNIXやWindows向けに存在する。このようなユーティリティをジョブ管理システムという。基本的なジョブ管理システムはモダンなデスクトップOSやサーバーOSであれば標準ツールとして搭載されているほか、各種OS用の強力な商用パッケージも市販されている。

NECの情報管理ソフトウェアの中にInfoFrame DataBoosterという製品がある。これは通常夜間行われる日次月次のバッチ処理を高速化しようというもので、数十GB単位の大量のメモリと専用の処理アルゴリズムによって、時間のかかる中間ファイルの生成を行なわないところに特徴がある。

システム利用者が少ない・あるいはサービス提供時間外でシステム負荷が低い夜間に実行されるバッチ処理は「夜間バッチ」と呼ばれる。何らかの事情で夜間バッチが事前の想定時刻までに処理を完了できなかった場合は「突き抜け」と呼ばれることがある[8]

利点

バッチ処理には以下のような利点がある。

  • 多くのユーザーがコンピュータのリソースを共有できる。
  • 処理をコンピュータのリソースがあまり忙しくない時間帯(多くは夜間、休日)にシフトできる。
  • 人間がついていなくてもコンピュータのリソースが暇にならないように最大限有効活用できる。
  • 高価なコンピュータをフルに活用することで費用対効果の効率向上に寄与する。
  • サービスを停止して行なうバッチ処理の場合、データの整合性を保つことが容易となる。

欠点

  • 即時性が必要な処理には向かない。
  • 夜間バッチを使用して「突き抜け」が発生した場合、本来のサービスと合わせて負荷がかかり大規模なシステム障害を引き起こす可能性がある。

バッチ管理システム

  • Spring Batch英語版[※ 1]
  • Java Batch System[※ 2] - 現在β版
  • blancoBatchProcess[※ 3] - Excelから生成
  • SUNBATCH - サントリーシステムテクノロジー
  • ParallelFrame - メディア情報開発
  • オブジェクトワークス/BT JobManager - NRI
  • TERASOLUNA Batch Framework for Java - NTTデータ
  • Web Solid Framework - ワイ・エス・ピー
  • WebSphere Extended Deployment - IBM
  • Batch Execution and Control Environment for Java (JBeX) - 日本IBM
  • Quartz Enterprise Job Scheduler[※ 4]
  • Real timeFramework Architecture - フューチャーアーキテクト
  • Batch.dart[※ 5][※ 6]

脚注

注釈

  1. ^ もっとも、ビルド作業の自動化にはMakefileMSBuild用のソリューション/プロジェクトファイルのような専用形式が使われることのほうが多い。

出典

関連項目


バッチ処理

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/16 14:10 UTC 版)

シェルスクリプト」の記事における「バッチ処理」の解説

シェルスクリプト使えばコマンドラインインタフェース人手入力していたコマンド列を自動的に実行でき、一連のコマンド連続的に実行できる例えば、あるディレクトリC言語ソースファイル3つあるとき、4つコマンド人手入力してビルドする代わりに次のようなCシェルスクリプト作成して、 名称を build としてそのディレクトリ置けばビルド自動実行できる#!/bin/cshecho compiling...cc -c foo.ccc -c bar.ccc -c qux.ccc -o myprog foo.o bar.o qux.o echo done. このようなスクリプト用意しておけば、ユーザーソースファイル編集し、その途中で ./build を実行すれば更新され実行ファイル生成評価し編集に戻ることもできる。ただし1980年代以降このようなスクリプトmake などの専用ユーティリティ置換されている。

※この「バッチ処理」の解説は、「シェルスクリプト」の解説の一部です。
「バッチ処理」を含む「シェルスクリプト」の記事については、「シェルスクリプト」の概要を参照ください。

ウィキペディア小見出し辞書の「バッチ処理」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ

「バッチ処理」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。



固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「バッチ処理」の関連用語

バッチ処理のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



バッチ処理のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
コンテンツはAttribution-Share Alike 3.0 Unportedのライセンスで利用することができます。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのバッチ処理 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのシェルスクリプト (改訂履歴)、バッチ処理 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS