본문 바로가기

Faculty Introduction

김민수 (Google Scholar)

전산학부

초고속 데이터 분석, 데이터 패브릭, DB-ML 시스템
Email : minsoo.k@kaist.ac.kr
Laboratory : http://infolab.kaist.ac.kr
Teacher start-up company : 창업준비중
Research LIST

Research contents

오늘날 IT, 제조, 의료 등 많은 첨단 산업들에서 대규모 데이터에 대한 빠르고 효율적인 분석처리 및 의사결정이 사업의 성공 여부를 결정짓고 있습니다. InfoLab은 다양한 데이터 모델, 다양한 컴퓨팅 환경, 다양한 분석 처리 연산에 대한 세계 최고 수준의 소프트웨어 시스템 기술들을 연구 개발하고 있으며, 특히 초대규모 데이터에 대한 GPU 기반의 빠른 분석 처리, 그래프 모델을 중심으로 한 이종 데이터베이스들의 통합, 데이터베이스-기계학습 통합 질의 처리 시스템, 고성능 블록체인 시스템 등의 연구들을 진행하고 있습니다.

Research results

관계형 데이터의 고속 질의 처리

관계형 데이터는 산업계에서 전통적으로 널리 사용되는 데이터로서 주로 관계형 데이터베이스 시스템 (RDBMS)을 이용하여 저장하고, 그에 대한 SQL 분석 질의를 RDBMS에서 실행하여 얻습니다. 오늘날 관계형 데이터에서 처리가 가장 어려운 질의는 외래키(Foreign Key; FK) 간의 조인 연산이 포함된 질의로서 산업표준 TPC-DS 벤치마크의 26%가 이에 해당될 정도로 빈번합니다. InfoLab은 그러한 어려운 질의들을 최적최악(worst-case optimal) 조인과 n항 조인연산자 기반의 최적화 기술을 통해 기존 상용 DBMS들 대비 성능을 5~20배 향상시킨 세계 최고 성능 DBMS 기술(일명: SPRINTER)을 개발하는데 성공했습니다 (데이터베이스 분야 top conferenceACM SIGMOD 2019에 발표). SPRINTER 기술은 GPU를 사용할 경우 질의 처리 속도가 더욱 향상됩니다. 그 외에 관계형 데이터의 분산 처리에 대해서도 Spark SQL 대비 4.2배 더 빠른 기술을 개발한 바 있습니다 (분야 top conferenceIEEE ICDE 2018에 발표).

 

1조 간선 규모의 그래프 데이터 처리

정점(vertex)과 간선(edge)들로 구성된 그래프 데이터는 최근 산업계에서 가장 각광받는 데이터로서 데이터 객체들간의 복잡한 관계를 표현하기 위해서, 또는 객체들 간의 연결성에 기반한 분석 연산을 위해 데이터 패브릭, Knowledge Base 등의 응용에서 널리 사용되고 있습니다. 대부분의 그래프 시스템들이 빠른 인메모리 분석을 위해 그래프를 vertex-cut 또는 edge-cut으로 분할 후 분산 시스템 상에서 인메모리 분석을 하지만, 이 경우 네트워크 통신 비용이 매우 크거나 메모리 사용량이 매우 크다는 근본적인 문제가 발생합니다. InfoLabNVMe SSDGPU 기반의 세계 최고 성능의 그래프 처리 엔진(일명 GStream)을 개발한 바 있습니다 (분야 top conferenceACM SIGMOD 2016에 발표). 지속적인 기술개발로 현재 GStream은 컴퓨터 한 대만으로 1조 간선의 초대규모 그래프를 매우 빠르게 처리 가능합니다. 또한, 그래프 처리 성능 벤치마크를 위한 1조 간선 규모의 합성 그래프를 생성할 수 있는 기술들(일명: TrillionG, EvoGraph, LineageBA)을 각각 분야 top conferenceACM SIGMOD 2017, ACM SIGKDD 2018, IEEE ICDE 2021에 발표한 바 있습니다.

 

대규모 기계학습 시스템

추천시스템, 딥러닝 등 많은 기계학습 알고리즘들이 행렬에 대한 복잡한 연산을 기반으로 이루어집니다. 최근 추천 알고리즘, 전장유전체 분석, 인공지능 언어모델 등으로 인해 대규모 행렬에 대한 복잡 연산을 분산 방식으로 처리할 수 있는 엔진 기술이 매우 중요해지고 있으나, 종래 기술들은 모두 네트워크 통신 비용이 매우 크거나 메모리 사용량이 매우 크다는 근본적인 문제들을 지니고 있습니다. InfoLab은 분산 시스템의 태스크(task) 메모리 사용량을 초과하지 않는 수준에서 네트워크 통신 비용을 최소화하는 행렬 계산 엔진(일명: DistME)를 개발하는데 성공했습니다 (top conferenceACM SIGMOD 2019에 발표). DistME는 기존 SOTA 기술들인 IBMSystemML이나 HPC 분야의 ScaLAPACK 대비 최대 14배 더 빠르고 100배 더 큰 데이터를 분석 처리합니다.

 

대규모 유전체 데이터 분석

전 세계 시퀀스 데이터들 중 가장 큰 비중을 차지할 데이터는 바이오 시퀀스 데이터입니다. 바이러스 등의 유전자 진단은 특정 유전자(: COVID-19) 및 그 변이에만 나타나고, 다른 유전자(: 숙주 유전자들)에는 나타나지 않는, 프라이머(primer)라 불리는 짧은 염기서열을 설계하는 것이 핵심입니다. 우수한 프라이머 일수록 목표 유전자에만 달라붙어 PCR 장치를 통해 증폭시켜 정확히 진단할 수 있습니다. 종래에는 Primer3PlusBLAST 계열을 도구들을 이용하여 특정 유전자를 위한 프라이머를 설계했으나 시간이 오래 걸리고 정확도가 다소 떨어지는 문제가 있었습니다. InfoLab은 일곱 단계로 구성된 맵리듀스 분산 알고리즘과 GPU 계산의 조합을 통해 종래의 어떤 도구들보다 정확한 유전자 진단이 가능한 시리즈 기술(일명: MRPrimer 시리즈)들을 개발한 바 있습니다 (분야 top journalNucleic Acids Research 2015, 2016, 2017, 2019에 발표).

  

                                                   [그림 좌부터] SPRINTER 기술, GStream 기술, DistME 기술, MRPrimer 기술