본문 바로가기

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

공개SW 소식

네이버와 다음, 줌인터넷의 빅데이터 처리는

OSS 게시글 작성 시각 2014-07-09 00:48:53 게시글 조회수 3710

2014년 07월 04일 (월)

ⓒ 마이크로소프트웨어, 유재석 기자 yoonjs8512@imaso.co.kr



네이버, 다음, 줌인터넷.


이름만 대면 다 아는 인터넷 서비스 업체들이 6월 3일 서울 잠실 롯데호텔에서 열린, 지디넷코리아가 마련한 ‘제11회 어드밴스드컴퓨팅컨퍼런스(ACC)’에서 빅데이터 관련한 내용들을 공개했다.


‘실시간 빅데이터 분석을 해볼까요?(다음)’, ‘수백 테라바이트 규모의 DB 저장소는 어떻게 제공하나(네이버)’, ‘사례 중심으로 보는 빅데이터 활용 노하우(줌인터넷)’이라는 타이틀로 청중들에게 자사의 빅데이터 인프라와 활용 사례를 설명했다.


가장 먼저 발표에 나선 유창국 다음커뮤니케이션(Daum) 데이터 유닛장은 “과거에는 다음 사이트에 방문한 사람들 대다수의 행동에 집중했다면, 이제는 각각의 사람들이 어떤 사람들인지 이해하기 위해 데이터 분석을 시작했다”며 “특히 모바일의 경우 PC보다 작은 화면이기 때문에 원하는 것을 보여주지 못하면 금방 사이트를 이탈하는 이용자들이 많았기에 개인화된 추천 서비스의 필요성을 느꼈다”고 말했다.


다음은 올해초부터 모바일 사용자들을 다음 서비스로 유입하기 위한 방안들을 만들었다. 그 중 하나가 다음 모바일 뉴스 페이지를 개개인마다 다르게 보여주는 서비스인 ‘나를 위한 추천 뉴스’였다. 1000만 명 정도 되는 이용자들의 데이터를 분석해 20분 마다 새로운 뉴스로 전환하는 것이 첫번째 시도였다.


유창국 유닛장은 “모바일 메인 페이지 방문자 90%가 보는 것이 뉴스 콘텐츠인데 일부 콘텐츠만을 선호하고, 어떤 콘텐츠의 경우는 굉장히 소수의 사람들만 이용한다”며 “사람들이 선호하는 콘텐츠를 가장 앞 자리에 배치하는 것이 우리의 과제”라고 설명했다.


다음은 개인화된 뉴스페이지를 보여주기 위해 아키텍처에 ‘인메모리 데이터 그리드(In Memory Data Grid)’를 도입했다. 데이터들을 실시간으로 처리하기 위한 장치다. 아키텍처는 아래 그림과 같이 구성됐다.


140703_bigdata_2


데이터는 정형화된 형태로 재 조직하는 데이터 콜렉터를 거쳐 인메모리 데이터 그리드와 실시간 개인화된 프로세싱 엔진(Real-Time Personalized Processing Engine)을 거치거나, 인메모리 데이터 그리드를 거치지 않고 실시간 개인화된 프로세싱 엔진으로 바로 데이터를 유입해 레디스 캐시에 저장된다.


이를 통해 1000만 명 정도의 이용자 데이터를 저장하며, 최대 20분 내로 각자의 페이지에 새로운 뉴스를 보여줄 수 있게 됐다.


하지만 어려움도 있었다. 다음은 오픈소스SW 기반 데이터 그리드 솔루션인 제이보스 인피니스팬(JBoss Infinispan)과 RHQ를 통해 데이터를 프로세싱하고 모니터링했다. 인피니스팬을 사용할 경우 20분 내에 1000만 명의 데이터를 처리할 수 없었다.


유 유닛장은 “이를 극복하기 위해 인메모리 데이터 그리드에서 실시간 개인화된 프로세싱 엔진단으로 넘어가는 곳에 코딩한 캐시를 두는 것으로 임시조치를 했는데 시스템이 복잡해져 스파크(Spark) 모델로 업그레이드하는 것을 고민하고 있다”고 말했다.


이혜정 네이버 수석은 DB 데이터를 분산 저장하는 방식인 샤딩(Sharding)의 한계점을 제시하고 이를 개선한 DB 솔루션인 nBase를 소개했다.


이 수석은 “특정 샤드에 부하가 걸리면 이를 다시 쪼개야 하는데 서비스의 전문 벌브 데이터를 걸어 이를 새 장비에 넣는 등 샤딩하는 룰을 바꿔야 한다”며 “이러한 것은 온라인에서 할 수 없으며 오프라인에서 가능한데, 가용성이 떨어지는 구조”라고 지적했다.


네이버가 찾은 대안은 nBase였다. 데이터를 논리적으로 분할해 분산의 유연성과 확장성을 가질 수 있는 것이 특징. nBase는 분산저장소를 제공하며, 컨테이너라는 분산 키 단위의 개별 공간과 RDBMS 기능을 제공한다. 특히, 오프라인이 아닌 서버 A에서 B로 온라인에서 데이터를 이전할 수 있는 기능도 있다.


이 수석은 “nBase의 경우 서비스 요청에 영향을 주지 않기에 온라인으로 유연하게 데이터를 옮길 수 있다”며 “기존 장비로 부하를 다 감당할 수 없거나 데이터 공간이 부족해도 이에 새로운 장비 붙여서 데이터를 이전할 수 있기 때문에 장비를 투입하자마자 서비스로 바로 적용할 수 있는 것이 특징”이라고 설명했다.


김우승 줌인터넷 부설연구소장은 초창기부터 하둡 시스템을 빅데이터 플랫폼으로 활용하고 있는 곳에서 현실적으로 하둡2로 업그레이드하는 방안에 대해 몇가지 시나리오로 설명했다.


줌인터넷은 하루 약 1000만 쿼리를 다루며 각 로그들을 플럼을 거쳐 하둡으로 분석하는 절차를 따른다. MySQL로 처리하기에는 무리가 따르는 수치. 실제 줌인터넷의 엔지니어가 MySQL로 처리를 해봤더니 레포트만 70억 건이 나왔다. 그렇기 때문에 NoSQL과 하둡의 도입은 필수였다고.


김우승 소장은 “하둡2로 업그레이드 할 경우 업그레이드 사실을 주위에 알려야 하며 클러스터의 모든 Job을 중지한 뒤 클러스터를 중지해야 한다”며 “필요한 설정파일과 데이터를 백업한 뒤 업그레이드를 하고 클러스터를 다시 가동한 후 중지했던 Job을 다시 실행한 뒤 주위에 업그레이드 사실을 알려야 한다”고 말했다.


김 소장은 클러스터를 재가동했을 때 이상없이 재가동되는 시간을 100% 보장할 수 없으며 종종 장애가 나는 노드들이 발생하기 때문에 반드시 롤백을 준비하고 착수해야 하지만, 그렇더라도 데이터 유실이 발생할 가능성을 염두에 둬야 한다고 강조했다.




※ 본 내용은 (주)마소인터렉티브(http://www.imaso.co.kr/)의 저작권 동의에 의해 공유되고 있습니다.
    Copyright ⓒ Maso Interactive Corp. 무단전재 및 재배포 금지


[원문출처 : http://news.imaso.co.kr/66361]

맨 위로
맨 위로