[논문 리뷰] Evaluation of Distributed Data Processing Frameworks in Hybrid Clouds
이 논문은 오픈스택(사설 클라우드)과 마이크로소프트 아웃소스(공용 클라우드)를 조합한 하이브리드 클라우드 환경에서 하둡, 스파크, 플린크를 평가하며, 실행 시간, 자원 활용도, 확장성, 비용을 측정한다. 결과적으로 플린크는 실행 시간에서 스파크와 하둡을 앞서며, 스파크는 가장 비용 효율적이며, 수평 확장성이 수직 확장성보다 모든 프레임워크에서 더 뛰어난 성능 향상을 제공한다.
Distributed data processing frameworks (e.g., Hadoop, Spark, and Flink) are widely used to distribute data among computing nodes of a cloud. Recently, there have been increasing efforts aimed at evaluating the performance of distributed data processing frameworks hosted in private and public clouds. However, there is a paucity of research on evaluating the performance of these frameworks hosted in a hybrid cloud, which is an emerging cloud model that integrates private and public clouds to use the best of both worlds. Therefore, in this paper, we evaluate the performance of Hadoop, Spark, and Flink in a hybrid cloud in terms of execution time, resource utilization, horizontal scalability, vertical scalability, and cost. For this study, our hybrid cloud consists of OpenStack (private cloud) and MS Azure (public cloud). We use both batch and iterative workloads for the evaluation. Our results show that in a hybrid cloud (i) the execution time increases as more nodes are borrowed by the private cloud from the public cloud, (ii) Flink outperforms Spark, which in turn outperforms Hadoop in terms of execution time, (iii) Hadoop transfers the largest amount of data among the nodes during the workload execution while Spark transfers the least amount of data, (iv) all three frameworks horizontally scale better as compared to vertical scaling, and (v) Spark is found to be least expensive in terms of $ cost for data processing while Hadoop is found the most expensive.
연구 동기 및 목표
- 하이브리드 클라우드 환경에서 하둡, 스파크, 플린크의 비교 평가가 부족한 점을 보완하기 위해.
- 공용 클라우드에서 노드를 빌려오는 클라우드 버스팅이 실행 시간과 성능에 미치는 영향을 분석하기 위해.
- 세 프레임워크의 수평 및 수직 확장성, 자원 활용도(CPU, RAM, 디스크), 비용 효율성을 평가하기 위해.
- 작업 유형, 확장성 모델, 비용에 따라 하이브리드 클라우드 배포에서 프레임워크 선택에 대한 실증적 통찰을 제공하기 위해.
- 실세계 하이브리드 클라우드 구성에서 분산 데이터 처리 프레임워크의 성능 기준을 설정하기 위해.
제안 방법
- 오픈스택(사설 클라우드, 캐리브라 랩, 애들레이드)과 마이크로소프트 아웃소스(공용 클라우드, 시드니 지역)를 사용해 하이브리드 클라우드를 구축하였다.
- 클라우드 버스팅을 시뮬레이션하기 위해 사설 클라우드 및 공용 클라우드 VM 조합에 하둡, 스파크, 플린크를 구성하였다.
- 배치 및 반복 작업을 사용해 실행 시간, 데이터 전송, 자원 활용도(CPU, RAM, 디스크)를 측정하기 위해 실험을 수행하였다.
- 확장성 평가를 위해 VM 수(수평 확장성)와 VM 당 코어 수(수직 확장성)를 다양하게 조정하였다.
- 공용 클라우드 사용(VM 및 대역폭) 기반으로 비용을 측정하고, 프레임워크 간 총 비용($)를 비교하였다.
- 일관된 네트워크 동작을 위해 프라이빗 및 공용 클라우드 환경을 보안적으로 연결하기 위해 웨어건(WireGuard)을 사용하였다.
실험 결과
연구 질문
- RQ1하이브리드 클라우드 환경에서 공용 클라우드에서 더 많은 노드를 빌릴 경우, 하둡, 스파크, 플린크의 실행 시간은 어떻게 변화하는가?
- RQ2하이브리드 클라우드에서 실행 시간 측면에서 세 프레임워크 중 어떤 것이 가장 뛰어난 성능을 보이는가?
- RQ3하이브리드 클라우드에서 작업 실행 중 하둡, 스파크, 플린크 간 노드 간 데이터 전송량은 어떻게 다를까?
- RQ4하이브리드 클라우드 환경에서 하둡, 스파크, 플린크에 대해 수평 확장성과 수직 확장성의 상대적 성능은 어떠한가?
- RQ5공용 클라우드 사용 및 대역폭을 고려할 때, 하이브리드 클라우드에서 데이터 처리에 가장 낮은 비용을 제공하는 프레임워크는 무엇인가?
주요 결과
- 더 많은 노드를 공용 클라우드에서 빌릴수록 실행 시간이 증가함을 확인하여, 클라우드 간 네트워크 지연과 대역폭이 성능에 크게 영향을 준다는 것을 시사한다.
- 플린크가 가장 낮은 실행 시간을 기록하였으며, 그 다음으로 스파크, 하둡 순이었고, 플린크는 배치 및 반복 작업 모두에서 스파크와 하둡를 앞섰다.
- 실행 중 하둡이 노드 간 전송하는 데이터량이 가장 많고, 스파크는 가장 적은 데이터량을 전송한다. 이는 스파크의 메모리 기반 처리 및 최적화된 데이터 샤프닝에 기인한다.
- 세 프레임워크 모두 수평 확장성이 수직 확장성보다 더 우수하며, 특히 수평 확장성이 더 일관된 성능 향상을 제공한다.
- 스파크는 가장 비용 효율적인 프레임워크이며, 높은 자원 소비와 긴 실행 시간으로 인해 하둡이 가장 비용이 많이 든다.
- 자원 활용도(CPU, RAM, 디스크)는 상당한 차이를 보이며, 스파크는 하둡보다 더 많은 RAM을 사용하지만, 더 빠른 실행으로 인해 전체 효율성이 뛰어나다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.