빅데이터를 위한 메시징 시스템 ‘말린’

“"전통 메시징 시스템 빠른 속도-신뢰성 제공 못해"

컴퓨팅입력 :2015/08/27 16:01

“전통적인 메시징 시스템은 빠른 속도와 신뢰성을 동시에 제공하지 못한다. 확장성도 제한적이고, 규모와 정합성을 동시에 보장할 수 없다. 리얼타임과 배치 작업을 혼합하는 것도 어렵다. 맵알이 분산메시징시스템인 아파치 카프카나, 래빗MQ, 레스트MQ 같은 기술의 존재에도 새로운 메시징 시스템을 만드는 이유다.”

정덕원 한국맵알테크놀로지스 박사는 27일 서울 잠실롯데호텔에서 열린 지디넷코리아 개최 ‘제12회 어드밴스드컴퓨팅컨퍼런스(ACC)’에서 이같이 말했다.

그는 ‘리얼타임 글로벌 빅데이터 메시징 시스템-말린’이란 주제의 발표에서 전세계 규모의 분산 메시징 시스템의 필요성을 설명하고, 맵알에서 개발중인 빅데이터 플랫폼 기반의 메시징 시스템을 소개했다.

맵알테크놀로지스 정덕원 박사

그는 “2000년대까지 서비스지향아키텍처 방법론에서 엔터프라이즈서비스버스란 미들웨어가 여러 서비스를 하나의 앱으로 연계하는 역할을 맡았고, 상호운용성을 위해 메시지 브로커란 게 만들어졌다”며 “여러 데이터 소스를 받는 쪽으로 원활하게 전달하고, 대용량 데이터를 한번에 전송할 떄 좋은 시스템이지만, 메시지를 받는 브로커 자체가 데이터 전송자의 용량을 만족 못하면 병목이 생겨 서비스 전체 성능을 저하시킬 수 있다”고 지적했다.

그는 “메시지 큐를 효율적으로 분산시켜 클러스터로 만들고, 리스너에게 전달되도록 하는게 오늘날의 메시지큐 제품”이라며 “링크드인에서 만든 아파치 카프카도, 메시지 브로커가 여러 토픽을 여러 사용자에게 잘 분배해 메시지 소비를 안정적이고 효율적으로 사용하게 해주는 기술”이라고 설명했다.

전통적인 메시징 시스템과 대용량 데이터 처리를 위한 분산메시징시스템이 나와있는데, 맵알은 ‘말린(Marlin)’이란 새 기술을 개발하고 있다.

정 박사는 “현실 속에서 데이터 서비스는 배치에서 리얼타임으로 이동하고 있으며, 메시지를 기반으로 실시간 데이터를 처리하고, 바로 응용할 수 있어야 한다”며 “말린은 메시지 기반으로 데이터를 신뢰성있게 생산하고, 생산한 데이터를 정합성 보장하면서 소비자가 처리할 수 있게끔 하며, 궁극적으로 전세계 규모로 사용할 수 있는 시스템”이라고 설명했다.

말린의 기본 구조

말린은 빅데이터 메시지 패브릭이란 개념을 사용한다. 기본적 구조는 프로듀서와 리스너 사이에 ‘토픽’이란 게 존재한다. 초당 10억건 이상의 메시지를 처리할 수 있고, JSON 양식으로 저장돼 ETL 변환없이 SQL온하둡이나 데이터처리엔진에 연동해 바로 활용할 수 있다. 리스너의 경우 기존에 사용하던 것을 재활용할 수 있게 표준화된 API를 제공한다. 카프카, JMS 등을 사용할 수 있다.

그는 “말린은 미들웨어 형태가 아니라, 하둡 플랫폼 안에 존재한다”며 “하둡파일시스템(HDFS)과 맵알DB NoSQL에서 제공하는 기능을 모두 상속받아 사용할 수 있어 확장성과 성능, 신뢰성 등을 보장한다”고 말했다.

그는 “실시간 분석을 위한 애플리케이션으로 데이터를 전달하는 리얼타임 데이터 트랜스퍼를 통해 배치와 실시간 분석을 혼합해 사용할 수 있다”며 “스파크, 일레스틱서치, 스톰 등에서 메시지를 바로 분석할 수 있다”고 덧붙였다.

관련기사

정덕원 박사는 말린이 카프카보다 대규모로 사용가능한 메시징 시스템이라고 소개했다.

그에 의하면 말린은 클러스터당 수십만개 토픽을 생성하고, 초당 10억건 이벤트를 처리하며 데이터를 복제 저장해 페일오버를 제공한다. 세부적으로 데이터 흐름 접근권한을 설정해 보안성을 보장한다.

그는 “말린이 아직 정식버전(GA)으로 나오지 않았음에도 컴스코어는 방대한 메시징 시스템을 구성하기 위해 말린을 선택했다”며 “글로벌 서비스란 요구조건을 충족하기 위한 선택이었고, 비슷한 니즈에 국내에도 베타테스트를 준비중인 곳이 여럿 있다”고 강조했다.