자세히 보기

Thor Olavsrud
Senior Writer

SQL-온-하둡 엔진 BMT ‘임팔라·스파크·하이브는 어떻게 다른가’

SQL-온-하둡 엔진 임팔라, 스파크, 하이브를 벤치마크테스트한 결과, 이들 각각은 BI 워크로드에 대해서 고유의 강점과 약점을 가지고 있는 것으로 나타났다.

BI 온 하둡(BI on Hadoop) 구현 작업을 전문적으로 다루는 신생업체인 앳스케일(AtScale)은 최근 새롭게 공개한 벤치마크(benchmark)를 통해 시장의 대표적인 세 SQL-온-하둡(SQL-on-Hadoop) 엔진인 아파치 임팔라 2.3(Apache Impala 2.3), 아파치 스파크 1.6(Apache Spark 1.6), 아파치 하이브 1.2(Apache Hive 1.2)가 각각 강점과 약점을 지니고 있으며, 그에 따라 서로 다른 비즈니스 인텔리전스(BI)에 적합할 수도 그렇지 않을 수도 있다고 밝혔다.

앳스케일의 설립자이자 CEO인 데이브 마리아니는 “모든 요구사항을 충족시키는 완벽한 엔진은 어디에도 없다는 것이 연구의 결론이다. 우리 역시 고객들에게 제공하는 배치 서비스에 여러 개의 엔진을 적용했다”라고 설명했다.

앳스케일의 비즈니스 인텔리전스 온 하둡 벤치마크는 테크놀로지 평가원들이 자사의 BI 활용사례에 가작 적합한 SQL-온-하둡 테크놀로지를 선정할 수 있도록 지원하는 것을 목표로 구성된 가이드다. 앳스케일의 테스트는 스타 스키마 벤치마크(SSB, Star Schema Benchmark) 데이터 셋을 활용했고, 시장에서 폭넓게 이용되고 있는 TPCH 데이터에 기반을 뒀으며, 전형적인 BI 지향 데이터 레이아웃을 정확하게 재연할 수 있도록 조정 과정을 거쳐 이뤄졌다. 데이터 셋은 테스트 팀이 대규모의 테이블 전역에 걸쳐 쿼리를 테스트할 수 있도록 했다. 라인오더(lineorder) 테이블에는 60 억에 가까운 행이, 대형 커스터머 테이블에는 10억 이상의 행이 각각 포함돼 있다.

SQL-온-하둡 엔진들은 서로 다른 ‘최적 궁합’의 워크로드를 지닌다
앳스케일은 SQL-온-하둡 엔진과 BI 워크로드들 간의 적합성을 확인하기 위한 기준으로 3개의 요청을 설정했다.

• 빅데이터 성능. SQL-온-하둡 엔진은 수 십억, 수 조의 데이터 행을 오류 없이 일관되게 분석할 수 있어야 하며, 그 응답 시간은 10~100초 대를 넘겨선 안된다.

• 소규모 데이터 신속하게 처리. SQL-온-하둡 엔진은 알려진 쿼리 패턴에 대해서는 쌍방으로 성능을 전달할 수 있어야 한다. 즉 소규모(수 억 행 규모)의 데이터 셋에 대해서는 늦어도 수 초 내에 결과를 보여줄 수 있어야 하는 것이다.

• 다수 사용자에 대한 안정적인 지원. 기업 BI는 수 백 혹은 수 천의 데이터 작업자들을 사용자 기반으로 삼는다. 이들을 지원하기 위해 기저의 SQL-온-하둡 엔진은 고도의 동시 발생적 분석 워크로드 하에서도 안정적인 성능을 구현할 수 있어야 한다.

야후!(Yahoo!)에서 세계에서 가장 큰 규모로 알려진 BI용 OLAP 큐브를 구축하는 프로젝트를 이끈 바 있는 인물인 마리아니는 이 세 기준이 BI 온 하둡을 다루는 일반적인 기업들이 가장 주요하게 필요로 하는 기능들이라고 설명했다. 이 기준은 금융, 의료, 소매, 통신 등 다양한 분야의 수많은 기업들과 작업을 진행해온 앳스케일 테스트 팀의 경험에 기초해 만들어진 것이다.

앳스케일에서 상품 관리 사업부 부사장을 맡고 있는 조쉬 클라허는 “우리가 실제 기업들의 경험에 기초해 자료를 개발함으로써 모든 기술 평가원들이 자신들의 평가 과정에 이를 사용할 수 있기를 원했다”라고 밝혔다.

테스트 팀은 3개의 대상 엔진을 모두 실험했고, 이들 모두가 기준 워크로드를 충분히 안정적으로 지원한다는 사실을 확인할 수 있었다. 그러나 모든 요구사항에 대해 최고의 성능을 보인 엔진은 없었다. 각 엔진은 각자의 ‘강점’을 가지고 있었으며, 실제 기업들의 활용사례 대부분은 이 세 엔진을 적절히 혼합함으로써 최선의 성과를 낼 수 있는 것들이었다.

하이브의 경우 일반적으로 가장 기본적인 SQL-온-하둡 엔진으로 평가받고 있지만, 벤치마크에서는 가장 느린 속도를 기록했으며 따라서 쌍방형 쿼리 작업에는 부족한 부분이 있는 것으로 확인됐다.

마리아니는 “하이브 테즈(Hive Tex)만을 통해 쌍방형 쿼리를 처리할 경우, 당신이 구현할 수 있는 최대 속도는 2.4초가 한계다”라고 설명했다.

속도 측면에서 아쉬움이 있긴 하지만 안정성 부분에선 하이브의 점수가 가장 높았다. 다수 쿼리 유형에 걸친 일관성을 구현하는데 있어서는 최적의 엔진인 것이다.

마리아니는 “하이브 테즈는 거북이 같다. 재빠르진 않지만, 작업을 끝내지 못하는 경우도 없다. 가장 안정적인 엔진이다”라고 평가했다.

반면 보다 작은 규모의 데이터 셋을 다룰 때는 임팔라와 스파크가 더 뛰어난 성능을 보여줬다. 마리아니는 “워크로드 전 범위를 아우르는 측면에서는 임팔라가 우세를 보였지만, 스파크의 경우 1.5 버전에서 1.6 버전으로 넘어오며 막대한 퍼포먼스 개선에 성공했다. 그 개발 과정에 오픈소스 커뮤니티의 적극적인 참여가 이뤄진 덕택으로 보인다. 이런 긍정적인 흐름은 앞으로도 계속될 것이라 생각된다”고 전망했다. 임팔라의 경우에도 최근 그것을 아파치 소프트웨어 재단(Apache Software Foundation)에 기부하겠다는 클라우데라의 제안이 공개되며 그 개발이 새로운 전환점을 맞이할 것으로 기대를 모으고 있다.

대규모의 사용자 지원을 요하는 활용사례들의 경우, 현재로서는 임팔라가 가장 뛰어난 역량을 보여줬다.

마리아니는 “동시 실행의 경우 임팔라의 역량이 압도적이었다. 대규모의 사용자 집단이 소규모의, 빠른 쿼리를 구동하는 작업을 필요로 하는 기업들이라면, 임팔라가 스파크 보다 훨씬 더 만족스러울 것이다”고 말했다.

그는 “속도보다 안정성과 신뢰도가 더 중요한 경우라면, 하이브 테즈를 데이터 파이프 엔진으로 이용하는 것이 현명하다. 대형 배치(batch) 워크로드에는 하이브 테즈가 가장 적합한 엔진이다. 그러나 내 웨어하우스에 BI 사용자들이 접근하는 것을 보장하고자 한다면, 스파크나 임팔라가 보다 나은 선택이다”고 덧붙여 설명했다.

마리아니는 이번 벤치마크에서 아파치 드릴(Apache Drill)이나 아파치 프레스토(Apache Presto)와 같은 엔진들을 다루지 않았다고 이야기하며 해당 엔진들의 경우 추후 시험을 진행할 예정이라고 밝혔다.

그는 “우리의 벤치마크는 현 시점에서의 결과이며, 앞으로 배포가 계속되며 양상은 얼마든지 변화할 수 있음을 참고하길 바란다”라는 설명도 덧붙였다. dl-ciokorea@foundryco.com

Thor Olavsrud

Thor Olavsrud is an award-winning senior writer for CIO.com, with 20+ years of experience covering IT and the tech industry. He focuses on AI, analytics, and automation. The American Society of Business Publication Editors (ASBPE) recognized him with a national silver award for his article, “How big data analytics helped hospitals stop a killer.” He also contributed to CIO.com’s 2018 and 2021 Azbee Awards of Excellence for Website of the Year and a 2024 Azbee national silver award for online industry news coverage.

이 저자의 추가 콘텐츠