<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Stapelverarbeitung</id>
	<title>Stapelverarbeitung - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Stapelverarbeitung"/>
	<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Stapelverarbeitung&amp;action=history"/>
	<updated>2026-04-08T04:06:57Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Demo Wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://demowiki.knowlus.com/index.php?title=Stapelverarbeitung&amp;diff=11474&amp;oldid=prev</id>
		<title>imported&gt;MARTin.Hinterdorfer: Wikilink aus Überschrift entfernt</title>
		<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Stapelverarbeitung&amp;diff=11474&amp;oldid=prev"/>
		<updated>2023-11-11T14:34:12Z</updated>

		<summary type="html">&lt;p&gt;Wikilink aus Überschrift entfernt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Stapelverarbeitung&amp;#039;&amp;#039;&amp;#039;, auch &amp;#039;&amp;#039;&amp;#039;Batchverarbeitung&amp;#039;&amp;#039;&amp;#039; genannt, ist ein Begriff aus der [[Datenverarbeitung]] und bezeichnet die Arbeitsweise von [[Computerprogramm]]en, bei der die in einem oder mehreren [[Datenbasis|Datenbeständen]] als [[Eingabe und Ausgabe|Eingabe]] bereitgestellte &amp;#039;&amp;#039;Menge an Aufgaben oder [[Daten#Informatik|Daten]]&amp;#039;&amp;#039; vollständig, automatisch und meist [[sequentieller Zugriff|sequenziell]] verarbeitet wird.&lt;br /&gt;
&lt;br /&gt;
Die komplementäre Bearbeitungsform wird &amp;#039;&amp;#039;Dialogverarbeitung&amp;#039;&amp;#039; genannt. Dabei verarbeitet das [[Computerprogramm|Programm]] genau einen Vorgang (eine &amp;#039;&amp;#039;[[Transaktion (Informatik)|Transaktion]]&amp;#039;&amp;#039;), der in der Regel von einem [[Benutzer]] [[Dialogcomputer|interaktiv]] über einen [[Bildschirmarbeitsplatz]] zur Bearbeitung angestoßen wird. Danach wartet das Programm auf weitere Transaktionen; evtl. parallel eintreffende Aufträge muss es nacheinander bzw. [[Multithreading|voneinander getrennt]] verarbeiten.&lt;br /&gt;
&lt;br /&gt;
== Begriffsherkunft ==&lt;br /&gt;
Die Bezeichnung &amp;#039;&amp;#039;Stapelverarbeitung&amp;#039;&amp;#039; stammt aus der Anfangszeit der Datenverarbeitung, als interaktive Verarbeitung noch nicht möglich war. [[Datensatz|Datensätze]] lagen damals häufig in Form von [[Lochkarte]]n vor und wurden vom jeweiligen [[Computerprogramm]] – dessen [[Programmcode]] oft&amp;lt;!--Pgme wurden zB auch über Lochstreifen geladen--&amp;gt; ebenfalls als Lochkartenstapel vorlag – als Kartenstapel ({{enS|batch}}) nacheinander abgearbeitet. Als später die Lochkarte von anderen Speichermedien, z.&amp;amp;nbsp;B. [[Magnetband|Magnetbändern]] und [[Festplattenlaufwerk|Plattenlaufwerken]], abgelöst wurde und auch interaktives Arbeiten mit dem [[Dialogcomputer]] möglich wurde (mit direkten Eingaben über ein [[Terminal (Computer)|Terminal]]), blieb der Begriff erhalten und wird bis heute für nicht-interaktive Datenverarbeitung verwendet: Man gibt einen Auftrag vor; dieser wird vom Computer mit allen dazugehörenden Daten „ohne Eingriff des Benutzers der Reihe nach abgearbeitet“.&amp;lt;ref&amp;gt;[http://www.it-service24.com/lexikon/b/bat-dateien/ IT-Service24]&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://wirtschaftslexikon.gabler.de/Archiv/56393/stapelbetrieb-v9.html Springer Gabler Verlag (Herausgeber), &amp;#039;&amp;#039;Gabler Wirtschaftslexikon&amp;#039;&amp;#039;: &amp;#039;&amp;#039;Stichwort: Stapelbetrieb&amp;#039;&amp;#039;]&amp;lt;/ref&amp;gt; Auch die Arbeitsergebnisse liegen bei dieser Verarbeitungsform i.&amp;amp;nbsp;d.&amp;amp;nbsp;R. als ‚Menge‘ (ebenfalls {{enS|batch}}) vor, zum Beispiel als Belege, Listen ([[Bericht (Informatik)|Berichte]]), neue oder geänderte [[Datenbasis|Datenbestände]] usw.&lt;br /&gt;
&lt;br /&gt;
== Varianten der Stapel-/Batchverarbeitung ==&lt;br /&gt;
Der Begriff &amp;#039;&amp;#039;Stapelverarbeitung&amp;#039;&amp;#039; hat zwei voneinander abweichende Bedeutungen:&lt;br /&gt;
&lt;br /&gt;
=== Verarbeitung von Daten im Stapelbetrieb ===&lt;br /&gt;
In der kommerziellen Datenverarbeitung bezeichnet &amp;#039;&amp;#039;Stapelverarbeitung&amp;#039;&amp;#039; das automatische, sequentielle und vollständige Abarbeiten der in einer oder mehreren [[Eingabe und Ausgabe|Eingabedatei(en)]] enthaltenen [[Daten]]. Das Programm läuft dabei nach dem Start vollkommen selbstständig und i.&amp;amp;nbsp;d.&amp;amp;nbsp;R. ohne jegliche Benutzerinteraktion ab; Ausnahmen könnten z.&amp;amp;nbsp;B. Fehlersituationen mit der Notwendigkeit von [[Systemadministrator|Operator]]-Eingriffen sein. Es stellt seine Ergebnisse in Form von [[Datei]]en oder (über Insert / Update / Delete) in [[Datenbank]]en oder über andere [[Peripheriegerät|Ausgabegeräte]] (z.&amp;amp;nbsp;B. [[Drucker (Gerät)|Drucker]]) zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
;Beispiele für Stapel-Datenverarbeitung:&lt;br /&gt;
* Rechnungswesen: Einbuchen der Zahlungseingänge eines Arbeitstages; führt zu neuen Kontoständen&lt;br /&gt;
* Versandhandel: Erstellen von Rechnungen für ausgelieferte Artikel; zum Versand an die Kunden&lt;br /&gt;
* Mahnwesen: Erstellen von Mahnungen für Kunden, deren Rechnungen nach x Tagen noch unbezahlt sind&lt;br /&gt;
* Einzelhandel: Erstellen einer Verkaufsstatistik aus allen Verkäufen des laufenden Monats, mit Anzahl und Umsatzsumme je Artikelgruppe und Filiale&lt;br /&gt;
* Fotobearbeitung: Drehen aller Fotos (in einem bestimmten Ordner) um 90 Grad nach links&lt;br /&gt;
* Rechenzentrum: Drucken von Daten, die von vorher gelaufenen Programmen zwischengespeichert wurden (siehe auch [[Spooling]])&lt;br /&gt;
* [[Migration (Informationstechnik)#Datenmigration|Datenmigration]]: Konvertieren von Daten/Dateien in ein anderes [[Dateiformat]] (siehe auch [[Dateikonverter]])&lt;br /&gt;
&lt;br /&gt;
Die Struktur von Stapelprogrammen folgt häufig standardisierten Konzepten, zum Beispiel der [[Normierte Programmierung|normierten Programmierung]], weil der Ablauf in der internen Verarbeitung – bis auf aufgabenspezifische Details – identisch oder ähnlich sein kann.&lt;br /&gt;
&lt;br /&gt;
=== {{Anker|DOS|Kommandozeileninterpreter}}Ausführen von Shellkommandos ===&lt;br /&gt;
{{Hauptartikel|Stapelverarbeitungsdatei}}&lt;br /&gt;
Der Begriff &amp;#039;&amp;#039;Stapelverarbeitung&amp;#039;&amp;#039; wird häufig auch für das Abarbeiten betriebssystemnaher Dienste und Aufgaben verwendet. In diesem Zusammenhang ist v.&amp;amp;nbsp;a. durch [[PC-kompatibles DOS|DOS]] auf dem [[IBM-PC-kompatibler Computer|PC]] ([[MS-DOS]], nach dem Erfolg des [[IBM Personal Computer|IBM&amp;amp;nbsp;PC]] mit dem nahezu identischen [[PC&amp;amp;nbsp;DOS]]), der Begriff &amp;#039;&amp;#039;Stapelverarbeitungsdatei&amp;#039;&amp;#039;, von {{enS|Batch File}} (daher auch oft &amp;#039;&amp;#039;Batch-Datei&amp;#039;&amp;#039;), bekannt geworden. Stapelverarbeitungsdateien sind technisch gesehen [[Textdatei]]en, die eine Reihe von [[Befehl (Computer)|Befehlen]] enthalten. Bei der Ausführung einer Stapelverarbeitungsdatei werden die enthaltenen Kommandos zeilenweise vom Befehlsinterpreter des jeweiligen [[Betriebssystem]]s abgearbeitet.&lt;br /&gt;
&lt;br /&gt;
Prinzipiell können alle Kommandos, die auf der [[Kommandozeile#Betriebssysteme|Befehlszeile]] (auch Eingabeaufforderung oder [[Prompt]]) des [[Kommandozeileninterpreter]]s – der [[Shell (Betriebssystem)|Shell]] –  möglich sind, auch in einer Stapelverarbeitungsdatei angewendet werden, und umgekehrt. Damit hängen die Skript-Fähigkeiten einer {{lang|en|Batch}}-Datei direkt vom verwendeten [[Interpreter]] der aktiven Shell ab. Das Äquivalent von Stapelverarbeitungsdateien unter [[Unixoides System|Unix-Betriebssystemen]] sind [[Shellskript]]e. Insgesamt findet der Begriff &amp;#039;&amp;#039;Skript&amp;#039;&amp;#039; anstelle von Stapelverarbeitungsdatei für diese Art der Verarbeitung immer mehr Verwendung, wie beispielsweise [[PowerShell]]-Skripte.&lt;br /&gt;
&lt;br /&gt;
== Steuern und Starten von Batch-Jobs ==&lt;br /&gt;
Das Starten von Anwenderprogrammen zur Stapelverarbeitung geschieht über sog. [[Job (EDV)|Jobs]], die von Systemdiensten zur &amp;#039;&amp;#039;Job-Steuerung&amp;#039;&amp;#039; verwaltet werden. Je nach [[Betriebssystem]] werden diese Dienste unterschiedlich genannt.&lt;br /&gt;
&lt;br /&gt;
Zur Steuerung sind Steuerinformationen nötig, die (z.&amp;amp;nbsp;B. auf [[IBM]]-Betriebssystemen) mittels [[Job Control Language|JCL]] hinterlegt werden. Inhalt dieser Vorgaben sind in erster Linie die jeweiligen Programmaufrufe, ggf. erforderliche [[Parameter (Informatik)|Parameter]], die Namen (mit Pfad- und Laufwerksangabe) für zu verarbeitende und zu erzeugende Dateien etc. Das Job-Steuerungssystem verwaltet die Jobs und startet sie zu einem definierten Zeitpunkt und/oder nach einem (vorher eingetretenen) Ereignis, z.&amp;amp;nbsp;B. dem erfolgreichen Ende eines vorher ausgeführten Programms. Batch-Jobs werden daher oft lastoptimierend eingesetzt, d.&amp;amp;nbsp;h. dann bearbeitet, wenn wenig interaktive Arbeit anfällt (nachts, am Wochenende). Dies kann gleichermaßen für [[Anwendungsprogramm]]e und für [[Systemsoftware|Systemprogramm]]e (z.&amp;amp;nbsp;B. zur Datensicherung) zutreffen.&lt;br /&gt;
&lt;br /&gt;
Die Verarbeitung von Batch-Jobs war lange eine Domäne von [[Mainframe]]s. Auf Systemen, die unter dem [[IBM]]-Betriebssystem [[z/OS]] (vormals [[Multiple Virtual Storage|MVS]]) laufen, werden sie normalerweise durch eine Steuerungssoftware (z.&amp;amp;nbsp;B. [[Operation Planning and Control|OPC]]) gesteuert, können aber auch durch einen [[Time-Sharing Option|TSO]]-Benutzer oder einen bereits laufenden Job oder eine sogenannte Started-Task ausgelöst werden.&lt;br /&gt;
&lt;br /&gt;
Bei z/OS sind Batch-Jobs in [[Job Control Language|JCL]] geschrieben und normalerweise in einem [[Partitioned Data Set]] (JCL-Library) mit Recordformat FB und Recordlänge 80 abgelegt. Eine Art von &amp;#039;Schachtelung&amp;#039; ist durch die Verwendung &amp;#039;&amp;#039;katalogisierter Prozeduren&amp;#039;&amp;#039; möglich. Administrative Arbeiten, welche bei Unix mittels [[Shellskript]]en durchgeführt werden, werden bei z/OS heutzutage sehr oft mit [[REXX]]-Skripten unter TSO durchgeführt. Die Batch-Jobs werden in erster Linie für automatisierte Verarbeitungen (oft Massenverarbeitungen) eingesetzt. Das Betriebssystem enthält zur Jobsteuerung ein [[Job Entry Subsystem]] &amp;#039;&amp;#039;JES2&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;JES3&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Batch-Jobs analog zu denen der z/OS-Mainframes sind inzwischen auch auf [[Unix]]-basierten Servern möglich und insbesondere im [[Hochleistungsrechnen]] auch üblich. Hierzu werden spezielle Batchjob-Scheduler verwendet, die insbesondere die Herausforderungen von programminterner Parallelität handhaben können. Einfache Stapelverarbeitung ist mittels [[Cron]]jobs auf Unix/[[Linux]] denkbar.&lt;br /&gt;
&lt;br /&gt;
Unter dem Betriebssystem [[OpenVMS]] werden Batch-Jobs, die z.&amp;amp;nbsp;B. mittels der Kommandosprache [[Digital Command Language|DCL]] programmiert werden können, durch sogenannte Batch-Queues unterstützt. Diese Queues können auf vielseitige Weise eingerichtet werden und sorgen für eine automatisierte Abarbeitung der Batch-Jobs.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Eingabeaufforderung]]&lt;br /&gt;
* [[Kommandozeileninterpreter]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
{{Wikibooks|Batch-Programmierung|Informationen zur Windows-Batch-Programmierung}}&lt;br /&gt;
* Matthias Schöpe: [http://computer-masters.de/tutorial-windows-batch-dateien-erstellen-und-nutzen/ &amp;#039;&amp;#039;Windows Batch-Dateien erstellen und nutzen.&amp;#039;&amp;#039;] In: &amp;#039;&amp;#039;Computer-Masters.com.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Praktische Informatik]]&lt;/div&gt;</summary>
		<author><name>imported&gt;MARTin.Hinterdorfer</name></author>
	</entry>
</feed>