[Serving patterns] Batch pattern
- 서빙 패턴은 실제 운영 환경에서 머신러닝 모델을 이용할 수 있도록 만드는 시스템 디자인
Reference
ml-system-design-pattern
System design patterns for machine learning
mercari.github.io
디자인 패턴
프로그램 개발에서 자주 나타나는 과제를 해결하기 위한 방법 중 하나로, 과거의 소프트웨어 개발 과정에서 발견된 설계의 노하우를 축적하여 이름을 붙여, 이후에 재이용하기 좋은 형태로 특정의 규약을 묶어서 정리한 것
Batch pattern
- 예측 결과를 실시간으로 얻을 필요가 없는 경우 사용
- 많은 양의 데이터를 예측 하려는 경우 사용
- 예측 실행이 스케줄링 가능한 경우 사용
- 클라우드 서비스 또는 쿠버네티스를 사용할 경우 작업을 기반으로 서버 시작하고 삭제하면 비용을 절감할 수 있음
특징
- 유연한 서버 리소스 관리
- 오류 발생시 작업 재실행 가능
- 작업 운영을 위한 서버가 필요