DOI QR코드

DOI QR Code

External Merge Sorting in Tajo with Variable Server Configuration

매개변수 환경설정에 따른 타조의 외부합병정렬 성능 연구

  • 이종백 (성균관대학교 전자전기컴퓨터공학과) ;
  • 강운학 ;
  • 이상원 (성균관대학교 전자전기컴퓨터공학과)
  • Received : 2016.02.12
  • Accepted : 2016.04.22
  • Published : 2016.07.15

Abstract

There is a growing requirement for big data processing which extracts valuable information from a large amount of data. The Hadoop system employs the MapReduce framework to process big data. However, MapReduce has limitations such as inflexible and slow data processing. To overcome these drawbacks, SQL query processing techniques known as SQL-on-Hadoop were developed. Apache Tajo, one of the SQL-on-Hadoop techniques, was developed by a Korean development group. External merge sort is one of the heavily used algorithms in Tajo for query processing. The performance of external merge sort in Tajo is influenced by two parameters, sort buffer size and fanout. In this paper, we analyzed the performance of external merge sort in Tajo with various sort buffer sizes and fanouts. In addition, we figured out that there are two major causes of differences in the performance of external merge sort: CPU cache misses which increase as the sort buffer size grows; and the number of merge passes determined by fanout.

거대한 데이터로부터 가치 있는 정보를 추출해 내는 빅데이터 기술의 필요성은 나날이 커지고 있다. 빅데이터 분석을 위해 사용되는 하둡 시스템은 맵리듀스를 통해 데이터를 처리하였으나, 맵리듀스 프레임워크는 코드 재사용성의 한계, 질의 최적화 기술의 부재 등의 단점을 보인다. 이를 극복하기 위해 SQL-on-Hadoop이라 불리는 하둡 기반의 SQL 질의 처리 기술이 주목받고 있다. SQL-on-Hadoop 기술 중 타조(Tajo)는 국내 개발진이 주축이 되어 개발되었다. 타조는 데이터 분석을 위해 외부합병정렬 알고리즘을 사용하며, 정렬 연산에 영향을 주는 매개변수로 정렬 버퍼 사이즈와 팬-아웃을 가진다. 본 논문은 타조의 정렬 연산에 영향을 미치는 매개변수인 정렬 버퍼 사이즈와 팬-아웃 값에 따른 정렬의 성능 차이를 보인다. 또한 측정한 성능에 대하여 정렬 버퍼 사이즈가 증가함에 따른 CPU 캐시 미스의 비율 증가, 팬-아웃에 따른 합병 단계 수의 변화가 성능 차이의 원인임을 보인다.

Keywords

Acknowledgement

Grant : 스마트TV 2.0 소프트웨어 플랫폼, 비휘발성 메모리 기반 개방형 고성능 DBMS 개발

Supported by : 정보통신기술진흥센터

References

  1. Cisco, "Data Virtualization Redefines the Stock Exchange," Cisco, 2013.
  2. Apache Hadoop. [Online]. Available: http://hadoop.apache.org/
  3. K.-H. Lee, W.J. Park, K.S. Cho, W.Ryu, "The MapReduce framework for Large-scale Data Analysis: Overview and Research Trends," Electronics and Telecommunications Trends, Vol. 28, No. 6, pp. 156-166, Dec. 2013. (in Korean)
  4. Ma, Zhiqiang, and Lin Gu, "The limitation of Map-Reduce: A probing case and a lightweight solution," Proc. of the 1st Intl. Conf. on Cloud Computing, GRIDs, and Virtualization, pp. 68-73, 2010.
  5. White, Tom, Hadoop: The definitive guide, O'Reilly Media, Inc, 2012.
  6. Shvachko, Konstantin, et al., "The hadoop distributed file system," Mass Storage Systems and Technologies (MSST), 2010 IEEE 26th Symposium on. IEEE, pp. 1-10, 2010.
  7. Dean, Jeffrey, and Sanjay Ghemawat, "MapReduce: simplified data processing on large clusters," Communications of the ACM, Vol. 51, No. 1, pp. 107-113, 2008. https://doi.org/10.1145/1327452.1327492
  8. Apache Hive. [Online]. Available: http://hadoop.apache.org/hive
  9. Kornacker, Marcel, et al., "Impala: A Modern, Open-Source SQL Engine for Hadoop," CIDR, 2015.
  10. Matei Zaharia, Mosharaf Chowdhury, Michael J. Franklin, Scott Shenker, Ion Stoica, "Spark: cluster computing with working sets," Proc. of the 2nd USENIX conference on Hot topics in cloud computing, pp. 10-10, Jun. 2010
  11. Zaharia, Matei, et al., "Resilient distributed datasets: A fault-tolerant abstraction for in-memory cluster computing," Proc. of the 9th USENIX conference on Networked Systems Design and Implementation, USENIX Association, pp. 2-2, 2012.
  12. Apache Tajo: A big data warehouse system on Hadoop, [Online]. Available: http://tajo.apache.org/
  13. Chen, Yueguo, et al., "A study of sql-on-hadoop systems," Big Data Benchmarks, Performance Optimization, and Emerging Hardware. Springer International Publishing, pp. 154-166, 2014.
  14. Arnaldo Carvalho de Melo, "The New Linux perf tools," presentation from Linux Kongress, 2010.