누구나 다 아는 대용량 데이터 분석 기술 (Big Data Analytics)

빅데이터 관련자료 2013. 8. 29. 11:33


 출처 : 우승이의 블로그


최근 클라우드 컴퓨팅과 더불어 대용량 데이터 분석기술 (Big Data Analytic) 에 대한 얘기들이 관심들을 받고 있습니다. 제가 회사를 옮긴 후 2009년초 부터 이와 관련하여 프로젝트를 추진해온 경험들과 그간의 트렌드를 고려해서 한번은 정리를 해야지 해야지 하면서 게으름을 피우고 있었는데 최근 여러모로 스스로 동기부여되는 일도 있고해서  아무래도 한번은 정리하고 넘어가야 할 것 같아서 포스팅을 하게되었습니다. 다 쓰고 보니 글의 양이 제법 되는 군요.

나름 이쪽의 일을 3년여간 해온 경험과 최근에 이러저러 알게된 관련한 얘기들을 두서없이 정리하였습니다. 대용량 데이터 분석과 관련해서 최근 여러 컨퍼런스에도 언급되고 있는 얘기들중에도  중복된 내용들도 있지만 제 개인적인 관점에서 생각하고 참고한 내용들을 중심으로 정리하였고 원래 이 분야에 계신 분들보다는 이 분야에 관심이 생기신 분들에게 작은 도움이 되지 않을까 생각되네요.

1. 대용량 데이터란 무엇인가?

도대체 대용량 데이터분석이 무엇이냐? 라는 질문부터 생각을 해봐야겠지요. 그전에 그럼 또 대용량데이터는 얼마만한 크기야? 라고 말하는 분들도 있을 것입니다. 대용량데이터에 대한 정의는 일반적으로 현존하는 기술 수준 대비 처리하기 힘든 규모의 데이터 사이즈를 대용량 데이터라고들 합니다. 즉, 기술의 발달에 따라 1950년대에는 16KB 가 빅데이터라고 취급되던 때도 있었고 , 기가바이트에서 최근 테라바이트를 훌쩍 넘어서 페타, 제타 에서 요타바이트에 이르는 규모를 대용량데이터라고들 말하고 있습니다. 하지만 이러한 데이터의 사이즈만을 가지고 데이터를 다루는 문제를 대용량데이터분석이라고 생각해서는  문제가 있습니다. 현실적으로 대용량데이터라는 것은 처리해야 할 데이터의 크기뿐 아니라 처리해야 하는 방식 , 데이터의 구조를 모두 고려해야만 대용량데이터분석이 얼마나 어렵고 어떻게 처리를 해야할 지를 이해할 수 있습니다.

대용량데이터의 3가지 요소

대용량데이터란 무엇인가? 를 설명할 때 다음과 같이 크게 세가지 요소를 들수 있습니다. 데이터의 크기 (Volume), 데이터가 흘러들어오는(Feed) 속도(Velocity) , 데이터의 형태(Variety).




[출처 TDWI Research 2011 Big Data Analytic Report] 


2. 왜 대용량 데이터 분석이 어려운가?

지금까지의 데이터 분석 기술은 대부분 한대의 컴퓨터상의  인메모리, 파일시스템,데이터베이스에 데이터를 저장하고 이를 기반으로 데이터를 분석하는 알고리즘을 실행하는 구조였습니다. 대부분의 통계툴들은 여전히 인메모리에 데이터를 로딩해서 통계/분석/마이닝 알고리즘을 실행하는 것이 기본구조입니다. 이것이 데이터베이스시스템이 나오면서 대용량의 데이터를 처리할 수 있는 규모가 커지게 되었습니다. 하지만 여전히 이러한 분석 시스템의 구조는 싱글머신/싱글코어에 최적화되어 있었으며 , 최근에야 싱글머신/멀티코어에서 실행할 수 있는 다양한 알고리즘의 개발과 시스템들이 등장하고 상용화되어 쓰이고 있지요. 지금까지 빅데이터라고 하는 것을 처리하기 위해서는 몇십기가바이트 인메모리 또는 몇백기가 메인메모리와  SAN 스토리지를 이용해서 대용량의 파일시스템을 마운트할 수 있는 고사양 고가의 하이엔드급 서버를 이용해서 DW, DM 을 구축해왔습니다. 데이터 증가에 따른 시스템 확장은 더 고사양의 장비로 교체하거나 CPU/메모리/디스크 증설이라는 방식을 이용해서 하는 scale-up 방식만이 유일했습니다. 이러한 장비에 최적화된 소프트웨어의 업그레이드와 이에 상응하는 통계/데이터마이닝 소프트웨어 라이센스를 고가로 함께 구매해서 해결해왔던 것입니다. 문제는 최근 구글,아마존, 야후!, 페이스북, 트위터와 같은 인터넷 기업들이 고객들의 사용로그와 트랜잭션 로그를 기반으로 데이터 마이닝과 이를 기반으로 하는 서비스, 광고 플랫폼을 구축하고자 하면서 그 한계에 이르게 된 것입니다. 테라바이트에서 페타바이트규모의 데이터를 분석해서 검색엔진, 소셜서비스, 광고등을 하기에는 기존의 시스템 , 소프트웨어 아키텍쳐로는 불가능했던 것입니다. 뿐만 아니라 이들이 처리해야 하는 데이터들은 데이터베이스에 깔끔히 정리된 정형돠된 데이터가 아니라 웹을 통해서 수집한 다양한 비정형데이터와 함께 비디오, 사진, 음향등 다양한 미디어 정보를 수집해서 분석해야 하기때문에 더욱 힘들어질 수밖에 없게 된것입니다.

3. 관련 기술

구글은 이러한 측면에서 초기에 MapReduce 라고하는 프로그래밍 모델과 대용량 데이터 분산처리프레임워크 과 대용량 데이터를 효과적으로 저장하고 확장할 수 있는 GFS(구글파일시스템) 기술을 확보하고 이를 적극적으로 활용하고 있었고, 이를 바탕으로 구글만의 검색기술과 검색서비스를 가능하게 한것입니다. 이러한 그들만의 기술이 논문으로 공개되면서 이를 기반으로 오픈소스 형태의 다양한 대용량 분산파일시스템, 대용량 분산처리프레임워크등이 등장하게 되었습니다.

구글이 가진 기술을 참고해서 등장한 다양한 맵리듀스프레임워크중에서 가장 주목을 받고 그 기반으로 커다란 에코시스템을 갖추게 된 것이 바로 자바 기반의 아파치 하둡(Apache Hadoop) 입니다. 구글이 발표한 분산 프레임워크 논문을 바탕으로 야후!가 오픈소스로 개발한 하둡은 예전 리눅스의 등장으로 OS 시장에 있어서 틀을 크게 바꾸었듯이 빅데이터(대용량데이터) 분석 시장에 있어서 커다란 대안으로 등장을 하고 있습니다. 야후! 내부에서 사용하던 이 기술이 오픈소스로 발표되면서 크게 주목을 받으면서 사실상 현재 페이스북, 트위터, 링크드인, 이베이, 아마존 등 많은 글로벌 인터넷, 커머스 업체들은 빅데이터 처리를 위해서 하둡의 사용은 당연시 하고 있으며 이를 기반으로 한 다양한 처리 프레임웍이나 기술들을 공개하고 있고 그 저변을 매우 빠르게 넓혀가고 있습니다.

국내의 대표 포털 네이버, 다음 등 국내 대표 인터넷 기업들 뿐 아니라 S클라우드를 준비하고 있는 삼성전자와 같은 제조사 역시 스마트폰, 스마트 디바이스를 위한 컨텐츠 서비스 와 이를 통해서 발생하는 엄청한 로그 데이터 처리를 위해서 하둡을 적극적으로 활용하고 있습니다.  빅데이터 분석이라는 트렌드는 하둡이 없었다면 불가능했을지 모릅니다. 물론 좀더 들여다보면 야후!가 하둡을 오픈소스로 공개할 수 있었던 문화(?), 클라우데라(Cloudera)와 같은 하둡배포판을 만드는 회사의 등장과 이에 대한 투자들이 이 모든것을 촉발한 것이겠이죠.  또한 이러한 오픈소스인 하둡이 저비용으로 빅데이터를 처리할 수 있다는 장점이 크게 부각된 이면에는  전세계적인 경기침체로 효율적인 IT투자에 대한 관심이 높아진 것도 들 수 있겠죠. 최근 인터넷 기업뿐 아니라 글로벌 대기업이나, 금융회사들이 자신들의 트랜잭션 분석이나 사용로그 분석을 위해서 하둡에 대해서 크게 관심을 가지고 있고  오라클, IBM, EMC, SAS 등의 DW 시장의 강자들이 자신들의 솔루션에 하둡을 결합해서 제품과 솔루션을 내놓는 것을 봐도 하둡을 기반으로 하는 대용량데이터분석시장의 큰 변화를 느낄 수 있습니다.

참고로 맵리듀스 프레임워크는 하둡이외에도  파이썬언어 기반의 디스코(DISCO) , MS 닷넷 기반으로 만들어진 MySpace 의 Qizmt 도 있고 이외에도 다양한 맵리듀스 프레임워크들이 있습니다만 하둡만큼 크게 관심을 받지는 못하고 있습니다.

하둡은 크게 두개의 요소로 나뉘어져 있습니다. 하나는 맵리듀스프레임워크 (MapReduce Framework) 와 하둡분산파일시스템(HDFS) 입니다. 분산파일시스템은 반드시 HDFS 을 사용할 필요는 없습니다. 하둡은 다양한 분산파일시스템과 연동할 수 있도록 구현되어 있고 대표적으로 아마존의 클라우드 서비스를 이용해서 하둡 어플리케이션을 개발하는 이들은 아마존의 분산파일시스템인 S3 을 이용하고 있습니다.

초기에는 하둡을 이용해서 대용량데이터분석을 위해서는 자바언어를 이용해서 직접 프로그래밍을 해야했습니다. 하지만 하둡으로 데이터 분석 로직을 손쉽게 구현할 수 있는 프로세싱언어인 pig와 SQL과 같은 언어를 제공하는 hive 이 등장하고 최근 많이 안정화되면서 이에 대한 활용이 늘어가고 있습니다. 일일히 자바프로그램을 개발하는 것에 비해서 상대적으로 성능이 떨어지지만 개발 생산성과 디버깅등의 편이성 때문에 실무에서의 활용이 커지고 있습니다. 프로그래머 입장에서는 pig가 좀더 익숙한 반면  데이터베이스을 기반으로 분석업무를 하는 데이터마이너들에게는 hive가 좀더 편할 것입니다. 최근엔 오픈소스 통계툴로 유명한 R이 하둡과 연동되면서 이에 대해서 관심을 가지는 이들도 늘어가고 있는 것 같습니다. 아무래도 기존 데이터분석,데이터마이닝을 하는 데이터분석가들에게는 통계툴이 더 익숙할테니까요. 이렇듯 하둡을 중심으로 대용량데이터분석에 필요한 다양한 기술들이 통합되고 응용되면서 하나의 에코시스템을 이루어가고 있고 관련 솔루션 업체, 스타트업들이 많이들 등장하고 있습니다.

이러한 프레임워크와 도구 측면과 더불어 고려해야 할 것이 있습니다. 현재까지 대용량 데이터분석 및 마이닝 알고리즘들이 이러한 분산환경에 최적화되어 개발된 것들이 많지 않다는데 있습니다. 아마도 구글이나 야후! 같은 곳에서는 이러한 알고리즘들이 내부적으로 개발되어 활용되고 있겠지만 공개된 것은 그리 많지 않은 상황입니다. 대용량 데이터의 분석을 위해서는 앞서 말한 분산처리를 하는 프레임워크와 분산파일시스템도 중요하지만 이러한 컴퓨팅 환경에서 데이터 분석을 효율적으로 할 수 있는 처리하 수있는  확장성있는 분석기법과  알고리즘의 확보가 매우 중요합니다.  최근 하둡이 유행함에 따라 학계나 업계에서 다양한 분산 알고리즘에 대한 연구와 발표가 있지만 여전히 다양한 분야에 하둡의 맵리듀스 프레임워크의 장점을 다 살려서 활용하기에는 부족함 면이 있습니다. 실제 실상을 들여다보면 하둡을 활용한다고 도입을 검토하다가도 저비용의 분산파일시스템으로만 활용하고 데이터  분석이라고 해도 매일매일 쌓이는 대용량의 웹로그나 거래로그에 대한 기초적인 통계정도를 뽑아내는 정도로 활용이 그치는 경우가 많습니다. 물론 이러한 것들도 기존의 환경에서는 힘들었던게 사실이고 하둡초기에는 이러한 역할만으로도 충분히 그 가치가 인정받는 경우도 있습니다만 구글이나 아마존과 같이 광고의 추천이나 상품 추천을 위한 다양한 마이닝알고리즘을 활용하는데 여전히 많은 연구가 필요할 것입니다.

아파치 마하웃(Apache Mahout) 프로젝트는  다양한 중요한 마이닝 알고리즘들을 하둡 프레이워크상에서 구현해서 오픈소스로 공유하자는 차원에서 만들어졌고 현재 0.5 버전이 릴리즈된 상태입니다. 이미 많은 사람들이 마하웃의 알고리즘을 직접 이용하거나 최적화해서 자신들의 각 분야에서 활용하고 있습니다. 향후 아파치 마하웃 프로젝트는 꾸준히 성장해서 시간이 지나면 하둡기반의 대용량 마이닝 알고리즘을 제공하는 주요 소스가 될 것입니다.

이와 더불어 하둡파일시스템(HDFS) 을 기반으로 하는 대용량 데이터베이스인 HBase 역시 주목을 받고 있습니다. 이 역시 구글의 BigTable 의 아키텍쳐를 참조해서 만든 오픈소스 대용량 데이터 스토어 기술입니다.  최근  NoSQL 데이터베이스라해서 오라클 DBMS, MSSQL , MySQL 과 같은 관계형데이터베이스의 한계 또는 확장성등의 단점을 해결할 수 있는 대안으로 보다 단순한 아키텍쳐을 가졌지만  분산컴퓨팅 환경에 적합한 데이터 스토어 기술들이 등장하고 있는데 그 대표적인 것으로 바로 이 HBase 을 들 수 있습니다. 이밖에 하둡파일시스템을 기반으로 하지 않지만 BigTable 과 유사한 형태의 Cassandra 와 같은 기술들이 함께 주목을 받고 있습니다. NoSQL은 사실 별도로 그 배경과 기술을 설명을 할 필요가 있는 거라서 여기서는 이정도로 줄이도록 하겠습니다.



[출처 Cloudera] 

4. 국내 대용량 데이터분석 시장

종종 이 부분에 대한 질문을 받을때가 있습니다. 한마디로 이게 돈이 되는 거냐? 라는 것이죠. 특히 국내에서 말이죠.

분명한 것은 미국의 경우에는 그 시장이 분명히 있고 오픈소스의 기업내 적용을 위하여 안정적인 하둡배포판을 만들고 컨설팅 및 교육을 하고 있는 Cloudera 와 같은 경우는 천이백만불의 투자를 받고 다양한 분야에 하둡 활용을 위해서 홍보와 비지니스를 하고 있습니다. 특히 올해에는 야후!에서 하둡을 직접 개발한 팀이 분사를 해서 HortonWorks 라는 회사를 만들어서 투자를 받고 하둡의 차세대 버전의 아키텍쳐와 버전 업그레이드를 진행하고 있습니다.  HortonWorks 는 Cloudera 와 달리 하둡 코어아키텍쳐에 좀더 많은 투자를 하고 있는 것으로 보이고 최근 오라클 뿐 아니라 마이크로소프트의 윈도우상에서도 (아마도 마이크로소프트의 클라우드 서비스상에서) –  하둡을 사용하기 위해서 전략적 제휴를 맺고 추진중인 것으로 알려져 있습니다.

재미있는 사실은 마이크로소프트의 빙닷컴 검색엔진이 파워셋이라는 회사를 인수해서 그 기반으로 만들었는데 이 회사가 바로 하둡을 이용하고 있었고  HBase 의 개발이  바로 이 파워셋의 시니어 엔지니어에 의해서 시작되었습니다.

이밖에도 미국에는 하둡의 소스코드를 수정해서 리얼타임 데이터를 처리할 수 있도록 하거나 아예 하둡의 소스코드를 뜯어 고쳐서 현재 하둡이 가지고 있는 여러가지 문제점(특히 하둡의 네임노드 가용성 문제, HDFS 와 POSIX 와의 연계) 을 개선하여 상용 버전을 만들어서 사업을 시작하는(MapR)  스타트업들이 다수 등장하고 있습니다.

국내에서는 대표적으로 넥스알(NexR) 이 하둡 및 클라우드 기술을 기반으로 다양한 컨설팅 및 사업을 추진했었고 작년말 KT 에 자회사로 인수되면 크게 주목을 받았었습니다. 최근에는 KT 이노츠와 합병되면서  KT 클라우드웨어라는 회사로 거듭나면서 사업 영역과 규모가 더욱 커진 느낌입니다. 문제는 이 넥스알이 국내 시장에서 이러한 대용량데이터분석 시장을 선도하고 있을까요? 글쎄요 저는 잘 모르겠습니다.  이제는 KT의 클라우드 비지니스를 추진할 수 있는 기술회사로써 역할을 다하고 있는지는  모르겠지만 KT이외의 사이트에서 제대로 비지니스를 하고 있는지 모르겠습니다. 넥스알은 꾸준히 국내의 하둡 오픈소스 커뮤니티의  활동을 적극 지원하고 있고 최근에는  RHive 라고 하는 R 와 Hive 을 결합한 시스템을 오픈소스로 공개하는 등 국내의 하둡저변 확대에 많은 지원을 아끼고 있지 않습니다만 이것이 직접적으로 사업과 연결되어서 수익을 올리고 있다고는 생각되지 않습니다.

넥스알이 KT에 인수된 이후에는 국내의 특성상 KT이외에의 다른 대기업에 비지니스하기가 쉬워지지 않게 되자 그루터라는 회사가 그 역할을 대신하고 있다는 생각이 듭니다. 이 회사에는 걸출한 하둡 엔지니어 분들이 몇몇 계시는 걸로 알고 있습니다. 대표이사님도 개발을 직접한다고 하시더군요. 다양한 분야와 업체에 컨설팅과 개발을 해오면서 기술력을 인정받으면서 기업 인지도가 매우 높아졌습니다. 하지만 여전히 국내에서 하둡을 기반으로 하는 대용량데이터분석 시장에는 한계가 있는 것이 사실입니다. 오히려 국내의 경우에는 이러한 업체들의 컨설팅이나 솔루션을 활용하기 보다는 회사내에 엔지니어를 육성하거나 팀을 꾸려서 하둡 및 관련 대용량 데이터 기술과 더불어 클라우드 컴퓨팅 기술을 내재화 하는 것에 초점을 맞추고 있습니다. 물론 잘하고 있는 곳도 있고 그렇지 못한 곳도 있습니다.

사실 구글, 야후! , 트위터, 페이스북, 링크드인등 왠만한 인터넷서비스 기업들은 자체팀을 꾸려서 이러한 대용량 데이터 분석 기술과 자신들만의 프레임워크를 개발하고 플랫폼화 하고 있습니다. 심지어 자신들의 기술을 기꺼이 소개하고 오픈소스로 공개하고 있기도 합니다.

이와 마찬가지로 국내의 네이버,다음도 그렇고 특히 삼성전자의 같은 디바이스 제조사도 스마트폰, 스마트TV 시장이 커지면서 이에 따른 자체 서비스의 확장성과 사업, 기술 경쟁력 강화를 위해서 자체기술인력을 확보하고 기술 내재화하면서 동시에 아마존등과 클라우드 서비스 협력을 강화하는 등의 움직임을 발빠르게 진행하고 있습니다. 많이 알려져있지는 않지만 제가 몸담고 있는 SK 플래닛의 경우도 분사하기전 SK텔레콤 시절인 2008년도부터 하둡 및 관련 대용량 데이터 분석 기술과 프레임워크에 많은 투자와 내재화에 힘을 쓰고 있습니다.

하지만 결론적으로 말하면 국내에서의 대용량데이터분석시장은 상당히 제한적일것이다라는 것입니다. 대기업들은 여전히 오라클, IBM, HP, EMC와 같은 기존 선도 업체의 솔루션들을 선호하고 있고 이러한 업체들 역시 발빠르게  하둡을 자신들의 솔루션과 결합하면서 가격경쟁력을 갖추고 준비를 하고 있기 때문에 대용량데이터분석 사업을 위해서 단순히 하둡기술을 가지고 있다고 어설프게 기업시장에 뛰어드는 것보다는 금융,제조,통신, 인터넷등 특정 산업분야의 분석 경험을 가지고 있는 것이 경쟁력이 있다고 할 수 있습니다. 여기에 하둡과 같은 기술을 결합해야만 시장 경쟁력을 갖출 수 있을 것입니다. 하지만 이것도 원론적인 얘기이고 안타깝지만 앞서 말씀드렸듯이 국내에서는 이러한 사업적 기회를 가지기는 쉽지 않다고 봅니다. 현실적으로 생각해봐도 규모가 어느정도 되는 기업이 아니면 이러한 대용량 데이터 자체를 접할 기회가 많지 않을텐데 작은 중소 소프트웨어 업체가 대기업을 상대로 대용량데이터분석 사업을 하기는 더욱 쉽지 않을 것입니다.

5. 향후 트렌드

그렇다면 앞으로 대용량 데이터 분석기술은 어떤 방향으로 발전해 갈까요?

가장 주목을 받고 있고 다양한 시도가 이루어지고 있는 것은 바로 실시간 대용량 데이터 분석 기술입니다. 물론 여기서 말하는 실시간의 의미는 디바이스에서 말하는 하드웨어 레벨의 실시간 데이터 프로세싱과는 다릅니다.

비지니스 레벨 또는 서비스 레벨에서의 실시간 데이터 분석기술이라고 생각하시면 됩니다. 예를 들어서 새로운 광고를 웹사이트에 노출 시켰을 때 방문자들의 클릭 스트림을 얼마나 빨리 처리해서 고객들의 반응을 분석하고 리포팅하는 것들도 하나의 실시간 처리일 수도 있고, 대표적으로 엄청나게 폭주하는 주식거래의 실시간 트랜잭션을 분석해서 위법을 저지르는 사람들을 찾아내는 것들도 한 예가 되겠지요. 이러한 실시간 데이터 분석을 위해서 주목 받는 기술 중에 하는 Complex Event Processing (CEP) 라고 하는 기술 입니다. 다시 말하면 실시간으로 발생하는 복수의 이벤트로부터 특정 패턴을 찾아내서 원하는 데이터 처리나 알림 서비스가 가능하게 하는 기술이라고 할 수 있습니다.

기존에는 이러한 이벤트 프로세싱기술이 요구조건에 맞추어서 메인메모리가 큰 장비에서 돌아갈 수 있도록 프로그래밍을 해서 최적화해왔다면 최근에는 이러한 이벤트를 처리하고 보다 고수준의 언어를 제공해서 보다 손쉽게 복합적인 이벤트 프로세싱과 로직을 적용할 수 있는 프레임워크들이 다수 등장하고 있습니다.  TIBCO, Oracle, IBM과 같은 솔루션업체들은 이미  CEP솔루션을 제공하고 있고 이밖에도 EsperTech 라는 회사는 Esper 라고 하는 자바와 닷넷에서 사용할 수 있는 CEP 엔진을 오픈소스로 공개하고 있습니다. 하지만 이러한 솔루션들은 확장성에 한계가 있을 수밖에 없습니다. 하둡과 같은 대용량의 데이터를 처리하기 위한 시스템 아키텍쳐를 갖추고 있지 않기 때문에 CEP을 운영하기 위해서는 프로세싱 장비의 사양이 발생하는 이벤트와 처리해야하는 로직에 따라서  높아 질 수 밖에 없고 필요한 경우에는 서비스에 따라 입력되는 데이터 스트림별로 CEP 장비를 적용해서 분산처리하는 구조로 대응하도록 해야 합니다.

IBM은  최근에 대용량의 스트림 데이터처리를 위해서 상대적으로 시스템의 확장성이 뛰어나고  다양한 실시간 이벤트 스트림 타입을 지원하는, 즉 기존 텍스트나 정형화된 이벤트 스트림뿐아니라  실시간으로 센서로 부터 쏟아져 들어오는 대용량 데이터 스트림에서부터 이미지, 동영상, 음향 데이터등에도 적용이 가능한, InfoSphere Stream 이라는 스트림 프로세싱 엔진을 상용화해서 내놓고 있습니다.  들리는바에 의하면 9.11 테러 이후 미국정보 요청에 의해서 테러방지를 위한 감시목적을 위해서 IBM에서 연구/개발한 기술을 상용화한것이라고 합니다.

올해 페이스북의 경우에는 하둡과 HBase 을 기반으로  페이스북의 실시간 메신저 서비스를 구현해서 여러 컨퍼런스에 발표하고 있습니다. 페이스북과 같은 규모의 서비스업체에서는 대용량 이벤트 프로세싱을 하는데는 CEP 와 같은 기술로는 분명히 한계가 있을 것입니다. 그래서인지 이들은 배치 프로세싱에 최적화되어 있는 하둡을 직접 수정하고 최적화해서 자신들이 원하는 실시간 프레임워크를 자체적으로 구축해서 서비스를 직접하고 있습니다.

이렇게 대용량 실시간 데이터 분석에 있어서 몇몇 시도와 솔루션들이 소개되기 시작하고 있기는 하지만 여전히 해결해야 할 난제들이 남아 있습니다. 특히 다루게 되는 데이터의 형태가 점점 복잡해지고 있고  특히 비디오, 사진이미지, 음향/음성과 같은 멀티미디어 스트림을 실시간으로 분석하고 결과를 내기 위해서는 기술적으로나 학술적으로도 많은 연구와 노력이 있어야 할 것입니다.

마지막으로 대용량 데이터 분석 분야에서 주목해야 할 부분은 대용량 데이터 비주얼라이제이션(Visualization) 분야입니다. 데이터의 규모가 워낙에 커지기 때문에 효과적으로 데이터를 보여줄 수 있는 표현 방식과 이를 프로세싱하기 위한 알고리즘 그리고 이러한 것들이 결합된 편리한 비주얼라이제이션 도구에 대한  요구가 늘어가고 있지만 아직까지 두드러지게 이 분야에서 내놓고 말할 것은 없어 보입니다. 이 분야 역시 구글링을 해보면 IBM의 연구 결과들이 일부 검색되기도 하지만 대부분 특정 분야에 맞게 특정한 목적에 맞게 개발된  도구들이 대부분입니다. 최근 관심을 끌고 있는 소셜 네트워크의 모양을 적절히 보여줄만한 도구들도 그렇게 많은 편은 아니더군요. 아무래도 비주얼라이제이션 처리를 위해서는 데이터를 인메모리에 올려서 처리해서 보여줄 수 밖에 없기 때문에 대용량의 데이터를 네비에이션 하기 위해서는 적절한 수준에서 데이터의 속성을 줄이거나 축약하는 방법과 부분부분 필요한 양만큼만 로딩을 해서 네비게이션 하는 방법이 있겠죠. 아무튼 이 분야도 앞으로 주목해볼만한 분야라고 생각됩니다. 결국 분석된 데이터를 어떻게 표현하고 보여주는 것이 최종 결과가 아니겠습니까?

6. 마치면서

이상으로 대충 제 머리속에 있는 대용량 데이터 분석 기술 및 시장 전반에 대해서 정리를 해보았습니다. 이 분야은 여전히 연구 개발해야할 부분이 많고 동시에 매우 빠르게 발전하고 있습니다. 특히 올해 하반기부터 소위 업계의 리더들이라고 하는 오라클, SAS, IBM, EMC, HP 등등 글로벌 솔루션 업체들이 본격적으로 하둡이라는 기술등 관련 솔루션들을 결합해서 대용량 데이터라는 키워드로 마케팅과 영업을 본격적으로 시작했습니다. 아마 지금까지의 오픈소스기반 스타트업들이 끌고 오던것과는 양상이 분명 달라질 것입니다. 앞으로 Cloudera 나 Hortonwork 와 같은 회사가 지금의 레드햇과 같은 기업으로 성장할지 아니면 다른 기업에 의해서 인수될지는 모르겠지만  기존 대형 솔루션 업체들의 참여로 대용량 데이터와 관련한 스토리지, 시스템, CPU, 분석기술의 발달과 더불어 시장의 규모는 더욱 커질 것입니다.

따라서 국내에서 관련 기술을 가진 업체나 엔지니어들에게 있어서는 내부의 분석역량을 높이는데 있어서 그 역할이 커지는 반면에 사업적인 측면에서는 더욱 어려워지고 그 사업의 기회는 더욱 줄어들겠네요

이러나 저러나 결국 글로벌 솔루션 업체들이 이 시장을 다시 나눠가지게 될까요? 안타깝지만(?) 그럴 확률이 많다고 생각이 드네요. 대부분의 국내 소프트웨어 업체들은 소프트웨어든 솔루션이든 제대로 만들어 팔아본 경험이 별로 없으니까요. 제 개인적으로도 여러가지 생각들이 떠오르는 군요.

아무쪼록 이 글이 대용량 데이터 분석기술이라는 분야에 관심을 가지신 분들께 조금이나마 도움이 되었으면 합니다.



 출처 : 우승이의 블로그