Batch
- ๋์ฉ๋ ๋ฐ์ดํฐ: ๋๋์ ๋ฐ์ดํฐ๋ฅผ I/O
- ์๋ํ: ์ฌ์ฉ์์ ๊ฐ์
์์ด ์คํ
- ๊ฒฌ๊ณ ์ฑ: ์คํ ๋์ค ์ข
๋ฃ๋๋ ์ผ ์์ด ์ํ
- ์ ๋ขฐ์ฑ: ์ค๋ณต์ด๋ ๋๋ฝ ์์ด ์ํ
- ์ฑ๋ฅ: ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์๋ฏธํ ์๊ฐ ์์ ์ํ
Spring Batch
- @Configuration ๋ฑ๋ก ํ์
- Job: ํ๋์ ๋ฐฐ์น ์์
๋จ์
- Step: Job์ ์ํ ํ์ ์์
๋จ์ (๊ธฐ๋ณธ ํธ๋์ญ์
)
- Tasklet: Custom ์์
์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋จ์
- Reader
- Processor
- Writer
๋ฉํ ๋ฐ์ดํฐ
- spring-batch-core.jar ๋ด๋ถ์
schema-*.sql ํ์ผ์ด ์กด์ฌ
BATCH_JOB_INSTANCE: Job Parameter์ ๋ฐ๋ผ record ์์ฑ๋จ
BATCH_JOB_EXECUTION: Job Instance์ ์์ ๊ด๊ณ๋ก ์คํ๋ง๋ค record ์์ฑ๋จ
BATCH_JOB_EXECUTION_PARAMS
BATCH_JOB_EXECUTION_CONTEXT
BATCH_STEP_EXECUTION
BATCH_STEP_EXECUTION_CONTEXT
Scope
- Bean์ ์์ฑ ์์ ์ ์ง์ ๋ Scope๊ฐ ์คํ๋๋ ์์ ์ผ๋ก ์ง์ฐ
@JobScope: Step ์ ์ธ๋ฌธ์์ ์ฌ์ฉ
@StepScope: Tasklet์ด๋ Reader/Processor/Writer์์ ์ฌ์ฉ
- ์ฅ์
- JobParameter์ Late Binding
- ๋์ผํ ์ปดํฌ๋ํธ์ ๋ณ๋ ฌ ์ ๊ทผ
Chunk
ItemReader
ItemWriter