쉬운 설명
어떤 작업은 즉시 답을 줄 필요가 없습니다. '어젯밤까지의 매출을 합산해 오늘 아침에 보고서로 만든다', '월말에 모든 사용자에게 청구서를 발송한다', '매주 일요일 밤 머신러닝 모델을 재학습한다' 같은 일은 한 번에 모아서 처리하는 게 효율적입니다. 그게 배치 처리입니다.
장점은 단순함과 효율입니다. ① 처리 도중에 새 데이터가 들어와도 신경 쓸 필요가 없음. ② 같은 자원을 짧은 시간 동안 집중적으로 써서 비용을 줄일 수 있음. ③ 실패해도 같은 입력으로 다시 돌리면 됨(idempotent). 그래서 보고서·정산·청구·머신러닝 학습에서 여전히 1등 선택지입니다.
동작 흐름은 보통 세 단계입니다. ① 정해진 시각이 되면 스케줄러가 작업을 시작(cron·Airflow). ② 데이터 소스에서 한 덩어리를 읽어 처리. ③ 결과를 저장하고, 다음 단계가 있다면 트리거. 큰 회사에서는 수백 개의 배치 작업이 의존성을 갖고 줄지어 돌아갑니다.
단점은 '결과를 보기까지 기다려야 한다'는 점입니다. 사용자가 클릭하는 순간 결과를 봐야 한다면 스트리밍이 더 적합합니다. 실무에서는 보통 두 가지가 섞여 있습니다: 일상 운영은 스트리밍, 일·주·월 단위 통계는 배치.
도구: 가장 단순한 cron, 워크플로 도구 Airflow·Prefect·Dagster, 클라우드 매니지드(AWS Batch·GCP Cloud Composer), 머신러닝 학습용 분산 배치(Spark·Ray·Slurm). 어떤 도구를 쓰든 핵심은 '실패 알람·재시도·로그·의존성 관리'를 사람이 매번 신경 안 써도 되게 만드는 일입니다.

비유로 보면
배치 처리는 우체국의 야간 분류 작업과 비슷합니다. 낮 동안 모인 우편을 밤에 한꺼번에 모아 지역별로 정리해 다음 날 아침에 배달합니다. 모든 우편을 들어오는 즉시 처리하려고 했다면 더 많은 인력과 공간이 필요했을 겁니다.
어디에서 만나나
월급·청구서·세금 계산, 매일 새벽 BI 보고서 갱신, 머신러닝 모델 재학습, 마케팅 이메일 일괄 발송, 백업·로그 정리, 데이터 웨어하우스 적재, 정산·환불 처리. 회사가 다루는 '주기적 무거운 일' 대부분이 배치로 돌아갑니다.
작은 예시
월급 명세서는 매달 정해진 날 한꺼번에 계산·발송됩니다. 매시간 실시간으로 계산할 이유가 없고, 그달의 모든 근태·세금·공제가 다 모인 뒤 한 번에 처리하는 게 더 정확하고 안전합니다. 전형적인 배치 작업입니다.
자주 하는 오해
한 줄 정리
배치의 비결은 '즉시성을 포기해서 효율을 얻는다'입니다. 즉시가 필요 없는 일에는 배치만큼 안정적이고 싼 도구가 없습니다.
