Skip to main content
QUICK REVIEW

[논문 리뷰] Following the Data, Not the Function: Rethinking Function Orchestration in Serverless Computing

Minchen Yu, Tingjia Cao|arXiv (Cornell University)|2021. 09. 28.
Cloud Computing and Resource Management인용 수 10
한 줄 요약

이 논문은 기능 호출 의존성 대신 데이터 흐름을 중심으로 워크플로우를 모델링함으로써 기능 오케스트레이션을 재고하는 데이터 중심의 서버리스 플랫폼인 Pheromone을 제안한다. 데이터 버킷 추상화와 세밀한 데이터 트리거 프리미티브를 도입함으로써 Pheromone은 기존 플랫폼에 비해 상위 수준의 상호작용 지연 시간을 단축시키는 저지연, 고성능 기능 상호작용을 가능하게 하며, 명시적인 데이터 소비 및 최적화된 스케줄링과 데이터 전송 메커니즘을 통해 복잡한 워크플로우 개발을 단순화한다.

ABSTRACT

Serverless applications are typically composed of function workflows in which multiple short-lived functions are triggered to exchange data in response to events or state changes. Current serverless platforms coordinate and trigger functions by following high-level invocation dependencies but are oblivious to the underlying data exchanges between functions. This design is neither efficient nor easy to use in orchestrating complex workflows -- developers often have to manage complex function interactions by themselves, with customized implementation and unsatisfactory performance. In this paper, we argue that function orchestration should follow a data-centric approach. In our design, the platform provides a data bucket abstraction to hold the intermediate data generated by functions. Developers can use a rich set of data trigger primitives to control when and how the output of each function should be passed to the next functions in a workflow. By making data consumption explicit and allowing it to trigger functions and drive the workflow, complex function interactions can be easily and efficiently supported. We present Pheromone -- a scalable, low-latency serverless platform following this data-centric design. Compared to well-established commercial and open-source platforms, Pheromone cuts the latencies of function interactions and data exchanges by orders of magnitude, scales to large workflows, and enables easy implementation of complex applications.

연구 동기 및 목표

  • 현재 서버리스 플랫폼이 기능 호출 의존성에 의존하면서 실제 데이터 교환을 추적하지 않는 바탕으로 기능 워크플로우 오케스트레이션의 비효율성과 복잡성을 해결하기 위해.
  • 지연 시간 민감한 워크로드에서 누적되는 고지연 상호작용(수십 밀리초)을 줄이기 위해.
  • MapReduce 및 스트림 처리와 같은 복잡한 워크플로우의 개발을 단순화하기 위해 데이터 소비를 명시적이고 조합 가능한 방식으로 제공함으로써 통합 인터페이스를 통해 표현할 수 있도록 하기 위해.
  • 두 계층 스케줄링 계층을 통해 하류 기능을 입력 데이터에 가까이 배치함으로써 저지연, 확장 가능한 기능 실행을 가능하게 하기 위해.
  • 내부 공유 메모리 객체 저장소를 통한 0-복사 전송 및 노드 간 직접 데이터 전송을 통해 내구성과 교환 속도 간의 트레이드오프를 통해 데이터 교환 성능을 최적화하기 위해.

제안 방법

  • 중간 기능 출력을 보관하는 데이터 버킷 추상화를 도입하여 명시적이고 구성 가능한 데이터 소비 및 하류 기능 트리거를 가능하게 한다.
  • 두 계층 스케줄링 계층을 활용: 각 워커 노드에 위치한 로컬 스케줄러가 데이터 버킷을 통해 워크플로우 상태를 관리하고 가능한 한 현지에서 기능을 스케줄링하며, 필요에 따라 글로벌 조율자가 크로스 노드 스케줄링을 담당한다.
  • 노드 내부에서는 0-복사 공유 메모리 객체 저장소를 사용하고, 노드 간에는 직접 데이터 전송을 통해 데이터 교환 지연을 최소화하며, 내구성을 성능 향상의 대가로 기꺼이 포기한다.
  • 수평 확장 가능성을 확보하기 위해 분할된 글로벌 조율자를 도입하며, 각 조율자가 상호 배타적인 워크플로우 집합을 관리하여 병목 현상을 방지한다.
  • 저수준 데이터 트리거 API와 고수준 기능 중심 인터페이스를 모두 제공하여 개발자가 버킷 관리를 직접 하지 않더라도 복잡한 워크플로우를 표현할 수 있도록 한다.
  • 동적 그룹(DynamicGroup) 및 ByTime 트리거와 같은 프리미티브를 통해 MapReduce 및 스트림 처리와 같은 고급 패턴을 지원하며, 데이터 가용성에 따라 자동으로 기능을 실행할 수 있도록 한다.

실험 결과

연구 질문

  • RQ1기능 의존성 기반 모델에 비해 데이터 중심 접근 방식이 서버리스 워크플로우에서 상호작용 지연 시간을 줄일 수 있는가?
  • RQ2중간 데이터를 효율적으로 관리하면 서버리스 환경에서 저지연, 고스루풋 기능 상호작용을 어떻게 달성할 수 있는가?
  • RQ3명시적인 데이터 소비 및 트리거 프리미티브는 MapReduce 및 스트림 처리와 같은 복잡한 워크플로우의 구현을 어느 정도 단순화할 수 있는가?
  • RQ4로컬 및 글로벌 조율이 결합된 두 계층 스케줄링 계층이 저지연을 유지하면서 대규모, 복잡한 워크플로우에 대해 확장 가능한가?
  • RQ5서버리스 시스템에서 짧은 수명의 중간 데이터의 내구성을 포기함으로써 더 빠른 데이터 교환을 달성하기 위한 성능 트레이드오프는 어느 정도 가능한가?

주요 결과

  • Pheromone는 상용 및 오픈소스 서버리스 플랫폼에 비해 기능 상호작용 및 데이터 교환 지연 시간을 수 개의 주기로 감소시킨다.
  • 플랫폼은 저지연 스케줄링과 데이터 전송을 지원하여 대규모 워크플로우를 효율적으로 실행할 수 있으며, 복잡하고 데이터 집약적인 애플리케이션의 실행을 가능하게 한다.
  • 0-복사 공유 메모리 객체 저장소와 직접 데이터 전송을 통해 각 노드 내부 및 노드 간 데이터 교환 지연 시간이 각각 감소한다.
  • Pheromone의 가비지 컬렉션은 요청 완료 후 미사용 중인 메모리 데이터 객체를 신속히 제거함으로써 메모리 프로파일을 효과적으로 줄인다.
  • Pheromone-MR(기능 기반 MapReduce 프레임워크)의 구현은 C++ 380줄과 Python 120줄로 구성되었으며, AWS Lambda에서 사용하는 PyWren에 비해 지도 단일 작업에 대해서만 약 6,000줄이 필요한 것에 비해 상당히 적다.
  • 기능 중심 인터페이스를 통해 개발자는 버킷을 직접 관리하지 않더라도 의존성 기반으로 워크플로우를 표현할 수 있으며, 저수준 데이터 트리거 API를 통해 복잡한 워크플로우도 여전히 지원한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.