[논문 리뷰] ServerMix: Tradeoffs and Challenges of Serverless Data Analytics
이 논문은 서버리스와 서버풀 컴포넌트를 결합한 하이브리드 컴퓨팅 모델인 ServerMix를 소개한다. 이는 서버리스 데이터 분석에서 성능과 비용 제약를 극복하기 위한 것이다. 서버리스 환경의 핵심 트레이드오프인 분리, 격리, 스케줄링을 완화함으로써 ServerMix는 고성능 데이터 처리를 가능하게 하면서도 필수적인 서버리스 특성을 유지한다. 이는 WebAssembly를 활용한 스마트 스케줄링, 국소화된 상태, 다중 언어 추상화를 탐구하는 CloudButton 연구 프로젝트를 통해 이루어진다.
Serverless computing has become very popular today since it largely simplifies cloud programming. Developers do not need to longer worry about provisioning or operating servers, and they pay only for the compute resources used when their code is run. This new cloud paradigm suits well for many applications, and researchers have already begun investigating the feasibility of serverless computing for data analytics. Unfortunately, today's serverless computing presents important limitations that make it really difficult to support all sorts of analytics workloads. This paper first starts by analyzing three fundamental trade-offs of today's serverless computing model and their relationship with data analytics. It studies how by relaxing disaggregation, isolation, and simple scheduling, it is possible to increase the overall computing performance, but at the expense of essential aspects of the model such as elasticity, security, or sub-second activations, respectively. The consequence of these trade-offs is that analytics applications may well end up embracing hybrid systems composed of serverless and serverful components, which we call Servermix in this paper. We will review the existing related work to show that most applications can be actually categorized as Servermix. Finally, this paper will introduce the major challenges of the CloudButton research project to manage these trade-offs.
연구 동기 및 목표
- 현재 서버리스 컴퓨팅의 근본적 트레이드오프인 분리, 격리, 단순 스케줄링이 효율적인 데이터 분석을 저해하는 방식을 분석한다.
- 대부분의 실제 분석 워크로드는 본질적으로 하이브리드이며, 서버리스와 서버풀 컴포넌트를 조합하므로 ServerMix 시스템의 개념을 도출한다.
- 기민한 성능, 비용 효율성, 확장성 있는 서버리스 데이터 분석 플랫폼을 구축하는 데 있어 핵심 과제를 규명한다.
- 신규 스케줄링, 상태 관리, 언어 간 상호운용성 기반으로 이러한 과제를 해결하기 위한 연구 프레임워크로 CloudButton 프로젝트를 제안한다.
- 향후 연구를 통해 진정으로 서버리스 분석을 가능하게 하기 위해 SLO 지원, 스토리지 서비스 향상, WebAssembly를 통한 언어에 구애받지 않는 실행 환경 개선을 이끌어내는 데 기여한다.
제안 방법
- 성능, 비용, 시스템 특성 간 균형을 맞추기 위해 서버리스 함수와 전용 서버풀 컴포넌트를 조합한 하이브리드 아키텍처인 ServerMix 모델을 도입한다.
- 함수를 함께 배치함으로써 메모리 공유를 가능하게 하는 새로운 격리 모델을 제안하여 데이터 집약적 워크로드의 지연 감소와 처리량 향상을 도모한다.
- WebAssembly의 단순한 메모리 모델을 활용해 체크포인팅, 마이그레이션, 복원 메커니즘을 개발함으로써 상태 기반 실행과 수평 확장성을 실현한다.
- 다양한 프로그래밍 언어 간 추상화 재사용을 지원하기 위해 공유되는 중간 표현(IR)을 설계한다.
- 공동 위치 및 국소화된 상태를 활용한 스마트 스케줄링을 적용하여 하이브리드 워크로드에서의 성능과 자원 활용도를 최적화한다.
- 포트폴리블하고 안전하며 효율적인 실행 기반으로 WebAssembly를 활용하여 다국어 지원을 통합하고 실행 상태의 효율적 직렬화를 가능하게 한다.
실험 결과
연구 질문
- RQ1서버리스 컴퓨팅의 핵심 트레이드오프인 분리, 격리, 스케줄링이 데이터 분석 워크로드의 성능과 비용 효율성에 미치는 제약는 어떠한가?
- RQ2서버리스와 서버풀 컴포넌트를 조합한 하이브리드 시스템(ServerMix)이 순수 서버리스 또는 기존 VM 기반 클러스터에 비해 얼마나 뛰어난 성능을 보일 수 있는가?
- RQ3실제 분석 워크로드에 적합하고 성능이 뛰어나며 비용 효율적인 ServerMix 시스템을 구현하기 위해 필요한 아키텍처적 및 시스템 수준의 혁신은 무엇인가?
- RQ4서버리스 환경에서 복잡한 데이터 처리 파이프라인을 지원하기 위해 경량이고 언어에 구애받지 않는 격리 및 상태 관리 기법을 어떻게 달성할 수 있는가?
- RQ5WebAssembly와 공유되는 중간 표현은 어떻게 하여 포트폴리블하고 효율적이며 확장 가능한 서버리스 분석 플랫폼을 가능하게 하는가?
주요 결과
- 현재 서버리스 플랫폼는 VM이나 클러스터 시스템에 비해 데이터 분석에 대해 현저히 성능이 떨어지고 비용이 더 들며, 예를 들어 머신러닝 파이프라인의 경우 3배에서 5배 느리고 최대 7배 더 비싸다.
- 높은 성능을 보이는 서버리스 워크로드인 ExCamera와 PyWren조차도 외부 서버풀 서비스(S3, Redis, VM 기반 레지스터)에 의존하고 있어 실제 구현 환경이 본질적으로 하이브리드임을 확인한다.
- 서버리스 컴퓨팅의 엄격한 격리 및 분리를 완화하면 성능을 최대 60% 향상시키고 비용을 절감할 수 있지만, 이는 확장성과 보안성의 손실을 수반한다.
- CloudButton 프로젝트는 스마트 스케줄링과 국소화된 상태 공유가 하이브리드 환경에서 데이터 집약적 워크로드의 성능 향상에 크게 기여할 수 있음을 입증한다.
- WebAssembly는 효율적인 상태 직렬화 및 마이그레이션을 가능하게 하여 서버리스 시스템에서 수평 확장성과 장애 내성 기능을 투명하게 제공한다.
- 기존의 대부분의 서버리스 분석 시스템은 실질적으로 이미 ServerMix이므로, 하이브리드 모델은 일시적인 해법이 아니라 이 개념의 必수적 진화임을 시사한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.