[논문 리뷰] Quantitative Analysis of Cloud Function Evolution in the AWS Serverless Application Repository
이 연구는 12개월 간의 기간 동안 AWS Serverless Application Repository에 대한 정량적 분석을 수행하여 메타데이터, 구현 패턴, 클라우드 함수의 진화를 분석한다. 연구 결과, 자바스크립트와 파이썬이 구현에 지배적이며, 메타데이터의 가시성은 일관되지 않으며, 함수의 성장률은 둔화되었음(월 약 1퍼센트)에도 불구하고, 배포 수는 매월 약 7퍼센트씩 선형적으로 증가하고 있어, 시장 포화 상태임에도 불구하고 광범위한 채택이 이루어지고 있음을 시사한다.
The serverless computing ecosystem is growing due to interest by software engineers. Beside Function-as-a-Service (FaaS) and Backend-as-a-Service (BaaS) systems, developer-oriented tools such as deployment and debugging frameworks as well as cloud function repositories enable the rapid creation of wholly or partially serverless applications. This study presents first insights into how cloud functions (Lambda functions) and composite serverless applications offered through the AWS Serverless Application Repository have evolved over the course of one year. Specifically, it outlines information on cloud function and function-based application offering models and descriptions, high-level implementation statistics, and evolution including change patterns over time. Several results are presented in live paper style, offering hyperlinks to continuously updated figures to follow the evolution after publication date.
연구 동기 및 목표
- 상업 시장인 AWS SAR와 같은 클라우드 함수 마켓플레이스에서 함수가 어떻게 기술되고 제공되는지 이해하기 위해 메타데이터 품질과 가시성에 중점을 둔다.
- 프로그래밍 언어, 프레임워크, 코드 구조를 포함한 클라우드 함수의 실제 구현 패턴을 분석한다.
- 브로커링된 클라우드 함수의 시간적 변화 패턴과 성장 추세를 식별한다. 서버리스 컴퓨팅의 성장이 함수 수와 배포 수에 반영되고 있는지 분석한다.
- 향후 서버리스 컴퓨팅 연구를 위한 재사용 가능하고 지속적으로 갱신되는 메타데이터 및 코드 메트릭 데이터셋을 제공한다.
제안 방법
- AWS Serverless Application Repository, GitHub 및 관련 코드 저장소에서의 지속적 관찰과 자동화된 데이터 수집.
- 공개된 AWS SAR 항목에서 기능 수준의 메타데이터, 코드 수준의 메타데이터 및 구현 통계를 추출하고 통합한다.
- 버전 관리 시스템(예: GitHub)을 활용하여 코드 표현 방식(직접 파일, 아카이브, 원격 참조 포함)을 분석한다.
- 메타데이터 검색, 코드 덤프 수집, 메트릭 집계를 위한 자동화 스크립트를 적용하고, 동적 시각화 기능이 포함된 실시간 논문 형식으로 결과를 발표한다.
- 기능 바인딩 패턴(비바인딩 대비 BaaS 기반 바인딩)과 자원 구성 분석을 통해 구조적 추세를 식별한다.
- SAM-Local 및 Localstack과 같은 기존 도구를 사용하여 향후 런타임 평가를 고려하지만, 본 연구에서는 실행하지 않았다.
실험 결과
연구 질문
- RQ1RQ1: 상업 마켓플레이스에서 클라우드 함수는 어떻게 제공되고 기술되는가? 가용한 메타데이터는 무엇이며, 가시성에 어떤 영향을 미치는가?
- RQ2RQ2: 클라우드 함수는 실제 구현에서 어떻게 작성되는가? 어떤 프로그래밍 언어, 프레임워크, 구조적 패턴이 사용되는가?
- RQ3RQ3: 브로커링된 클라우드 함수에서 시간에 따라 관찰되는 변화 패턴과 추세는 무엇인가? 서버리스 컴퓨팅의 성장은 함수 수와 배포 수에 반영되고 있는가?
주요 결과
- 자바스크립트와 파이썬이 함께 클라우드 함수의 대부분을 차지하며, 다른 언어의 사용은 극히 적어 서버리스 개발에서 사실상 이원적 선택임을 시사한다.
- 다양한 저장소 간에 함수 메타데이터의 구조가 일관되지 않아 가시성이 저하되며, 효과적인 서비스 탐색을 위해 히우리스틱 기반 접근이 필요하다.
- 신규 함수 추가가 둔화되었음(월 약 1퍼센트)에도 불구하고, 함수의 배포 수는 매월 약 7퍼센트씩 선형적으로 증가하고 있어 지속적인 생산 환경 사용을 나타낸다.
- 대부분의 함수는 비바인딩 또는 Backend-as-a-Service(BaaS) 자원에 바인딩되어 있으며, FaaS와 BaaS 컴ponent 간의 자원 구성 및 데이터 흐름에 명확한 패턴이 존재한다.
- 코드 표현 방식은 다양하게 나타나며, 직접 파일 접근, 아카이브된 빌드, 원격 참조가 모두 사용되며, 정규화된 방식의 코드 배포가 없어 표준화되지 않은 상태이다.
- 본 연구는 AWS SAR에서 유래한 메타데이터 및 코드 메트릭의 재사용 가능하고 지속적으로 갱신되는 데이터셋을 생성하였으며, 향후 연구를 위해 추가적인 코드 덤프와 마이닝 스크립트도 공개하였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.