DOI QR코드

DOI QR Code

Using a Greedy Algorithm for the Improvement of a MapReduce, Theta join, M-Bucket-I Heuristic

그리디 알고리즘을 이용한 맵리듀스 세타조인 M-Bucket-I 휴리스틱의 개선

  • 김우열 (서울대학교 전기정보공학부) ;
  • 심규석 (서울대학교 전기정보공학부)
  • Received : 2015.07.27
  • Accepted : 2015.11.08
  • Published : 2016.02.15

Abstract

Theta join is one of the essential and important types of queries in database systems. As the amount of data needs to be processed increases, processing theta joins with a single machine becomes impractical. Therefore, theta join algorithms using distributed computing frameworks have been studied widely. Although one of the state-of-the-art theta-join algorithms uses M-Bucket-I heuristic, it is hard to use since running time of M-Bucket-I heuristic, which computes a mapping from a record to a reducer (i.e., reducer mapping), is O(n) where n is the size of input data. In this paper, we propose MBI-I algorithm which reduces the running time of M-Bucket-I heuristic to $O(r_{max}log\;n)$ and gives the same result as M-Bucket-I heuristic does. We also conducted several experiments to show algorithm and confirmed that our algorithm can improve the performance of a theta join by 10%.

세타조인은 데이터베이스에 있어서 가장 기본적이면서도 중요한 질의 중 하나이다. 최근 처리해야 하는 데이터의 양이 증가함에 따라, 맵리듀스와 같은 분산 병렬 처리 프레임워크를 사용한 데이터베이스의 질의처리가 많이 연구되고 있다. 대표적인 연구로 M-Bucket-I 휴리스틱을 이용한 세타조인이 있으나, 이 알고리즘은 수행시간이 입력 데이터의 크기를 n이라 할 때, 각 레코드를 $r_{max}$개의 리듀서 중 어느 리듀서로 보낼지 정하는 리듀서맵핑을 구하는데 O(n)의 시간이 걸려 쉽게 사용할 수 없다는 문제가 있다. 본 논문에서는 기존의 M-Bucket-I 휴리스틱을 개선하여, 같은 리듀서 매핑 결과를 내놓더라도 수행시간이 $O(r_{max}log\;n)$으로 보다 짧은 새로운 알고리즘을 제시한다. 다양한 실험을 통하여 기존의 맵리듀스를 이용한 세타조인보다 성능을 10% 정도 향상시킬 수 있음을 보였다.

Keywords

Acknowledgement

Supported by : 한국연구재단, 정보통신기술진흥센터

References

  1. J. Dean, and S. Ghemawat, "MapReduce: simplified data processing on large cluster," OSDI, 2004.
  2. A. Okcan, and M. Riedewald, "Processing Thetajoins using MapReduce," SIGMOD, pp. 949-960, 2011.
  3. J. Son, J. Lee, Y. Kim, and K. Shim, "Streaming Theta-Join Algorithm using MapReduce," Proc. of the 40th KIISE Fall Conference, pp. 182-184, 2013. (in Korean)
  4. D. Jiang, B. C. Ooi, L. Shi, and S. Wu, "The Performance of MapReduce: An In-depth Study," Proc. of the VLDB Endowment, Vol. 3, No. 1, pp. 472-483, 2010.
  5. S. Blanas, J. M. Patel, V. Ercegovac, J. Rao, E. J. Shekita and Y. Tian, "A Comparison of Join Algorithms for Log Processing in MapReduce," SIGMOD, pp. 975-986, 2010.
  6. A. Metwally, and C. Faloutsos, "V-SMART-Join, A Scalable MapReduce Framework for All-Pair Similarity Joins of Multisets and Vectors," PVLDB, pp. 704-715, 2012.
  7. D. Deng, G. Li, S. Hao, J. Wang and J. Feng, "MassJoin: A Mapreduce-based Method for Scalable String Similarity Joins," ICDE, pp. 340-351, 2014.
  8. S. Fries, B. Boden, G. Stepien and T. Seidl, "PHiDJ: Parallel Similarity Self-Join for High-Dimensional Vector Data with MapReduce," ICDE, pp. 796-807, 2014.
  9. X. Zhang, L. Chen, M. Wang, "Efficient Multi-way Theta-Join Processing Using MapReduce," PVLDB, pp. 1184-1105, 2012.
  10. C. Hahn and S. Warren, Extended edited synoptic cloud reports from shps and land statins over the globe, 1952-1996, http://cdiac.ornl.gov/ftp/ndp026c/