DOI QR코드

DOI QR Code

Load Balancing for Distributed Processing of Real-time Spatial Big Data Stream

실시간 공간 빅데이터 스트림 분산 처리를 위한 부하 균형화 방법

  • 윤수식 (KAIST 지식서비스공학대학원) ;
  • 이재길 (KAIST 지식서비스공학대학원)
  • Received : 2017.07.25
  • Accepted : 2017.09.18
  • Published : 2017.11.15

Abstract

A variety of sensors is widely used these days, and it has become much easier to acquire spatial big data streams from various sources. Since spatial data streams have inherently skewed and dynamically changing distributions, the system must effectively distribute the load among workers. Previous studies to solve this load imbalance problem are not directly applicable to processing spatial data. In this research, we propose Adaptive Spatial Key Grouping (ASKG). The main idea of ASKG is, by utilizing the previous distribution of the data streams, to adaptively suggest a new grouping scheme that evenly distributes the future load among workers. We evaluate the validity of the proposed algorithm in various environments, by conducting an experiment with real datasets while varying the number of workers, input rate, and processing overhead. Compared to two other alternative algorithms, ASKG improves the system performance in terms of load imbalance, throughput, and latency.

최근 스마트 자동차, 스마트폰과 같은 다양한 소스로부터 공간 빅데이터 스트림을 수집하는 것이 매우 용이해졌다. 공간 데이터 스트림은 편중되고 동적으로 변화하는 분포를 지니기 때문에 전체 부하가 분산 클러스터 내의 작업자들에게 효율적으로 분배되지 않을 경우 전체 시스템의 성능이 저하된다. 본 연구에서는 공간 데이터 스트림에 특화된 부하 균형화 알고리즘인 적응적 공간 키 그룹핑(ASKG)을 제안한다. ASKG의 핵심 아이디어는 공간 데이터 스트림의 최근 분포를 학습하고 이를 기반으로 향후 유입되는 데이터 스트림이 각 작업자에게 고르게 분배되도록 하는 새로운 그룹핑 스키마를 제안하는 것이다. 이를 공간 분포의 변화에 맞춰 주기적으로 반복함으로서 적응적으로 부하 불균형을 해결할 수 있다. 실제 데이터셋에 대해 작업자의 수, 입력 속도, 공간 질의 처리 시간을 변화시키며 성능을 평가한 결과, 대안 알고리즘 대비 제안 방법이 부하 불균형, 처리량, 지연 시간에서 높은 개선효과를 보였다.

Keywords

Acknowledgement

Supported by : 국토교통부

References

  1. Cugola, Gianpaolo, and Alessandro Margara, "Processing flows of information: From data stream to complex event processing," ACM Computing Surveys (CSUR) 44.3, 2012.
  2. Rivetti, Nicolo, Leonardo Querzoni, Emmanuelle Anceaume, Yann Busnel, and Bruno Sericola, "Efficient key grouping for near-optimal load balancing in stream processing systems," Proc. of the 9th ACM International Conference on Distributed Event-Based Systems, ACM, 2015.
  3. Gedik, Bugra, "Partitioning functions for stateful data parallelism in stream processing," The VLDB Journal 23.4: 517-539, 2014. https://doi.org/10.1007/s00778-013-0335-9
  4. Nasir, Muhammad Anis Uddin, Gianmarco De Francisci Morales, David Garcia-Soriano, Nicolas Kourtellis, and Marco Serafini, "The power of both choices: Practical load balancing for distributed stream processing engines," IEEE 31st International Conference on Data Engineering. IEEE, 2015.
  5. Miller, Harvey J., "Tobler's first law and spatial analysis," Annals of the Association of American Geographers 94.2, 2004.
  6. Samet, Hanan, "The quadtree and related hierar-chical data structures," ACM Computing Surveys (CSUR) 16.2: 187-260, 1984. https://doi.org/10.1145/356924.356930
  7. Barnes, Josh, and Piet Hut, "A hierarchical O (N log N) force-calculation algorithm," Nature 324.6096: 446-449, 1986. https://doi.org/10.1038/324446a0
  8. Arthur, David, and Sergei Vassilvitskii. "k-means++: The advantages of careful seeding," Proc. of the eighteenth annual ACM-SIAM symposium on Discrete algorithms. Society for Industrial and Applied Mathematics, 2007.
  9. Malinen, Mikko I., and Pasi Franti, "Balanced k-means for clustering," Joint IAPR International Workshops on Statistical Techniques in Pattern Recognition (SPR) and Structural and Syntactic Pattern Recognition (SSPR), Springer, Berlin, Heidelberg, 2014.
  10. Bradley, P. S., K. P. Bennett, and Ayhan Demiriz, "Constrained k-means clustering," Technical Report, MST-TR-2000-65, Microsoft Research, 2000.