서지주요정보
Experimental comparison of flink, spark, and hadoop on big-benchmark = 빅벤치마크를 통한 플링크, 스파크, 하둡의 실험적 비교분석
서명 / 저자 Experimental comparison of flink, spark, and hadoop on big-benchmark = 빅벤치마크를 통한 플링크, 스파크, 하둡의 실험적 비교분석 / Hae Joon Lee.
발행사항 [대전 : 한국과학기술원, 2016].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8030121

소장위치/청구기호

학술문화관(문화관) 보존서고

MCS 16056

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Various frameworks for Big Data analytics have become important for large scale processing. Hadoop MapReduce is one of the most prominent programming model in the distributed system field, but the model has multiple disadvantages for running iterative algorithms, e.g., low performance caused by disk I/O cost. To overcome the inefficiency, in-memory frameworks such as Apache Flink and Apache Spark have been introduced. Nowadays, Spark-SQL developed by the Spark community is very popular in the field. These systems are actively developed and utilized in industry. In this thesis, we experimentally compare Flink and Spark-SQL with a comprehensive benchmark suite for Big Data systems, BigBench. 21 queries of the 30 BigBench queries are ported from Hive QL to Flink. Both systems are evaluated using the 21 queries to test the total elapsed time and data scalability on variable scale factors. Results show that in the experiment of data scalability, the elapsed time of Spark-SQL stays nearly constant for over a half of the queries as the dataset increases, whereas that of Flink linearly increases. In the experiment of the total elapsed time, Spark-SQL is slower than Flink on Scale Factor 100 for most queries, but on Scale Factor 300 the elapsed time of Spark-SQL for over a half of the queries is similar to that of Flink. We analyze the behavior of Flink and Spark-SQL on a per query basis in detail and point out the trade-offs of using the two systems according to certain situations.

기하 급수적으로 증가하는 데이터양을 처리하기 위해서 다양한 분산처리 프레임워크들이 등장했다. 그 중에서도 하둡은 분산처리계의 대표적인 프레임워크로 각광받고 있다. 하지만 하둡의 프로그래밍 모델인 맵리듀스 모델은 디스크 기반으로 연산되기 때문에 많은 환경에서 비효율적이다. 예를 들어 여러 잡들이 연결되어있을 경우, 중간 데이터 처리양이 많아져 디스크 입출력이 빈번하게 일어나므로 성능 저하가 발생한다. 이런 비효율적인 면을 개선하기 위해서 분산처리계에서는 다양한 메모리 기반의 프레임워크들이 등장했다. 하지만 이로 인해 어떤 프레임워크가 어느 주어진 특정한 환경에서 빅데이터를 처리하는데에 있어 최적인가라는 문제가 제기 된다. 이러한 문제를 해결하기 본 연구에서는 메모리 기반의 대표적인 프레임워크인 스파크와 플링크를 빅벤치 시스템을 통해 분석적 실험을 한다. 다른 벤치마크 시스템과 다르게 빅벤치는 다양한 모델로 구성된 빅데이터 워크로드를 제공하고 이미 많은 프레임워크들에 적용되어 있다. 실험 설계는 IBM Blade Server 위에서 Data Scalability 실험과 총 경과시간 실험을 하였다. 플링크의 워크로드는 자바 혹은 스칼라를 이용하여 빅벤치의 기존 모델과 동일하게 직접 구현되었고, 스파크는 하이브쿼리를 지원하기 때문에 빅벤치에서 제공하는 기존 하이브 워크로드를 사용하였다. 자세한 구현부 설명은 섹션 4에서 참고할 수 있다. 첫번째 실험 Data Scalability에서는 모든 워크로드중 2/3 워크로드에서 스파크는 데이터 스케일팩터가 증가함에도 불구하고 실행시간 변화량은 거의 없었다. 반면에 플링크는 데이터 스케일팩터가 증가하면서 실행시간도 일정하게 증가했다. 전반적인 이유로 스파크가 지원하는 하이브 워크로드의 데이터셋이 ORC 포맷으로 구성되었기 때문이다. ORC 포맷은 구조 특성상 기본 데이터셋 CSV 포맷보다 데이터 읽는 속도가 빠르고 데이터의 일정 크기까지 읽는 속도가 유지된다. 나머지 1/3 워크로드에서 스파크는 ORC 포맷의 이점이 적용되었음에도 불구하고 플링크와 마찬가지로 데이터 스케일팩터가 커질수록 시간의 변화량이 증가했다. 이 쿼리들 특성상 네트워크를 통해 처리되는 셔플 데이터양이 데이터셋의 크기가 커질수록 증가되었기 때문이다. 두 번째 실험 총 경과시간 실험에서는 모든 워크로드중 2/3 워크로드에서 스케일팩터 100에서는 플링크가 스파크보다 속도가 빨랐지만, 스케일팩터 300에서는 스파크가 플링크의 속도를 거의 따라잡거나 더 빨랐다. 왜냐하면 ORC 포맷의 특성으로 인해 실행시간의 변화량이 거의 없었던 스파크가 특정 데이터 크기부터는 플링크의 속도를 따라잡게 된 것이다. 셔플 데이터가 많이 발생하는 나머지 1/3 워크로드에서는 스파크의 성능이 플링크보다 현저하게 떨어졌다. 그 이유는 플링크의 런타임 모델의 특징인 함수들간의 파이프라이닝 지원이 되어 스파크보다 대량의 셔플 데이터들을 효율적으로 처리했기 때문이다. 실험에 대한 결과와 그에 대한 자세한 분석 내용은 섹션 6과 7에서 참고할 수 있있다.

서지기타정보

서지기타정보
청구기호 {MCS 16056
형태사항 v, 68 p. : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 이해준
지도교수의 영문표기 : Seungryoul Maeng
지도교수의 한글표기 : 맹승렬
학위논문 학위논문(석사) - 한국과학기술원 : 전산학부,
서지주기 References : p. 64-67
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서