Michael Minella

Michael Minella

Project Lead of Spring Batch and author of Pro Spring Batch


Michael Minella is a software engineer, teacher and author with over a decade of enterprise development experience. Michael was a member of the expert group for JSR-352 (java batch processing). He currently works for Pivotal as the project lead for the Spring Batch project as well as an instructor at DePaul University. Michael is the author of Pro Spring Batch from Apress and the popular Refcard JUnit and EasyMock.

Outside of the daily grind, Michael enjoys spending time with his family and enjoys woodworking, photography and InfoSec hobbies.




Presentations

Integrating Spring Batch and Spring Integration

This talk is for everyone who wants to efficiently use Spring Batch and Spring Integration together. Users of Spring Batch often have the requirements to interact with other systems, to schedule the periodic execution Batch jobs and to monitor the execution of Batch jobs. Conversely, Spring Integration users periodically have Big Data processing requirements, be it for example the handling of large traditional batch files or the execution of Apache Hadoop jobs. For these scenarios, Spring Batch is the ideal solution. This session will introduce Spring Batch Integration, a project that provides support to easily tie Spring Batch and Spring Integration together. We will cover the following scenarios:

  • Launch Batch Jobs through Spring Integration Messages
  • Generate Informational Messages
  • Externalize Batch Process Execution using Spring Integration
  • Create Big Data Pipelines with Spring Batch and Spring Integration

Session Detail

JSR-352, Spring Batch and You

JSR-352 is billed as bringing a standardized batch programming model to Java. What does the spec provide, what does it not, and what does it mean for Spring Batch applications? We will address all of these questions as well as provide insight into how Spring Batch will work with the JSR in a real world example.

Session Detail


Books

by Michael T. Minella

Pro Spring Batch Buy from Amazon
List Price: $54.99
Price: $40.61
You Save: $14.38 (26%)
  • Since its release, Spring Framework has transformed virtually every aspect of Java development including web applications, security, aspect-oriented programming, persistence, and messaging. Spring Batch, one of its newer additions, now brings the same familiar Spring idioms to batch processing. Spring Batch addresses the needs of any batch process, from the complex calculations performed in the biggest financial institutions to simple data migrations that occur with many software development projects.

    Pro Spring Batch is intended to answer three questions:  

    • What? What is batch processing? What does it entail? What makes it different from the other applications we are developing? What are the challenges inherent in the development of a batch process?
    • Why? Why do batch processing? Why can’t we just process things as we get them? Why do we do batch processing differently than the web applications that we currently work on?
    • How? How to implement a robust, scalable, distributed batch processing system using open-source frameworks

    Pro Spring Batch gives concrete examples of how each piece of functionality is used and why it would be used in a real-world application. This includes providing tips that the "school of hard knocks" has taught author Michael Minella during his experience with Spring Batch. Pro Spring Batch includes examples of I/O options that are not mentioned in the official user’s guide, as well as performance tips on things like how to limit the impact of maintaining the state of your jobs.

    The author also walks you through, from end to end, the design and implementation of a batch process based upon a theoretical real-world example. This includes basic project setup, implementation, testing, tuning and scaling for large volumes.

    What you’ll learn

    • Batch concepts and how they relate to the Spring Batch framework
    • How to use declarative I/O using the Spring Batch readers/writers
    • Data integrity techniques used by Spring Batch, including transactions and job state/restartability
    • How to scale batch jobs via distributed batch processing
    • How to handle testing batch processes (Unit and functional)

    Who this book is for

    • Java developers with Spring experience.
    • Java Architects designing batch solutions
    More specifically, this book is intended for those who have a solid foundation in the core Java platform. Batch processing covers a wide spectrum of topics, not all of which are covered in detail in this book. Concepts in Java which the reader should be comfortable with include file I/O, JDBC, and transactions. Given that Spring Batch is a framework built upon the open-source IoC container Spring, which will not be covered in this book, it is expected that the reader will be familiar with its concepts and conventions. With that in mind, the reader is not expected to have any prior exposure to the Spring Batch framework. All concepts related to it will be explained in detail, with working examples.

    Table of Contents

    1. Batch and Spring
    2. Spring Batch 101
    3. Sample Job
    4. Understanding Jobs and Steps
    5. Job Repository and Metadata
    6. Running a Job
    7. Readers
    8. Item Processors
    9. Item Writers
    10. Sample Application
    11. Scaling and Tuning
    12. Testing Batch Processes