김우용 기자/ yong2@zdnet.co.kr

빅데이터 활용에 있어 핵심 인프라 역할을 하는 하둡 클러스터는 보통 물리적 서버 환경에 구축된다. 입출력(I/O) 중심의 워크로드기 때문에 가상화 환경에선 만족스러운 성능을 얻기 어렵다는 인식 때문이다.

 

가상화 기술은 서버 한대를 여러 대처럼 쓸 수 있게 하는 효과를 제공한다. 그러나 하둡을 품에안기는 한계가 있다는 지적이 많았다.

 

그러나 지난해부터 미국의 몇몇 벤처기업들은 '서비스로서의 하둡(Hadoop as a Service: HaaS)'이란 개념을 소개하기 시작했다. 아마존웹서비스도 앨라스틱맵리듀스란 HaaS를 제공중이다.

 

최근엔 구글도 자신들의 클라우드 플랫폼에 하둡 클러스터를 구축할 수 있도록 했다. 하둡용 구글 클라우드 스토리지 커넥터를 제공함으로써 클라우드 상의 가상화 인프라에서 맵리듀스를 위한 데이터 입출력 처리를 하게 해준 것이다.

 

HaaS는 서비스사업자에서 구성해놓은 하둡 환경에 데이터만 올려 활용하게 해주는 개념이다. 구글이 새로 소개한 하둡용 구글 클라우드 스토리지 커넥터는 클라우드 인프라에 사용자가 직접 하둡 클러스터를 구성하는 개념으로 '하둡온클라우드(Hadoop on Cloud)'로 표현된다.

 

HaaS와 하둡온클라우드 모두 IO가 가상화 계층을 거쳐 이뤄진다. 일반적인 통념에서 보면 HaaS나 하둡온클라우드는 만족스러운 속도와 성능을 경험하기 어려울 것이다.
▲ 클라우드 스토리지를 이용한 하둡 클러스터 데이터 아키텍처의 일반적인 모습

그러나 최근 액센추어테크놀로지랩은 구글의 새 서비스를 활용한 벤치마크 결과를 공개했다. 이 결과에 따르면 총소유비용(TCO) 관점의 가격대비성능에서 클라우드 기반 하둡이 물리적 환경 기반 하둡보다 앞서는 것으로 나타난다.

 

액센추어테크놀로지랩은 하둡클러스터 활용에 대한 배포모델을 구분하며, 직접 구축방식, 어플라이언스 방식, 호스팅 방식, HaaS 등의 옵션에 하둡온클라우드를 추가했다.

 

액센추어 연구진은 구글 엔지니어의 도움을 받아 물리적인 환경의 하둡클러스터와 구글 컴퓨트엔진(GCS) 기반 하둡 클러스터를 구축했다. 그리고 새로 개발된 커넥터 기술을 활용한 클러스터도 구축했다.

 

3종류로 구축된 각 클러스터는 추천엔진, 세션화, 문서군집 등 3가지의 워크로드를 수행한다. 여기서 GCS를 이용한 클러스터는 인스턴스가 로컬 디스크에 HDFS 데이터를 저장한다. GCS가 맵리듀스 작업을 위해 데이터를 로컬 디스크 기반의 HDFS에 입력하고, 맵리듀스 작업된 결과가 다시 GCS로 넘어가는 방식이다.

 

▲ 하둡용 구글클라우드스토리지 커넥터를 이용한 하둡 클러스터 데이터 아키텍처

하둡용 구글클라우드스토리지 커넥터를 이용한 경우엔 데이터가 GCS에서 맵리듀스로 곧바로 입력되고, 결과도 GCS로 바로 전달된다. 로컬 디스크 기반 HDFS는 데이터 복제를 위한 용도다.

 

추천엔진의 경우 베어메탈 하둡 클러스터는 21분59초 만에 10건의 연속적인 맵리듀스 작업을 완수했다. GCS에 로컬 디스크 HDFS를 이용한 경우는 시간이 좀 더 짧았다. 인스턴스 유형에 따라 차이를 보이지만, 16~18분 만에 맵리듀스 작업을 완수했다.

 

그리고 구글의 커넥터를 적용하자 로컬디스크를 사용했을 때보다 평균 24.4%의 실행시간 절감효과가 나타났다. 액센추어는 추천엔진의 데이터세트 크기가 5GB에 불과하고, 로컬디스크의 데이터 복제를 0으로 설정한 경우를 감안하면 커넥터의 성능향상효과는 크지 않다고 설명했다.

 

▲ 추천엔진 워크로드 벤치마크 결과

세션화의 경우 24TB(비압축, 압축 시 675GB) 데이터세트에 대한 맵리듀스 작업을 수행했을 때 베어메탈 클러스터는 533분 만에 수행했다. GCS에 로컬디스크 HDFS를 이용한 경우 355~458분 안에 작업을 완료했다.
구글 커넥터를 사용한 경우 로컬디스크를 사용했을 때보다 평균 26.2%의 실행시간 절감효과를 보여줬다. 액센추어측은 데이터를 로컬디스크에 둬야한다는 우려가 구글의 커넥터를 통해 불식될 수 있다고 평가했다.

 

▲ 세션화 워크로드 벤치마크 결과

문서군집의 경우 첫번째 맵리듀스 작업에 3TB 용량의 3만1천 파일을 처리하게 된다. 베어메탈 클러스터는 1천186분37초만에 맵리듀스 작업을 수행했다. GCS에 로컬디스크 HDFS를 이용한 경우 774~1천132분 사이에 작업을 완료했다.

 

구글 커넥터를 사용한 경우 로컬디스크를 사용했을 때보다 평균 20.6%의 실행시간 절감효과를 보였다.

 

▲ 문서군집 워크로드 벤치마크 결과

액센추어테크놀로지랩의 보고서는 하둡용 구글 클라우드 스토리지 커넥터를 통해 로컬 스토리지보다 더 낳은 가격대비성능을 기대할 수 있다고 결론내렸다. 또한 시스템 튜닝에 대한 사용자의 부담을 일정부분 덜 수 있다는 점에서 강점을 갖는다고 평가했다.

 

물론 단서도 달았다. 일단 테스트에 사용된 베어메탈 클러스터의 하드웨어 성능과 구글 컴퓨트엔진의 인스턴스 사양이 직접비교하기 어렵다는 점을 꼽았다. 성능 튜닝에 들이는 시간과 기술력, 용도, 규모 등에 따라 결과가 달라질 수 있다는 점도 언급했다.

 

마지막으로 클라우드 기반 하둡 클러스터를 구축하려는 사용자는 반드시 자신들의 워크로드를 이해해야 한다고 조언했다. 표준화된 벤치마크와 달리 실제 사용환경은 더 복잡하며, 서비스수준협약(SLA) 조건도 다양하다는 것이다.

 

또한 클라우드 사업자에서 제공하는 가격정책을 따져 워크로드에 적합한지 고민하라고 주문했다.