Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Batch
Search
Rodrigo Graciano
October 07, 2022
Programming
200
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cloud Batch
Deck for the Batch Processing Cloud Apps with Java
Rodrigo Graciano
October 07, 2022
More Decks by Rodrigo Graciano
See All by Rodrigo Graciano
Advancing with Java
graciano
0
35
Your Java isn't the same
graciano
0
230
Batch Processing
graciano
0
430
Java 9 ao 17 - Oracle no TDC
graciano
0
150
KnoxJava - Java 9-17
graciano
0
170
Of concurrency and other demons
graciano
0
160
Java 9 to Java 16: A review of recent changes to the language
graciano
0
180
Java 9 ao 15 - Evolução da Linguagem Java
graciano
0
290
Other Decks in Programming
See All in Programming
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
110
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
350
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
500
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
330
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
430
フィードバックで育てるAI開発
kotaminato
1
120
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
4.4k
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
460
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.1k
act1-costs.pdf
sumedhbala
0
230
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1.2k
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
320
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
610
Six Lessons from altMBA
skipperchong
29
4.3k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
770
Navigating Weather and Climate Data
rabernat
0
370
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
390
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Code Review Best Practice
trishagee
74
20k
Exploring anti-patterns in Rails
aemeredith
3
440
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Transcript
BATCH PROCESSING CLOUD APPS WITH JAVA ELDER MORAES RODRIGO GRACIANO
OUTUBRO 2022
WHAT SPRING BATCH IS? Spring Batch is a lightweight, comprehensive
batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. https://docs.spring.io/spring-batch/docs/current/reference/html/index-single.html#spring-batch-intro
WHAT SPRING BATCH IS NOT? Spring Batch is not a
scheduler https://docs.spring.io/spring-batch/docs/current/reference/html/index-single.html#spring-batch-intro
RODRIGO GRACIANO • Principal Software Engineer - NY • Líder
do JUG de NY - NYJavaSIG • graciano.dev • Twitter: @rodrigograciano
ELDER MORAES • Java Champion • Autor de diversos livros
• Developer Advocate na Red Hat • Líder do SouJava • eldermoraes.com • Twitter: @elderjava
THE BASICS
BATCH VOCABULARY
BATCH COMPONENTS JOB
BATCH COMPONENTS STEP
BATCH ARCHITECTURE https://docs.spring.io/spring-batch/docs/current/reference/html/images/spring-batch-reference-model.png JobRepository JobLauncher Job Step 1 *
BATCH COMPONENTS TASKLET
TASKLETS • 1 time operation instead of read/write • Run
a DB query • Copy Files • Zip/unzip files
CHUNK TASKLET - STEP SEQUENCE Process Step Read Write
CHUNK-ORIENTED STEP + PROCESSORS https://docs.spring.io/spring-batch/docs/current/reference/html/images/chunk-oriented-processing-with-item-processor.png
SHOW ME SOME CODE: BASIC DEMO This Photo by Unknown
Author is licensed under CC BY-NC-ND
• JobRepository • JobLauncher • JobRegistry • JobExplorer • PlatformTransactionManager
• JobBuilderFactory • StepBuilderFactory @EnableBatchProcessing
JOB REPOSITORY •It’s how Job, Step, JobParameters, JobExecution, and StepExecution
are persisted
READERS • Database (JDBC, Mongo, Neo4j, Hibernate, etc.) • Flat
Files (delimited, fixed-length) • XML, JSON • JMS, Kafka, Amqp • Multi-file
WRITERS • Database (JDBC, Mongo, Neo4j, Hibernate, etc.) • Flat
Files (delimited, fixed-length) • XML, JSON • JMS, Kafka, Amqp • Multi-file • Email
PROCESSORS •Transforming •Filtering •Validations
LISTENERS JobExecutionListener StepExecutionListener ItemReadListener ItemWriteListener ChunkListener ItemProcessListener SkipListener
JOB EXECUTION LISTENERS
BEYOND THE BASICS SCALING AND PARALLEL PROCESSING
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
PARALLEL PROCESSING Step 1 Step 2 Step 3 Start Step
4
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
None
WHAT ABOUT THE CLOUD?
QUESTIONS? https://github.com/rodrigolgraciano/cloud-batch.git https://speakerdeck.com/graciano/cloud-batch @rodrigograciano @ elderjava