SK텔레콤이 오픈소스 소프트웨어 프로젝트 ‘아파치 타조(TAJO)’에 든든한 후원군을 자처하고 나섰다. 국내 대형 이동통신사가 오픈소스 소프트웨어(SW)를 단순 채택하는 수준을 넘어 직접 개발에 참여하고, 실제 업무환경에 적용해간다는 점에서 국내 IT 생태계에 시사하는 바가 크다.
타조는 올해 아파치 SW재단의 인큐베이터로 등록된 오픈소스 프로젝트다. 빅데이터 플랫폼의 표준으로 자리잡은 하둡의 일부로, 표준 SQL언어로 대규모 데이터를 빠르게 분석할 수 있는 DW 쿼리엔진을 표방한다. 고려대학교 출신의 최현식 박사와 손지훈 박사가 개발하기 시작해, 지금은 그루터 주도로 개발되고 있다. 최현식 박사도 현재 그루터에 근무중이다.
SK텔레콤은 그동안 한국 기업들이 오픈소스SW를 사용하던 방식과 극명한 대비를 보인다. SK텔레콤은 아파치 타조를 데이터분석용 기본 인프라에 적용해 분석가들의 빅데이터 분석환경을 개선하고 있다. 이전에 서비스조직마다 별도로 구축됐던 데이터 분석 인프라를 타조 중심으로 개편하는 작업이다.
SK텔레콤은 이 과정에서 현재진행형인 타조 소스코드 개발에 동참한다. SK텔레콤은 타조를 실제 환경에 적용하면서, 그 과정에 파악되는 여러 요구사항을 바탕으로 타조의 기능과 성능을 높이는데 중요한 부분을 담당하게 된다.
오픈소스SW를 가져다 설치해 사용하는 데 그치지 않고, 코어 기술 개발에 참여함으로써 기술내재화와 즉각적인 성능개선 효과를 기대할 수 있게 된 것이다.
■ SKT, 오픈소스 도입 성공사례 밝히다
15일 열린 네이버 데뷰2013 컨퍼런스에서 SK텔레콤은 직접 발표자로 나와 타조 개발에 참여하게 된 이유와 그로 인해 획득한 1차적 개선효과를 공개해 눈길을 끌었다.
발표자로 나선 박근태 SK텔레콤 데이터테크랩 매니저는 “이전의 하둡, R, 파이썬 등을 이용한 데이터 분석 인프라 대신 타조를 적용하면서 종전대비 3.7배의 속도개선 효과를 거뒀다”라며 “그리고 데이터 분석을 위한 전체 업무량의 70%를 줄일 수 있을 것으로 기대한다”고 밝혔다.
타조는 전세계 하둡 생태계 관련자들의 화두인 ‘SQL온하둡’ 기술에 해당된다. 클라우데라의 임팔라, 구글의 드레멜, 호튼웍스의 스팅거, 맵R의 드릴, EMC 피보탈의 호크 등이 타조와 같은 콘셉트로 개발되는 기술이다.
하둡분산파일시스템(HDFS)와 맵리듀스를 기본으로 시작된 하둡은 이후 NoSQL인 HBASE로 자체 데이터베이스를 보유했고, HDFS 내 데이터를 쉽게 분석하기 위한 하이브, 피그 같은 툴을 이용할 수 있게 됐다.
SQL온하둡은 하둡의 한계를 극복하기 위한 고민에서 시작된 흐름이다. 하이브는 SQL언어와 유사한 하이브QL 언어로 HDFS 내 데이터에 쿼리를 날려 조회, 분석할 수 있게 한다. 그러나 하이브는 맵리듀스 프레임워크를 한번 거쳐야 하기 때문에 조회속도가 느리다는 단점이 있다.
하둡의 맵리듀스는 데이터 분석처리를 담당한다. 맵과 리듀스란 두 단계를 반드시 거치게 되는 처리구조인데, 맵에서 키와 값으로 구성된 목록을 만들어 정렬하고, 해시 파티셔닝을 거쳐 같은 키에 해당되는 리듀서에 전달한다. 리듀서는 각 맵에서 끌어온 것을 애그리게이션해 결과를 만든다. 이 과정을 셔플이라 한다.
하이브를 이용해 데이터를 조회하면 하이브QL을 맵리듀스로 변환하는 작업이 선행된다. 맵리듀스의 셔플 과정을 모든 잡에서 수행하기 때문에 데이터조회를 위한 태스크 시동작업에만 잡 별로 5~15초 이상이 걸리게 된다. 조금만 질의가 복잡해지면 분석시간이 수시간에 달한다.
정재화 그루터 책임연구원은 “한번 소트를 하면 맵을 수백개씩 돌리게 돼 아무리 대규모 클러스터를 갖고 있어도 하나의 리듀스 서버에 업무가 몰리며, 모든 작업이 네트워크를 통하므로 부하를 발생시킨다”라며 “결국 하이브는 높은 지연시간과 노드당 낮은 처리 성능, 네트워크 대역폭 낭비 등의 문제를 일으킨다”라고 설명했다.
하둡은 느리고 수시로 죽어버린다는 인식이 여기서 비롯됐다. DW에 익숙해진 데이터분석가가 하둡 사용에 대해 부정적 반응을 보이는 원인인 것이다.
SQL온하둡과 타조는 맵리듀스와 하이브를 사용하지 않는 쿼리엔진이다. 표준SQL언어를 100% 지원해 기존 분석가가 쓰기 쉽고, CPU와 메모리를 더 잘 활용해 100밀리초의 지연시간을 제공한다. 저렴하게 대용량 데이터를 분석할 수 있게 한다는 하둡의 장점을 유지하면서, DW 수준의 분석성능을 보인다. 이로 인해 대화형 질의분석이 가능하다. 데이터 수집, 저장, 처리(ETL), 집계, 연산, 조인, 정렬 등을 제공해 라이프사이클을 단순화한다.
■ 타조, 빅데이터 대응 보다 쉽게
SK텔레콤의 데이터분석 인프라는 아파치 하둡과 하이브를 통해 비정형 데이터를 수집, 저장하고, 단순한 분석을 수행하게 했다. 이후 고차원 분석은 별도 분석용 R 서버에 데이터를 옮겨 수행했다.
이로 인해 인프라가 복잡하고 단절되며, 비용대비효과가 나빠지는 결과가 나왔다. 계속 데이터가 쌓이면, 초기 설정과 튜닝이 무의미해져 극도로 제한적인 활용을 하게 됐다. 하이브의 느린 성능도 문제였다.
박근태 SK텔레콤 매니저는 “SK텔레콤의 데이터는 숫자, 문자열이 많아 애그리게이션과 스트링 연산이 많은데, 맵리듀스와 하이브에선 이를 효율적으로 해주지 못했다”라며 “맵리듀스나 하이브는 또 배치처리 기반이라 너무 느리고, 쓰루풋은 좋은데 반응속도가 느려 결과 기다리다 지쳐버리는 게 다반사다”라고 설명했다. 이를 타조 적용으로 해결한 것이다.
향후엔 데이터 처리와 분석이 단절된 현재 인프라를 통합하는 작업을 하게 된다. 데이터를 처리해 분석가에게 넘기는 과정에서 업무낭비가 심하다는 판단에서다. 박근태 매니저는 “하둡의 데이터를 가공해 분석서버로 넘겨야 하는 로직이어서 데이터 분석가의 분석적 사고가 단절되고, 업무가 낭비된다”라고 말했다.
이와 별개로 타조는 지속적인 서버 증설에 대한 비용 및 관리 부담을 줄여준다. 적은 장비로 더 높은 성능을 낼 수 있기 때문에 빅데이터의 증가에 쉽게 대응할 수 있다.
SIMD와 솔리드스테이트드라이브(SSD)를 적절히 활용한 하드웨어 최적화와 C++ 지원, UDF지원과 JDBC 지원도 장점이다. 향후엔 ODBC도 지원한다.
TPC-H 벤치마크테스트 결과에서 타조는 하이브뿐 아니라 타 SQL온하둡 기술보다 한발 앞선 성능을 보인다. 타조 자바엔진과 임팔라0.7, 하이브 0.1 버전을 대상으로 한 초기 버전을 사용한 테스트였다.
Q2에서 타조는 330초만에 처리를 완료했다. 클라우데라 임팔라의 414초보다 빨랐고, 하이브는 827초 걸렸다. Q6 테스트에선 타조가 121초, 임팔라가 141초, 하이브가 346초를 기록했다.
SK텔레콤은 이처럼 하둡 본산지인 미국 태생의 기술보다 앞선 오픈소스에 투자를 결정했고, 비중있는 역할을 수행하고 있다. 기업이 오픈소스 개발에 참여하고, 직접 활용해 혜택을 보면서, 다시 기술 성숙도를 높이는 선순환 구조가 기대되는 부분이다. 향후 국내 대기업의 국내 오픈소스SW 개발에 대한 이정표가 될 것으로 주목된다.
관련기사
- SKT, 오픈소스 '타조'로 보물을 캐다2013.10.16
- 빅데이터, 기업시장 열어줄 열쇠는?2013.10.16
- 대기업 뿌리치고 전문SW벤처 택한 개발자2013.10.16
- IBM, 'SQL 온 하둡' 참전…의미는2013.10.16
여기에 더해 빅데이터를 빠르게 분석하고, 실제 서비스에 적용하는 사례가 국내에서도 본격적으로 출연할 것으로 예상된다.
*한가지 주제넘게 첨언하자면, 이 기사에 대해 이해가 가지 않거나 별다른 감흥을 느끼지 않는 데이터 관련업무 담당자라면 하둡 클러스터를 조그맣게 만들어보길 조언하고 싶다. 아파치 하둡과 하이브를 이용한 데이터분석을 해보지 않은 상황에선, 하이브를 타조로 대체했을 때 놀라운 개선효과를 느끼기 어렵기 때문이다. 하이브를 사용한 분석과 타조를 사용한 분석의 차이는 써봐야 알 수 있다. 그리고 하둡을 써도 기존 DW 만큼 쉽고 빠른 분석이 가능하다는 건 그 다음에 생각해보면 된다.