Abstract
As Hadoop consists of MapReduce programming model and the distirbuted file system HDFS, it is suitable framework for processing Big data. From these features, Hadoop has the ability to reduce the processing time for Small data whose size is smaller than HDFS block. However only one Map task is scheduled to process Small data because the Hadoop scheduler allocates one HDFS block to one Map task according to scheduling policy. Therefore when we use Hadoop to process Small data, we cannot effectively use the computational power of cluster. To resolve this problem, we propose the File Virtual Expanding(FiVE) technique. FiVE technique proposed in this paper expands Small data file to virtual HDFS blocks as many as the available Map task on cluster. So all available Map tasks are scheduled to process data. To do this, we maximize parallelism. To show that FiVE is effective to reduce the processing time for Small data, we implement our technique, and evaluate the performance via Mandelbrot Set program executions on Hadoop. Our evaluation results show that FiVE is effective to reduce the processing time for Small data on Hadoop.
Hadoop은 MapReduce 프로그래밍 모델과 HDFS 분산 파일 시스템으로 구성되어 있어 빅 데이터 처리에 적합한 프레임워크이다. 이러한 특징은 HDFS 블록보다 작은 크기의 스몰 데이터 처리에도 Hadoop을 이용함으로써 처리 시간을 단축시킬 수 있는 가능성을 가지고 있다. 그러나 Hadoop의 Map 태스크 스케줄링 정책상 HDFS 블록 단위로 Map 태스크가 스케줄링되기 때문에 스몰 데이터는 클러스터 규모와 상관없이 한 개의 Map 태스크만 할당되어 클러스터의 계산 능력을 효과적으로 이용하지 못하는 문제점을 가지고 있다. 이 문제를 해결하기 위해 본 논문에서는 파일 가상 확장 기법인 FiVE기법을 제안한다. FiVE 기법은 HDFS 블록 크기보다 작은 스몰 데이터를 클러스터의 가용 Map 태스크 수만큼 가상 HDFS 블록으로 확장하여 모든 가용 Map 태스크가 스케줄링되어 데이터를 처리하게 함으로써 처리의 병렬성을 극대화할 수 있다. 본 논문에서 제안하는 FiVE 기법이 스몰 데이터 처리 시간 단축에 효과가 있음을 보이기 위해 이를 적용한 Mandelbrot Set을 계산하는 Hadoop 응용 프로그램을 작성하고, 성능 평가를 하였다. 성능 평가 결과에 의하면 본 논문에서 제안하는 파일 가상 확장 기법 FiVE가 Hadoop을 이용한 스몰 데이터 처리에 효과가 있었다.