본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

줌인터넷이 빅데이터를 다루는 법

OSS 게시글 작성 시각 2013-01-22 11:32:30 게시글 조회수 4818

2013년 01월 22일 (화)

ⓒ 블로터닷넷, 이지영 기자 izziene@bloter.net



웹서비스는 가장 많은 데이터를 다루는 곳 중 하나다. 빅데이터 관련 기술이 구글, 페이스북, 트위터 같은 웹서비스 분야에서 많아 나온 건 우연이 아니다. 국내에서는 빅데이터를 다루는 업체를 꼽으라면 먼저 네이버와 다음 같은 인터넷 포털을 떠올린다. 검색엔진과 검색 서비스는 대량의 데이터를 수집, 저장하고 프로세싱한 뒤 텍스트마이닝이나 데이터마이닝을 거쳐 사용자가 원하는 검색 결과를 빠르게 제공할 수 있는 기술력을 갖춰야 하기 때문이다.

압축 프로그램 ‘알집’과 컴퓨터 백신 ‘알약’으로 잘 알려진 이스트소프트가 지난 2011년 개방형 포털을 표방하며 선보인 ‘줌인터넷‘도 마찬가지다. 줌인터넷은 블로그, 뉴스, 지식, 이미지, 동영상 등 자체적으로 약 200테라바이트(TB)에 이르는 데이터를 저장하고 처리하는 기술을 갖추고 있다. 200TB는 일반적으로 MP3 음악파일 5천만개를 저장해 둘 수 있는 용량이다.

zoom internet woo CTO

줌인터넷은 ‘빅데이터’를 다루는 곳인가

실로 엄청난 규모의 데이터를 처리하는 줌인터넷을 빅데이터를 다루는 곳이라고 보아도 되는 것일까. 김우승 줌인터넷 검색기술본부 연구소장이 내놓은 대답은 명쾌하다.

“많은 사람들이 빅데이터의 정의로 3V(Volume, Velocity, Variety)를 떠올립니다. 전 이 가운데 빅데이터를 가장 잘 설명하는 건 어찌됐든 ‘Volume’, 크기라고 생각합니다.”

김우승 연구소장은 빅데이터에 대한 개념을 단순하게 잡았다. 최근 들어 클라우드 컴퓨팅에서 클라우드 ‘구름’만을 가리키는 게 아니듯, 빅데이터에서 ‘빅’ 또한 단순히 대용량을 의미하는 건 아니다. 데이터를 처리하는 방식, 다양한 형태의 데이터 등 보다 복잡한 의미에서 ‘빅데이터’를 바라보고 있다.

그럼에도 불구하고 김우승 연구소장이 생각하는 빅데이터는 ‘빅’이란 단어가 뜻하는 기본에 충실하다. 그는 웹의 액세스로그와 같은 텍스트 포맷에서부터 각종 센서로 오는 바이너리 형태의 이벤트 데이터, 음성 데이터, 영상 데이터 등 다양한 데이터들이 쏟아져 나오고 있는 가운데 바로 이런 데이터들을 무수히 다루는 경우를 빅데이터라고 바라보았다.

“기존 데이터들은 대부분 데이터베이스(DB)에 데이터가 저장되고 관리된다는 일종의 약속이 있었습니다. 하지만 최근 데이터들은 단순히 DB에만 담겨 있는 게 아니지요. 훨씬 더 다양한 데이터들이 쏟아지고 있는데, 이런 관점에서 볼 때 줌인터넷은 ‘빅데이터’를 다루는 곳이 맞습니다.”

하둡, H베이스, 맵리듀스 등으로 검색 시스템 갖추기

줌인터넷이 지난해부터 서비스를 시작했다고 해서, 그때부터 빅데이터 관련 기술을 접하고 습득했던 것은 아니다. 줌인터넷은 좀 더 오래전부터 빅데이터 관련 기술을 연마해 왔다고 한다. 2007년 온네트엠엔스 시절부터 대용량 데이터 프로세싱 프레임워크와 분산스토리지를 기반으로 검색엔진을 개발해 왔다.

“웹서비스나 검색 서비스를 제공하는 곳은 무수하게 많은 텍스트를 처리합니다. 이 문서를 최대한 짧은 시간 안에 최대한 많이 읽어서 정보를 제공하는 게 검색 품질을 결정하지요. 문제는 문서가 정형화된 상태가 아니기에 기존 관계형 데이터베이스 관리 시스템(RDBMS)으로만 작업하는 데 어려움이 있습니다. 괜히 검색엔진 업체들이 하둡으로 눈을 돌리는 게 아닙니다.”

internet search doing

전통적인 RDBMS 환경은 분석 대상을 저장할 스토리지와 분석 처리에 필요한 메모리, 분석 연산을 수행하는 컴퓨팅 유닛으로 구성된다. 여기에 들어가는 데이터들은 일정한 형태와 양식을 갖추고 있다.

이 시스템 기본 인프라 위에 구조적으로 데이터를 저장하는 데이터베이스 솔루션과 스토리지, 데이터베이스의 데이터를 이용해 실제 분석을 수행하는 분석 프로그램이 탑재된다. 일반적인 분석 시스템에는 데이터베이스, 분석 알고리즘, 분석 프로그램 등을 하나의 패키지로 만들어 분석 상용 솔루션이 구성된다. 지금까지 가장 많이 알려진 분석 상용 솔루션은 BI/DW 솔루션으로, 대부분 수백개 이상의 프로세싱 유닛을 이용해 병렬 처리하는 MPP 아키텍처로 구성돼 있다. 지금까지 상당수 기업들이 많은 비용을 지불하고 MPP 기반의 BI/DW 솔루션을 구축해 데이터를 분석했다.

하지만 빅데이터는 기존 데이터에 비해 크기는 크지만, 기존 데이터의 중요도에 비해 덜 중요한 데이터일 경우가 많다. 이런 데이터를 비싼 비용을 지불하며 MPP 솔루션을 도입하기엔 아깝다. 하둡 생태계가 뜬 이유는 바로 여기에 있다. 저렴하면서도 방대한 데이터를 분석할 수 있다.

“검색 결과를 제공하기 위해 수집한 텍스트 데이터를 몽땅 RDBMS에 저장하면 비용 대비 효율이 떨어집니다. 우선 텍스트 데이터가 RDBMS에 딱 맞춰 들어갈 만큼 정형화된 형식을 갖추고 있지 않을 뿐더러 기존 RDMBS로는 감당하기 어려울 만큼 데이터 양이 많기 때문이지요. 줌인터넷이 하둡이나 NoSQL을 써서 수평적으로 확장 가능한 시스템 아키텍쳐를 설계한 건 바로 이 때문입니다.”

그 결과 지금의 줌인터넷은 하둡, H베이스, 맵리듀스, 피그, 하이브, 플럼과 같은 기술로 플랫폼을 구축해 5억건 이상의 블로그 문서를 저장하고 분석할 수 있는 검색 시스템을 갖췄다. 줌인터넷의 검색엔진 백엔드 중 데이터를 처리하고 마이닝하는 부분은 100% 하둡과 H베이스로 이뤄져 있다.

zoom data platform

하둡과 맵리듀스는 대용량 데이터를 쪼개 빠르게 분석할 수 있게 도와준다. H베이스는 대용량 데이터를 분산된 서버에 구조적으로 저장해 실시간 저장, 조회 기능을 제공한다. 피그와 하이브는 하둡에 저장된 데이터를 SQL과 같은 기존 스크립트를 이용해 데이터를 처리할 수 있는 기능을, 플럼은 데이터 발생원으로부터 데이터를 수집해 하둡 파일 시스템에 안정적으로 저장하는 역할을 맡는다.

“이전에는 MySQL로 처리할까 생각도 했습니다. 오라클 같은 상용 RDBMS는 데이터 양이 많아지면 여기에 부합되는 하드웨어가 엔지니어가 붙습니다. 오픈소스는 그런게 없지요. 순전히 경험에 의존해 만들고 데이터를 다뤄야 합니다.”

현재 줌인터넷은 100대 규모 이상의 클러스터를 구성해 대량의 사용자 검색 요청을 처리할 수 있도록 수정했고 멀티코어, SSD, 메인메모리 등 최신 하드웨어 사양에 최적화돼 운영할 수 있게 검색엔진 기술을 발전시켰다.

이밖에도 줌인터넷은 10억건 이상의 웹문서를 저장하고 처리할 수 있는 검색서비스 구축을 위한 자체 검색엔진을 개발 중이다. 내부적으로 메인메모리 기반의 읽기 성능이 뛰어난 키밸류 스토어 시스템을 자체 개발해 확보해 실시간 검색이 적용되는 뉴스 서비스에 적용하고 있는 단계다.

“이 시스템은 기존의 H베이스나 카산드라와 같은 다소 범용적인 NoSQL 시스템과 달리 대용량 문서를 고속으로 처리할 수 있는 데 특화됐습니다. 앞으로 메인메모리 기반의 구조로 재설계해 검색 성능을 획기적으로 높일 수 있는 캐싱시스템으로 활용할 계획입니다.”



※ 본 내용은 (주)블로터 앤 미디어(http://www.bloter.net)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒ 블로터 앤 미디어. 무단전재 및 재배포 금지



[원문출처 : http://www.bloter.net/archives/141143]

맨 위로
맨 위로