Donnerstag, 24. Mai 2012


Buch-Tipp

Spring Batch in Action

(Link zum Artikel: http://www.createordie.de/jaxenter/buchtipps/000899)
  • Autor/in: Arnaud Cogoluegnes, Thierry Templier, Gary Gregory und Olivier Bazoud
  • Verlag: Manning
  • Seiten: 504
  • erschienen: 2011
  • Preis: 46,99 Euro
  • ISBN: 9781935182955

Batch-Verarbeitung scheint ein altmodisches Thema zu sein, aber es ist nach wie vor wichtig in der Softwareentwicklung. Sehr viele Projekte nutzen Batches, um Daten zu importieren, zu exportieren oder zum Beispiel eine große Anzahl von Rechnungen zu drucken. Batches zeichnen sich durch große Datenmengen und eine tägliche Taktung aus. Die Herausforderungen bei der Implementierung von Batches sind die großen Datenmengen, die notwendig vollständige Automatisierung, die erforderliche Zuverlässig und die Performanceoptimierungen, die ganz anders sind als bei Webanwendungen. Und oft sind Batches auch sehr geschäftskritisch, sodass die Messlatte besonders hoch liegt. Spring Batch ist eine der wenigen Technologien, die Lösungen für solche Szenarien anbietet, es basiert auf dem Spring Framework. Grund genug also, ein Buch zu diesem Thema zu verfassen.

Die Rezension basiert auf einer fast vollständigen Vorabausgabe dieses englischen Buchs. Es startet mit einer Motivation für die Nutzung von Batches und den besonderen Herausforderungen. Danach werden die Programmierkonzepte und Architekturen von Spring Batch erläutert. Die Einführung erfolgt anhand eines ersten Beispiels. So wird das Spring Batch Framework theoretisch und praktisch eingeführt. Im darauf folgenden Teil geht es um die grundlegenden Konzepte. Dabei wird zur Illustration ein umfangreiches Beispiel verwendet, anhand dessen die wichtigsten Schritte der Batches erläutert werden: Das Einlesen der Daten aus verschiedenen Quellen wie Datenbanken, JMS oder Dateien, die Verarbeitung durch Validierung, Transformation, Filtern oder andere Geschäftslogik und schließlich die Ausgabe der Daten. Ebenfalls geht es um die umfangreichen und ausgefeilten Konfigurationsmöglichkeiten von Spring Batch. Schließlich wird darauf eingegangen, wie und in was für einer Umgebung ein Batch gestartet werden kann. Ein weiteres Thema ist das Anpassen des Transaktionsmanagements, mit dem auch die Performance optimiert werden kann. Ebenfalls wird darauf eingegangen, wie Batch-Jobs zuverlässig implementiert werden können, sodass sie auch Fehlersituationen behandeln können oder Neustarts möglich sind. Der dritte und zum Zeitpunkt der Rezension noch nicht finalisierte Teil soll sich schließlich mit Integration, Monitoring, Skalierung und dem Testen von Batch-Anwendungen beschäftigen. Ebenfalls wird dort noch darauf eingegangen, wie der Ablauf eines Batches organisiert werden kann.

Das Buch deckt damit alle wesentlichen Aspekte von Batch-Verarbeitung im Allgemeinen und Spring Batch im besonderen ab. Es kommt recht schnell zum Kern. Schon in den ersten Kapiteln zeigt das Buch immer direkt die Praxis und den Code bei den jeweiligen Konzepten auf und vermittelt dadurch die Themen sehr direkt. Gleichzeitig werden in den darauf folgenden Teilen die einzelnen Konzepte detailliert und in der Tiefe erläutert. Wer also mit der Implementierung von Batches beschäftigt ist, findet in diesem Buch also eine gute didaktische Einführung, deren Lektüre sich auf jeden Fall lohnt.

von Eberhard Wolff

Kommentare