Definition „Stapelverarbeitung“ Was ist ein Batch Job?

Autor / Redakteur: zeroshope / Stephan Augsten

Bei einem Batch Job werden systemnahe Aufgaben automatisiert im Hintergrund und weitgehend ohne Nutzer-Einwirkung eingearbeitet. Heute ist die Stapelverarbeitung vor allem im Zusammenhang mit SAP-Systemen gängig. Dieser Ansatz bietet diverse Vorteile.

Anbieter zum Thema

Der Begriff „Batch Job“ geht auf Lochkarten-Stapel zurück, die gebildet wurden, um Aufgaben strukturiert nacheinander abzuarbeiten.
Der Begriff „Batch Job“ geht auf Lochkarten-Stapel zurück, die gebildet wurden, um Aufgaben strukturiert nacheinander abzuarbeiten.
(Bild gemeinfrei: WikiImages / Pixabay )

Der Begriff Batch Job („Stapelarbeit“) stammt noch aus den Anfangstagen der Computer. Damals war der interaktive Umgang mit Daten noch nicht möglich. Informationen wurden stattdessen über Lochkarten eingegeben. Da dies nicht zeitgleich möglich war, entstanden Lochkarten-Stapel, die nach und nach abgearbeitet wurden.

Bis zum heutigen Tag hat sich an diesem Konzept eines Batch Jobs grundlegend nicht geändert: Wichtige Aufgaben werden virtuell in einer Skript-Datei gestapelt und nacheinander abgearbeitet.

MS-DOS: Batch Jobs werden systemnah

Mit der Einführung von MS-DOS erlebten die Batch Jobs eine Evolution. Es setzte sich durch, dass diese betriebssystemnahe Dienste und Funktionen betreffen. In einer Batch-Datei – identifizierbar durch Dateiendungen wie .bat oder .cmd – wurden hierfür alle Kommandos abgespeichert, die nacheinander ablaufen.

Die Befehle hätten sonst vom Nutzer eingegeben werden müssen, was einen unnötigen Aufwand bedeutet hätte. Die Befehle waren jedes Mal einzugeben, weil sie das Betriebssystem im Prinzip nur auf die Nutzung durch den Anwender vorbereiteten. Bis heute ist die Batch-Datei für den Start von Windows vorhanden: In der Boot-Sequenz sehen Nutzer erst kurz einen MS-DOS-Bildschirm und dann den Start-Screen. Während dieses Ladens wird faktisch die Batch-Datei abgearbeitet.

Seit den 1990er Jahren werden Batch-Jobs immer häufiger auch zur einfachen Datenverarbeitung genutzt. Alle Informationen in Eingabedateien werden dabei nacheinander ausgewertet und gemäß dem eingegebenen Kommando behandelt. Ein Beispiel hierfür ist der Datentransfer von einem Speicherort zu einem anderen. Die Informationen werden nacheinander übertragen.

Batch Jobs in SAP-Systemen

In SAP-Systemen haben Batch Jobs ebenfalls ihren festen Platz gefunden. Hier handelt es sich um terminierte Programme, die im Hintergrund ohne Nutzereingriff ablaufen. Sie erhalten mehr Arbeitsspeicher zugeteilt als andere Anwendungen, um ihre Aufgaben möglichst effizient verrichten zu können. Die Batch-Job-Programme arbeiten mit umfangreichen Datenpaketen, die aufgrund ihres Volumens zu viel Arbeitsspeicher und Systemressourcen benötigen würden, wenn sie im Vordergrund ablaufen würden.

SAP teilt den Batch Jobs variierende Server-Kapazitäten zu. Tagsüber müssen diese mit weniger Ressourcen auskommen, damit die Nutzer in ihrer Arbeit nicht zu stark behindert werden. In der Nacht im sogenannten „Night Mode“ erhalten die Batch Jobs dagegen zusätzliche Kapazitäten, da weniger Nutzer Ressourcen benötigen. So zeigen sich einige Vorteile des Prinzips:

  • Die Nutzer-Arbeit wird nicht negativ beeinflusst (was früher durchaus der Fall war).
  • Die Programme erledigen die Batch Jobs möglichst effizient.
  • Ändert sich der Bedarf in die eine oder andere Richtung, kann die Kapazitätenzuteilung problemlos geändert werden.
  • Neue Batch Jobs können in die bestehende Hierarchie eingeordnet werden. Es kann also festgelegt werden, ob diese möglichst schnell abgearbeitet werden müssen oder nicht. In der Regel werden sie hierfür einem bestimmten Server zugeteilt, der entweder die wichtigsten oder die weniger bedeutsamen Aufgaben gespeichert hat.

Batch Jobs durchführen: Steuerungsprogramme notwendig

Um Batch Jobs durchzuführen und Nutzer-Eingriffe zu erlauben, benötigen die Systeme dedizierte Steuerungsprogramme. Diese enthalten die Steuerinformationen (per Job Control Language (JCL) hinterlegt) und die Befehle (als Batch Datei). Die Steuerung regelt, wie welche Dateien ausgewertet/ bearbeitet werden und was anschließend mit ihnen geschieht. Betriebssysteme haben in der Regel eine ganze Reihe von Steuerungsprogrammen – beispielsweise Installer oder Lösungen zur automatischen Backup-Erstellung.

(ID:46221023)