Batch-Verarbeitung und Workload-Orchestrierung: Ein Überblick

Was ist Batch-Workload-Verarbeitung?

Batch-Workload-Verarbeitung bezieht sich auf Gruppen von Aufträgen (Batches), die zur gleichen Zeit verarbeitet werden sollen. Traditionell werden Batch-Workloads in Batch-Fenstern verarbeitet, d.h. in Zeiträumen, in denen die CPU-Auslastung insgesamt niedrig ist (normalerweise über Nacht). Der Grund dafür ist ein doppelter:

  1. Batch-Workloads können eine hohe CPU-Auslastung erfordern und damit Ressourcen belegen, die für andere betriebliche Prozesse während des Geschäftstages benötigt werden
  2. Batch-Workloads werden in der Regel zur Verarbeitung von Transaktionen und zur Erstellung von Berichten verwendet, z. B. zur Erfassung aller Verkaufsdatensätze, die im Laufe des Geschäftstages erstellt wurden

Heute erfolgt die Batch-Verarbeitung über Job Scheduler, Batch-Verarbeitungssysteme, Workload-Automatisierungslösungen und betriebssystemeigen Anwendungen. Das Stapelverarbeitungstool empfängt die Eingabedaten, berücksichtigt die Systemanforderungen und koordiniert die Zeitplanung für die Verarbeitung großer Mengen. Die Stapelverarbeitung unterscheidet sich von der Stromverarbeitung dadurch, dass die Stapelverarbeitung nicht-kontinuierliche Informationen erfordert.

Eine Geschichte der Stapelverarbeitung

Die Stapelverarbeitung hat ihre Wurzeln in der Vorgeschichte der Computer. Bereits 1890 verwendete das United States Census Bureau einen elektromechanischen Tabulator, um die Daten der Volkszählung in den USA zu erfassen. Herman Hollerith, der den Tabulator erfand, gründete später das Unternehmen, aus dem später IBM hervorging.

Der Supercomputer CDC 6600, ca. 1964 / Foto von Arnold Reinhold

Bis Mitte des 20. Jahrhunderts wurden Stapelverarbeitungsaufträge mit auf Karten gestanzten Daten ausgeführt. In den 1960er Jahren, mit der Entwicklung der Multiprogrammierung, begannen Computersysteme, mehrere Stapelverarbeitungsaufträge gleichzeitig auszuführen, um Daten von Magnetbändern anstelle von Lochkarten zu verarbeiten.

Als Großrechner weiterentwickelt und leistungsfähiger wurden, wurden mehr Stapelverarbeitungsaufträge ausgeführt, und so wurden Anwendungen entwickelt, um sicherzustellen, dass Stapelverarbeitungsaufträge nur dann ausgeführt wurden, wenn genügend Ressourcen vorhanden waren, um Verzögerungen zu vermeiden. So entstanden die modernen Stapelverarbeitungssysteme.

Beispiele für die Stapelverarbeitung

Stapelverarbeitungsanwendungen finden sich in Banken, Krankenhäusern, in der Buchhaltung und in jeder anderen Umgebung, in der eine große Menge an Daten verarbeitet werden muss. Zum Beispiel werden Berichtsgenerationen nach Geschäftsschluss ausgeführt, wenn alle Kreditkartentransaktionen abgeschlossen sind. Versorgungsunternehmen sammeln Daten über die Kundennutzung und führen Batch-Prozesse aus, um die Rechnungsstellung zu bestimmen.

In einem anderen Anwendungsfall führt ein Unternehmen für die Verwaltung von Finanzdaten über Nacht Batch-Prozesse aus, die Finanzberichte direkt an die Banken und Finanzinstitute liefern, die sie beliefern.

Vorteile und Nachteile der Batch-Verarbeitung

Die Batch-Verarbeitung ist nützlich, weil sie eine Methode zur Verarbeitung großer Datenmengen bietet, ohne wichtige Computerressourcen zu belegen. Wenn ein Gesundheitsdienstleister Abrechnungsdatensätze aktualisieren muss, ist es vielleicht am besten, einen Batch über Nacht laufen zu lassen, wenn die Anforderungen an die Ressourcen gering sind.

Auch hilft die Batch-Verarbeitung, Ausfallzeiten zu reduzieren, indem Aufträge ausgeführt werden, wenn die Computerressourcen verfügbar sind.

Die Tools für die Batch-Verarbeitung sind jedoch oft in ihrem Umfang und ihrer Leistungsfähigkeit begrenzt. Häufig sind benutzerdefinierte Skripte erforderlich, um das Batch-System in neue Datenquellen zu integrieren, was bei sensiblen Daten zu Problemen mit der Cybersicherheit führen kann. Herkömmliche Batch-Systeme können auch schlecht für Prozesse geeignet sein, die Echtzeitdaten erfordern, z. B. Stream Processing oder Transaktionsverarbeitung.

Hält Ihr Rechenzentrum mit dem Geschäft Schritt?

Erforschen Sie, wie Sie die Komplexität Ihres Rechenzentrums mit einer unternehmensweiten Job Scheduling-Lösung überwinden können.

Moderne Stapelverarbeitungssysteme

Moderne Stapelverarbeitungssysteme bieten eine Reihe von Funktionen, die es Teams erleichtern, hochvolumige Workloads zu verwalten. Dazu können ereignisbasierte Automatisierung, Einschränkungen und Echtzeitüberwachung gehören. Diese modernen Funktionen tragen dazu bei, dass Batches nur dann ausgeführt werden, wenn alle erforderlichen Daten verfügbar sind, wodurch Verzögerungen und Fehler reduziert werden.

Um Verzögerungen weiter zu reduzieren, enthalten moderne Batch-Verarbeitungssysteme Lastausgleichsalgorithmen, die sicherstellen, dass Batch-Aufträge nicht an Server mit wenig Speicher oder unzureichenden CPUs gesendet werden.

Mit fortschrittlichen Funktionen zur Datums- und Zeitplanung lassen sich Batches unter Berücksichtigung von Feiertagen, Steuerkalendern, mehreren Zeitzonen und vielem mehr planen.

Aufgrund des wachsenden Bedarfs an Echtzeitdaten und der zunehmenden Komplexität der modernen Datenverarbeitung entscheiden sich viele IT-Organisationen für Workload-Automatisierungs- und Orchestrierungsplattformen, die fortschrittliche Tools für die Datenverwaltung und -integration bieten.

Batch-Verarbeitung in der Cloud

Die moderne IT-Abteilung ist vielfältig, verteilt und dynamisch. Anstatt sich auf homogene Mainframes und lokale Rechenzentren zu verlassen, werden Batch-Prozesse in hybriden Umgebungen ausgeführt. Dafür gibt es einen guten Grund.

Wie bereits erwähnt, sind Batch-Prozesse häufig ressourcenintensiv. Heutzutage, mit dem Wachstum von Big Data und Online-Transaktionen, können Batch-Workloads ziemlich viel erfordern. Die Nutzung einer Cloud-Infrastruktur gibt der IT-Abteilung die Möglichkeit, Rechenressourcen je nach Bedarf bereitzustellen, anstatt physische Server zu installieren, die wahrscheinlich einen Großteil des Tages ungenutzt wären.

Die Datenmenge, die die IT-Abteilung verwalten muss, um den Geschäftsanforderungen gerecht zu werden, wächst weiter, und die Tools für Batch-Workloads entwickeln sich weiter, um diese Anforderungen zu erfüllen. Die IT-Abteilung verfügt beispielsweise nicht über die erforderlichen Ressourcen, um jeden ETL-Prozess manuell auszuführen oder VMs manuell zu konfigurieren, bereitzustellen und zu deprovisionieren. Stattdessen werden Batch-Workload-Tools zur Automatisierung und Orchestrierung dieser Aufgaben in End-to-End-Prozessen eingesetzt.

Beispielsweise kann ein Automatisierungs- und Orchestrierungs-Tool verwendet werden, um Daten in und aus verschiedenen Komponenten eines Hadoop-Clusters als Teil eines End-to-End-Prozesses zu verschieben, der die Bereitstellung von VMs, die Ausführung von ETL-Jobs in einer BI-Plattform und die anschließende Bereitstellung dieser Berichte per E-Mail umfasst.

Da Unternehmen immer stärker von Cloud-basierten Ressourcen und Anwendungen abhängig werden, wird die Fähigkeit zur Orchestrierung von Job Scheduling und Batch-Workloads über verschiedene Plattformen hinweg immer wichtiger.

Orchestrierung von Batch-Workloads

Automatisierungs- und Orchestrierungstools sind zunehmend erweiterbar, wobei mehrere Workload-Automatisierungslösungen bereits universelle Konnektoren und Low-Code-REST-API-Adapter anbieten, die es ermöglichen, praktisch jedes Tool oder jede Technologie ohne Skripterstellung zu integrieren.

Dies ist wichtig, denn anstatt Job Scheduler, Automatisierungstools und Batch-Prozesse in Silos laufen zu lassen, kann die IT-Abteilung mit einem Workload-Orchestrierungs-Tool alle Batch-Jobs zentral verwalten, überwachen und Fehler beheben.

IT-Orchestrierungs-Tools können beispielsweise automatisch Protokolldateien für jede Batch-Instanz generieren und speichern, so dass die IT-Abteilung bei Problemen schnell die Grundursachen identifizieren kann. Durch Echtzeit-Überwachung und -Warnungen kann die IT-Abteilung auf Verzögerungen, Ausfälle und unvollständige Läufe reagieren bzw. diese verhindern und so die Reaktionszeiten verkürzen, wenn Probleme auftreten.

Automatische Neustarts und Workflows zur automatischen Behebung von Problemen sind ebenfalls immer häufiger anzutreffen, während Batch-Aufträge priorisiert werden können, um sicherzustellen, dass die Ressourcen zur Laufzeit verfügbar sind.

Außerdem ermöglichen erweiterbare Batch-Workload-Tools die Konsolidierung von Legacy-Skripten und Batch-Anwendungen, so dass die IT-Abteilung ihre Betriebskosten vereinfachen und senken kann.

Zukunft der Batch-Verarbeitung

Traditionelle Batch-Planungstools sind leistungsstarken Automatisierungs- und Orchestrierungsplattformen gewichen, die die für die Bewältigung von Veränderungen erforderliche Erweiterbarkeit bieten. Sie ermöglichen es der IT, in hybriden und Multi-Cloud-Umgebungen zu arbeiten, und können den Bedarf an menschlichen Eingriffen drastisch reduzieren.

Machine-Learning-Algorithmen werden eingesetzt, um VMs auf intelligente Weise Batch-Workloads zuzuweisen, um Leerlaufzeiten und ungenutzte Ressourcen zu reduzieren. Dies ist entscheidend für Teams, die Workloads mit hohem Volumen oder eine große Anzahl virtueller oder Cloud-basierter Server verwalten.

Mit maschinellem Lernen, das in Echtzeit abläuft, können zusätzliche Ressourcen reserviert werden, wenn bei einem SLA-kritischen Workload das Risiko einer Überschreitung besteht. Dazu gehört auch die Bereitstellung zusätzlicher virtueller oder Cloud-basierter Maschinen auf der Grundlage einer dynamischen Nachfrage. In Verbindung mit der automatischen Problembehebung ist dies ein leistungsstarkes Tool, das sicherstellt, dass die Servicebereitstellung für den Endbenutzer oder externen Kunden nicht verzögert wird.

Langfristig wird die IT immer vielfältiger und verteilter, und die Arten von Workloads, für die die IT verantwortlich ist, werden weiter zunehmen. Die Reifung neuer Technologien – künstliche Intelligenz, IoT, Edge Computing – wird die IT-Teams unter neuen Druck setzen, neue Anwendungen und Technologien schnell zu integrieren.

Die IT verändert sich rasant, aber einige Dinge, wie die Stapelverarbeitung, bleiben gleich.

Wollen Sie sehen, wie wir Workload-Automatisierung einfach machen?

Terminieren Sie eine Demo, um zu sehen, wie unsere Experten Jobs ausführen, die Ihren Anwendungsfällen in ActiveBatch entsprechen. Holen Sie sich Antworten auf Ihre Fragen und erfahren Sie, wie einfach es ist, Ihre Jobs in ActiveBatch zu erstellen und zu verwalten

Brian McHugh

Brian ist Mitarbeiter des Blogs IT Automation Without Boundaries, wo er über IT-Nachrichten, Veranstaltungen und Thought Leadership berichtet. Er hat bereits für mehrere Publikationen im Großraum New York City geschrieben, sowohl in gedruckter Form als auch online, und hat seinen Bachelor-Abschluss in Journalismus an der Rowan University gemacht. Wenn er nicht gerade über IT-Orchestrierung und -Modernisierung schreibt, steckt er die Nase in einem guten Buch oder baut mit seinen Kindern Lego-Raumschiffe.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.