(논문명) SPRINTER: A Fast n-ary Join Query Processing Method for Complex OLAP Queries - 'SIGMOD'

기존 DBMS 질의 처리 방식과 새로운 방식의 비교, 새로운 방식은 하나의 커다란 왼쪽 깊은 이진 트리 형태를 나눠, 각각의 작은 이진 트리 안에는 외래 키(파란색 박스)가 같이 있지 않도록 배치했다. -김민수 교수 제공
기존 DBMS 질의 처리 방식과 새로운 방식의 비교, 새로운 방식은 하나의 커다란 왼쪽 깊은 이진 트리 형태를 나눠, 각각의 작은 이진 트리 안에는 외래 키(파란색 박스)가 같이 있지 않도록 배치했다. -김민수 교수 제공

 

전산학부 김민수 교수 연구팀이 왼쪽 깊은 이진 트리(Left-Deep Binary Tree)를 ‘n항 조인(Join) 연산자’로 묶는 형태로 배치해 데이터베이스 질의 언어(Structured Query Language, SQL) 처리 성능을 대폭 높이고, 세계 최고 수준의 데이터베이스 관리 기술을 개발했다. 이번 연구 결과는 지난 6월 18일 국제학술대회 <시그모드(SIGMOD)>에서 발표됐다.

 

복잡한 질의 처리 어려운 기존 방식
데이터베이스 관리 시스템(DBMS, DataBase Management System)은 방대한 정보를 저장하고 목적에 맞게 검색, 관리할 수 있는 시스템을 통칭한다. DBMS에 대한 연구는 단순히 데이터베이스에 대한 연구를 넘어서 인공지능, 의료·바이오 등 다양한 분야에서 발생하는 정보의 저장, 관리, 분석, 활용에 관련된 연구를 수행한다. 또한, 데이터 모델 측면에서도 관계형, 그래프, 행렬, 시퀀스 등 다양한 데이터 모델을 위한 연구가 진행되고 있다. 특히 관계형 데이터의 경우 상용 DBMS 등을 통해 많은 기술 발전이 있었지만 두 테이블(Table)이 외래 키*(Foreign Key)의 관계로 결합되는 복잡한 형태의 SQL 질의는 잘 처리하지 못하는 근본적인 문제가 있었다. 최근 산업 현장에서 사용되는 관계형 데이터베이스의 스키마**(Schema)는 대단히 복잡해졌고 그에 따라 데이터베이스에 대한 SQL 질의도 매우 복잡해졌음에도 불구하고 대부분의 DBMS는 이미 고착화된 왼쪽 깊은 이진 트리 방법으로 질의 처리할 수밖에 없다는 한계가 존재했다.

 

여러 작은 이진 트리로 성능 향상해 
연구팀은 기존의 DBMS가 외래 키와 외래 키의 관계로 결합되는 복잡한 SQL 질의를 효율적으로 처리하지 못한다는 문제점을 해결하기 위해 테이블을 하나의 커다란 왼쪽 깊은 이진 트리 형태가 아니라 여러 개의 작은 왼쪽 깊은 이진 트리를 n항 조인 연산자로 묶는 형태로 배치해 처리하는 기술을 개발했다. 이때 각각의 작은 이진 트리 안에는 두 외래 키의 결합 관계가 발생하지 않도록 테이블을 배치했다. 또한, 연구팀은 특정 조건에서는 여러 개의 작은 왼쪽 깊은 이진 트리를 n항 조인 연산자로 묶는 것보다 하나의 왼쪽 깊은 이진 트리를 사용하는 것이  더 효율적이기 때문에 둘 중 어느 것이 더 효율적인지 비용을 정확히 계산하는 방법도 개발했다. 이어 해당 기술을 GPU 기반의 DBMS 개발업체인 미국 옴니사이(OmniSci) 사의 DBMS에 적용했고 그 결과 원래의 DBMS에 비해 최대 88배 성능이 향상된 결과를 얻었다. 그리고 종래 세계 최고 성능의 상용 DBMS에 비해 TPC-DS 벤치마크 결과 최소 5배, 최대 20배 더 빠른 성능을 보였다.
이번 연구는 데이터 처리를 위해 산업 표준으로 사용되는 SQL 질의를 기존 DBMS와는 전혀 다른 방법으로 처리함으로써 데이터베이스 관리 기술을 세계 최고 수준의 성능으로 끌어올렸다. 기존의 DBMS 기술로 해당 질의를 처리하기 위해서는 고비용의 하드웨어를 사용하거나 개발자가 해당 질의를 여러 작은 질의로 나누어 순차적으로 실행시켜야 했기 때문에 DBMS의 도입 비용이 증가하거나 개발 비용이 증가하는 단점이 있었다. 그러나 이번 연구에서 개발한 DBMS 기술이 기업 및 기관 등에서 상용화되면 이러한 도입 비용 및 개발 비용을 크게 감소시켜 줄 수 있을 것으로 전망된다. 김 교수는 “DBMS의 근본적인 설계 요소를 바꾸는 난이도 높은 연구를 국내 연구자들이 성공시켜 우리나라 시스템 소프트웨어 개발 수준이 진일보하는데 기여했다”라고 연구 의의를 전했다. 이어 김 교수는 “이번 기술을 규모가 큰 정보 플랫폼의 요소 기술로 사용해 유용하게 사용될 새로운 종류의 정보 플랫폼에 대해 연구할 것”이라고 추후 연구 계획을 밝혔다.
 

외래 키*
관계형 데이터베이스에서 한 테이블의 필드 중 다른 테이블 행의 식별이 가능한 키.

스키마**
컴퓨터 과학의 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조.
 

저작권자 © 카이스트신문 무단전재 및 재배포 금지