Introduction
서버리스(Serverless) 컴퓨팅은 개발자에게 인프라 관리의 부담을 덜어주며 클라우드 네이티브 아키텍처의 패러다임으로 자리 잡았습니다. 하지만, 서버리스 워크로드는 이벤트 기반 트리거, 주기적인 배치 작업, 예측 불가능한 사용자 요청 등으로 인해 극심한 변동성을 특징으로 합니다. 이러한 예측 어려움은 콜드 스타트(Cold Start) 문제 및 비효율적인 자원 할당(Resource Provisioning)으로 이어집니다.
기존의 단일 시계열 예측 모델, 즉 밀집 모델(Dense Model)은 모든 종류의 패턴을 하나의 일반화된 모델로 학습하고 함수 호출을 예측했습니다. 이는 마치 한 명의 의사가 모든 전문 분야를 다루려는 것과 같아, 특정 패턴에 대한 미세한 변화나 고유한 특성을 놓치기 쉽습니다.
이러한 한계를 극복하기 위해 MESP(Mixture of Experts based dynamic router Serverless workload Prediction) 시스템을 제안합니다. MESP는 “분할과 정복 (Divide and Conquer)” 전략에 기반한 MoE(Mixture of Experts) 아키텍처를 채택하여, 변동성 높은 서버리스 워크로드를 하위 문제로 분해하고, 각 문제에 특화된 전문가 모델을 통해 예측 정확성과 시스템 확장성을 극대화합니다. MESP의 핵심 컴포넌트는 다음과 같습니다.
•
전문가 그룹 (Expert Models): ‘평일 오전 피크 패턴’, ‘주말 안정 패턴’ 등 특정 호출 패턴에만 특화되어 학습된 N-BEATS, LSTM 등과 같은 예측 모델들이 있습니다.
•
동적 라우터 (Dynamic Router): 새로운 ‘일일 호출 패턴’ 데이터가 들어왔을 때, 이 패턴이 어떤 특성을 가졌는지 분석하여(예: ‘오전 피크형’) 이를 처리할 최적의 전문가 모델에게 동적으로 라우팅하는 게이팅 네트워크(Gating Network) 역할을 수행합니다.
System Architecture
MESP는 크게 두 단계로 진행됩니다. 먼저, 오프라인에서 각 패턴에 특화된 전문가들을 구축하고, 그 다음 온라인에서 실시간으로 데이터를 예측합니다.
Phase 1: 오프라인 학습 (Offline Training)
1.
패턴 발견 및 클러스터링 (Pattern Clustering)
전문가 모델을 학습하기 전, 먼저 데이터에 내재된 구조적 패턴을 식별합니다. 수십만 개의 과거 ‘일일 함수 호출 패턴’ (1440분 데이터)을 대상으로, 시계열 데이터의 형태(Shape) 기반 유사도 측정에 강점을 가진 K-Shape 클러스터링 알고리즘을 적용합니다. 이를 통해 유의미한 K개의 대표 패턴, 즉, 클러스터를 찾아냅니다.
•
Cluster 0: 평일 오전 9시에 트래픽이 집중되는 ‘출근길 피크 패턴’
•
Cluster 1: 주말 내내 호출량이 낮은 ‘주말 안정 패턴’
•
Cluster 2: 매일 밤 12시에 배치 작업으로 스파이크가 발생하는 ‘자정 피크 패턴’
이 과정을 각 전문가 모델이 담당할 전문 분야를 데이터 기반으로 정의하는 단계입니다.
2.
전문가 모델 학습하기 (Expert Model Training)
각 클러스터는 비슷한 함수 패턴을 가진 데이터의 집합이 됩니다. 1단게에서 분리된 K개의 데이터셋을 사용하여, 각 클러스터의 특성을 가장 잘 예측하는 최적의 모델을 선정합니다. Optuna와 같은 자동화된 하이퍼파라미터 최적화(HPO) 도구를 활용하여 PatchTST, LSTM, Autoformer, N-BEATS 등 다양한 후보 모델을 각 데이터셋에 대해 학습 및 평가합니다.
•
‘출근길 피크 패턴’ 전문가 모델 0: ‘출근길 피크 패턴’ 데이터만으로 모델을 학 데이터만으로 모델을 학습시킵니다. 이 모델은 ‘출근길 피크 패턴’에 대한 미세한 변화를 예측하는 것을 아주 잘하게 됩니다.
•
‘주말 안정 패턴’ 전문가 모델 1: ‘주말 안정 패턴’ 데이터만으로 모델을 학습시켜서 이 패턴에 대한 예측을 아주 잘하도록 만듭니다.
이 과정을 통해 각 클러스터별 패턴에 가장 최적화된 K개의 ‘전문가 모델’이 준비됩니다
Phase 2: 온라인 예측 (Online Inference)
MESP 시스템이 실시간으로 예측하는 과정은 다음과 같습니다.
1.
새로운 함수의 ‘일일 호출 패턴’이 시스템에 입력됩니다.
2.
이 데이터는 가장 먼저 동적 라우터(Dynamic Router)에게 전달됩니다.
3.
라우터는 학습된 분류 기준에 따라, 입력된 패턴과 가장 유사한 클러스터(예: ‘주말 안정 패턴’)를 선택합니다.
4.
라우터의 결정에 따라, 데이터는 해당 클러스터의 전문가 모델(’주말 안정 패턴’ 전문가 모델 1)에게 라우팅됩니다.
5.
전문가 모델은 자신의 전문 분야는 데이터를 입력받아, 높은 신뢰도로 다음 1시간의 호출량을 예측하여 결과를 반환합니다.
MESP의 차별점
이러한 MESP 시스템은 기존의 단일 모델(Dense Model) 접근 방식에 비해 다음과 같은 확실한 장점을 가집니다.
•
높은 정확성 (Accuracy): 각 전문가 모델은 자신이 담당하는 패턴에 대해서만 학습하기에, 전체 데이터를 학습하는 단일 밀집 모델(Dense Model)보다 더 정교하고 정확한 예측이 가능합니다. 이는 과적합(Overfitting)을 피하면서도 특정 패턴에 대한 일반화 성능을 극대화하는 효과를 갖습니다.
•
유연한 확장성 (Scalability): 새로운 유형의 호출 패턴이 등장하더라도, 기존의 K개 전문가 모델을 재학습할 필요가 없습니다. 새로운 패턴을 위한 K+1번째 클러스터와 전문가 모델만 추가하면 되므로, 시스템을 유연하게 확장할 수 있습니다.
Conclusion
서버리스 워크로드(Serverless Workload)의 변동성은 단일 모델(Dense Model)의 예측에 명확한 한계를 보여줍니다. MEPS의 Mixture of Experts(MoE) 접근 방식은 이 한계를 효과적으로 해결하는 방법 중 하나입니다. 데이터 기반의 클러스터링을 통해 큰 문제를 여러 하위 문제로 ‘분할’하고, 각 문제에 특화된 전문가 모델로 ‘정복’함으로써, 더 정확하고 확장성 높은 차세대 서버리스 예측 시스템을 구축할 수 있었습니다.