초록
대용량의 테이블을 수평적으로 분할하여 서로 다른 데이터베이스에 저장함으로써 데이터를 분산 저장하고 처리할 수 있는 방법을 샤딩이라 한다. 샤딩된 데이터에 대한 집계 또는 분석 함수를 적용하여 전체 결과를 얻기 위해서는 여러 곳으로 분산된 데이터에 대한 지역 결과를 통합하는 과정이 필요하다. 본 논문에서는 오픈 소스 DBMS의 하나인 큐브리드(CUBRID)의 샤딩 기술을 이용하여 분산된 부분 집계함수를 통합 처리하는 모듈을 설계하고 구현하는 방법에 대해 소개한다. 이 통합 모듈을 통해 여러 곳으로 샤딩된 데이터에 대하여 집계 및 분석 함수를 이용한 분석이 가능하도록 하였고, 단일 데이터베이스를 사용한 분석 성능과의 비교를 통해 샤드 분산 데이터베이스를 사용한 집계 계산이 효율적임을 보인다.
Database Shard is a technique that can be queried and stored by dividing one logical table into multiple databases horizontally. In order to analyze the shard data with aggregate or analysis functions, a process is required that integrates partial results on each shard database. In this paper, we introduce the design and implementation of a distributed processing system for aggregation and analysis on the CUBRID Shard distributed database, which is an open source database management system. The implemented system can accelerate the analysis onto multiple shards of partitioned tables; it shows efficient aggregation on shard distributed databases compared to stand-alone databases.