AI 시스템 구축: 배포 전략 – Batch Inference

ㅁ 배포 전략

ㅇ 정의:
머신러닝 모델이 예측을 수행하는 방식을 운영 환경에 적용하는 전략 중 하나로, 대량의 입력 데이터를 일정 주기마다 모아서 한 번에 예측을 수행하는 방식.

ㅇ 특징:
– 실시간성이 필요 없고, 대규모 데이터 처리에 효율적
– 스케줄러(Cron, Airflow 등)를 사용하여 주기적으로 실행
– 예측 결과를 파일, DB 등에 저장하여 후속 시스템이 활용
– 처리 시간과 리소스 사용량이 예측 가능

ㅇ 적합한 경우:
– 하루 1회, 주간 단위 등 일정 주기로 데이터가 업데이트되는 경우
– 예측 결과를 즉시 제공할 필요가 없는 경우(예: 리포트 생성, 마케팅 캠페인 타겟팅)
– 대규모 로그 데이터 분석, 배치 추천 시스템

ㅇ 시험 함정:
– Batch Inference를 실시간 예측(Online Inference)과 혼동하는 문제
– 배치 주기를 짧게 하면 실시간처럼 동작할 수 있다고 오해하는 경우
– 배포 전략을 ‘학습 방식’과 혼동

ㅇ 시험 대비 “패턴 보기” 예시:
O: “대규모 데이터에 대해 일정 주기로 예측을 수행하는 방식”
O: “스케줄러를 통해 주기적으로 모델을 실행”
X: “사용자 요청 시마다 즉시 예측 결과를 반환하는 방식”
X: “모델 학습을 배치로 수행하는 것을 의미”

ㅁ 추가 학습 내용

Batch Inference와 Online Inference의 차이 정리

Batch Inference는 예측 결과를 사전에 대량으로 계산하여 저장해 두고, 이후 필요할 때 조회하는 방식이다. 이 방식은 실시간성이 요구되지 않는 경우에 적합하며, 지연 시간이 낮지 않다. 주로 비즈니스 의사결정, 대규모 데이터 분석, 정기 보고서 생성 등에 활용된다.

Batch Inference는 데이터 처리 파이프라인과 밀접하게 연계된다. 주요 구성 요소로는 데이터 수집과 전처리를 담당하는 ETL, 모델 입력 특성을 관리하는 Feature Store, 정기적 실행을 관리하는 Scheduler가 있다. 리소스 최적화를 위해 Spark, MapReduce와 같은 분산 처리 프레임워크를 활용할 수 있다.

또한 Batch Inference 결과를 캐싱하여 API 형태로 제공하는 하이브리드 구조도 존재한다. 이를 통해 사전 계산된 예측값을 빠르게 제공하면서도, 필요한 경우 Online Inference처럼 실시간 요청을 처리할 수 있다.

Online Inference는 요청이 들어올 때마다 실시간으로 예측을 수행하는 방식으로, 낮은 지연 시간과 즉각적인 응답이 요구되는 서비스에 사용된다. Batch Inference와 비교했을 때 리소스 사용 패턴, 시스템 설계, 응답 속도에서 차이가 있다.

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*