모던 데이터 스택 발전사 (1)
상태바
모던 데이터 스택 발전사 (1)
  • 데이터넷
  • 승인 2022.12.18 12:23
  • 댓글 0
이 기사를 공유합니다

데이터 분석 플랫폼, 시대 요구사항에 맞게 진화하다
아키텍처 설계 제약·사일로 환경 등 극복하며 유연성 지속 확대

[데이터넷] 지난 20년 동안 기업 환경에서 데이터 플랫폼은 변화하는 시대 요구사항에 맞게 진화해 왔지만, 오늘날 생성되는 데이터 양, 속도, 다양한 데이터 유형 및 분석 워크로드에 민첩하게 대응하지 못하는 한계에 봉착하게 됐다. 하지만 클라우드 환경에서 제공하는 무제한에 가까운 데이터 저장소와 유연하고 확장 가능한 컴퓨팅 리소스의 특성은 ‘모던 데이터 스택’이라는 개념으로 새로운 해결책을 제시할 수 있게 됐다. <편집자>

조성현 스노우플레이크 코리아 상무
조성현 스노우플레이크 코리아 상무

데이터 경제(Data Economy)라는 용어는 2011년 데이비드 뉴먼(David Newman)이 작성한 가트너 보고서에 처음 등장한 개념으로, 데이터 활용이 다른 산업 발전의 촉매 역할을 하고, 새로운 제품과 서비스를 창출하는 경제를 의미한다. 우리는 영원할 것만 같은 빅 테크 기업의 흥망성쇠를 어렵지 않게 목격할 수 있으며, 고객 지출의 변화는 물론 다양한 산업 현장에서 신규 비즈니스 모델 및 데이터 중심의 수많은 스타트업의 등장을 포함, 글로벌 전체에 걸쳐 빠르게 변화하는 시대에 살고 있다.

오늘날 거의 모든 기업들은 생존을 위해 과거 경험에 의존한 의사결정이 미치는 위험성을 명확하게 이해하고 있으며, 제품 기획부터 고객 관리까지 비즈니스 전반에 걸쳐 데이터 기반 의사결정으로 탈바꿈하려는 치열한 싸움을 하고 있다. 데이터 기반의 의사결정 시스템들은 데이터를 모으는 데이터 수집 계층, 데이터를 보관하는 스토리지 계층, 데이터를 분석하는 SQL 엔진 및 데이터를 쉽게 이해하고 활용하기 위한 시각화 대시보드까지 다양하며, 인공지능(AI)/머신러닝(ML)을 포함한 데이터 사이언스와 머신러닝 라이브러리, 자동화된 데이터 파이프라인 및 데이터 거버넌스 계층을 포함하고 있다.

하지만 변화하는 시대에 사용자들은 어떠한 이유로 이와 같은 변화가 발생했는지, 어떤 기술이 모던 데이터 스택 트렌드를 이끌고 있는지 그리고 실제 운영 환경에서 이들 기술이 어떻게 사용되는지를 여전히 혼란스러워하고 있다. 따라서 이번 글에서는 독자들의 이해를 돕고자 모던 데이터 스택 등장 배경과 진행 과정 그리고 향후 앞으로 어떻게 발전하게 될지에 대한 전망을 살펴보고자 한다.

데이터 플랫폼 트렌드 변화
데이터 분석 플랫폼은 [그림 1]과 같이 시대 요구사항에 맞게 점차 발전해왔다. 2000년 이전에는 개별 업무들이 MIS, ERP, CRM, SCM 및 인하우스 애플리케이션으로 시스템화됐고, 기업에서 데이터 관리는 데이터베이스 저장이 일반적이었다.

OLTP 데이터베이스는 수치화된 데이터에 대한 통계 분석만을 지원했기 때문에 데이터 기반 의사결정에 제약사항이 존재했다. 이에 따라 OLTP 기반의 데이터베이스가 아닌 데이터 웨어하우스라는 개념이 2001년에 처음 등장하게 됐으며, 2010년까지 여러 운영 시스템에서 생성된 정형 데이터를 분석하는 용도로 엔터프라이즈 데이터 웨어하우스(EDW)가 활발하게 도입되고 운영됐다.

[그림 1] 데이터 분석 플랫폼 진화 과정
[그림 1] 데이터 분석 플랫폼 진화 과정

하지만 기업 환경의 업무 시스템이 다양화되고 IoT 디바이스 및 소셜미디어와 같은 다양한 데이터 소스에서 생성되는 무한의 데이터를 분석할 요구사항이 필요해지면서 자연스럽게 기존 데이터 분석 플랫폼의 데이터 수집, 저장, 분석 및 관리 역량을 넘어서는 데이터셋을 분석 용도로 활용할 필요가 대두됐다. 이러한 시대적인 배경과 더불어 하드웨어 디스크 및 메모리와 같은 데이터 저장장치 비용 감소가 빅데이터 시대를 앞당기게 됐다.

우리는 지난 10년 동안 오픈소스 진영에서 주도했던 빅데이터 시대의 발전 및 쇠퇴를 직간접적으로 경험했다. 하둡이 대용량 데이터 처리에 대한 두려움을 떨쳐낼 수 있는 길로 이끈 것만은 분명한 성과로 인정해야겠지만, 영원할 것 같았던 이 기술은 복잡성, 전문가 의존성, 플랫폼/워크로드 확장성 및 관리 어려움과 같이 앞으로 해결해야 할 난제를 우리에게 남겼다.

[그림 2] 기술 성숙도 S 곡선
[그림 2] 기술 성숙도 S 곡선

퍼블릭 클라우드 발전 속도와 더불어 2016년부터 데이터 플랫폼 영역에 엄청난 혁신이 굉장히 빠른 속도로 진행되고 있다. 2012년도 퍼블릭 클라우드 환경에서 MPP 기반의 분석 솔루션이 처음 소개되면서 퍼블릭 클라우드의 데이터 플랫폼 시장은 데이터 수집, 저장, 활용 및 분석 영역을 거처 폭발적인 수준으로 혁신을 거듭하고 있다.

전통적인 데이터 스택의 문제점
지난 20년간 데이터 플랫폼 성장기를 거치며 대부분 기업 환경에서 분석 플랫폼은 [그림 3]과 같이 정형 데이터 분석을 위한 EDW와 반정형 및 비정형 데이터 분석을 위한 데이터 레이크로 구성된 하이브리드 아키텍처를 채택해 운영하고 있다. 또한 기존 데이터 레이크에 배치 기반의 분석뿐만 아니라 실시간 분석 요건이 필요한 경우에는 람다 또는 카파 아키텍처가 일반적으로 채택되면서 아키텍처의 복잡도는 증가될 수밖에 없다.

하이브리드 데이터 분석 플랫폼 구성도
[그림 3] 하이브리드 데이터 분석 플랫폼 구성도

앞서 살펴본 전통적인 데이터 플랫폼은 다음과 같은 네 가지 주요 이슈를 야기하고 있으며, 아키텍처 복잡도에 의해 쉽게 해결되지 않고 있다.

1) 분석 플랫폼 구축에 오랜 시간 필요
사일로 형태의 EDW 및 데이터 레이크 플랫폼은 개별적으로 구축돼야 하며, 온프레미스 환경의 경우 비효율적인 인프라 관리 비용이 소요된다.

2) 변경 및 변화에 민첩하게 대응 불가능한 플랫폼
사용자 및 비즈니스 변경에 따라 새로운 데이터 소스 연동 및 새로운 모델 생성에 오랜 시간이 소요된다.

3) 비효율적인 데이터 분석 환경
오늘날 대부분의 분석 플랫폼은 데이터 엔지니어에 의해 사전 가공된 마트나 모델 데이터를 현업 사용자들에 의해 소비되고 있다. 사용자의 분석 요구사항이 변경되는 경우, 관련 부서에서 수정사항이 반영될 때까지 기다려야 하며 이 기간이 수일에서 수개월이 필요하다.

4) 사일로 분석 환경
분석 플랫폼이 여러 시스템으로 혼재돼 구성된 경우, 통합 분석 요건에 대해 개별 데이터를 별도로 추출하고 사용자 환경에서 수동 리포트를 작성해 분석하는 경우도 실제 엔터프라이즈 환경에서 종종 목격할 수 있다.

그렇다면 전통적인 데이터 스택으로 구성된 분석 환경에서는 앞서 살펴본 다양한 이슈들이 왜 발생하며, 왜 오랫동안 해결되지 못했을까?

1) 아키텍처 설계 제약사항
오늘날 대다수의 데이터 분석 플랫폼 아키텍처는 대용량 데이터 분석을 위해 기존 공유 디스크(Shared-Disk) 대신 비 공유(Shared-Nothing) 아키텍처를 채택해 설계, 개발됐다. 이 아키텍처에서 테이블 데이터는 모든 실행 노드의 로컬 디스크에 수평으로 분할돼 저장되며, 개별 실행 노드는 로컬 디스크에 저장된 데이터만을 처리하도록 설계됐다. 공유 데이터(Shared-All) 구조나 하드웨어 리소스에 대한 경합이 거의 없기 때문에 값비싼 맞춤형 하드웨어가 필요하지 않는다. 또 비 공유 아키텍처에서 모든 노드는 요청 받은 쿼리 수행 시 동일한 책임을 가지며 동일한 하드웨어에서 실행된다. 이 접근 방식은 현존하는 데이터 플랫폼을 위한 모든 소프트웨어에 적용됐지만, 전통적인 비 공유 아키텍처에는 컴퓨팅과 스토리지 리소스가 긴밀하게 결합돼 있기 때문에 복합 워크로드 수용성 및 확장성에 대한 단점을 가지고 있다.

2) 플랫폼 구축에 오랜 시간 소요
온프레미스 환경에서 데이터 웨어하우스나 데이터 레이크 플랫폼을 구축하기까지 대략 6개월 이상 소요되는 것이 일반적이다. 대부분의 데이터 플랫폼 솔루션은 온프레미스에 고정된 하드웨어 리소스를 기반으로 동작되도록 설계됐다. 데이터 웨어하우스, 데이터 레이크 및 데이터 마트 플랫폼을 구축할 때 올바른 시스템 사이징이 매우 중요했다. 일부의 경우 새로운 데이터 플랫폼이 얼마나 필요한지 예측하기 어렵기 때문에, 실제로 필요한 리소스보다 더 많은 하드웨어 및 소프트웨어에 대한 투자가 이뤄졌다. 시스템 최대 부하를 기반으로 플랫폼을 구축하더라도 해당 플랫폼이 대중화되고 데이터 및 워크로드가 증가하면 시스템 용량을 쉽게 초과할 수 있다. 이와 같은 이유로 동시에 여러 워크로드의 작업 요청이 있는 경우, 클러스터의 제한된 컴퓨팅 및 스토리지 리소스 경합이 발생하며, 요청받은 작업은 큐잉되기 때문에 중요한 워크로드를 위한 사일로된 분석 환경을 구축해야 되는데 이는 또 다른 문제를 야기한다. 아무리 용량 산정이 잘 계획됐다 하더라도 정확하게 미래의 워크로드를 예측할 수 없으며, 워크로드를 위한 리소스를 계속 증설할 수도 없다.

[그림 4] 온프레미스 환경서 데이터 플랫폼 구축 과정
[그림 4] 온프레미스 환경서 데이터 플랫폼 구축 과정

3) 플랫폼 유지 관리 어려움
플랫폼 구축보다 더 어려운 점은 플랫폼을 안정적으로 유지 관리하는 것이다. 이를 위해 데이터 플랫폼 팀은 숙련된 IT 직원들을 채용해야 한다. 예를 들어, 기존 데이터 레이크 플랫폼의 경우, 자바 및 스파크 개발 경험을 포함한 하둡 에코 프로젝트를 잘 알고 있는 전문가가 필요하다. 숙련된 전문가는 데이터 분석 작업보다는 인프라 관리와 같은 작업에 더 많은 시간을 할애해야 한다. 개발, 유지 관리 및 문제 발생 시 해결할 전문가가 없는 경우, 시스템 문제는 장기화될 수 있다. 보안으로 확대 적용해보면, 방화벽을 포함한 네트워크 보안, 데이터 암호화, 사용자 역할 및 접근 권한 제어에 대한 지속적인 관리 및 대응이 필요하다.

[그림 5] 전통적인 데이터 아키텍처
[그림 5] 전통적인 데이터 아키텍처

4) 비즈니스 변화 대응 어려움(확장성 포함)
실제 비즈니스 상황은 시간 경과에 따라 다변화되며, 데이터의 양도 급증하고 종류도 다양해졌다. 그 결과 기존 데이터 플랫폼은 일반적으로 확장성이 좋지 않으며, 여러 워크로드가 혼용되는 경우 <그림 4>와 같이 피크 시간대에 리소스 경합으로 동시 처리 작업 성능이 저하되기 때문에, 오늘날 데이터 분석가, 과학자 및 협업 사용자의 다양한 요구사항을 제대로 충족시키지 못하고 있다.

[그림 6] 피크 시간대 리소스 경합 과정
[그림 6] 피크 시간대 리소스 경합 과정

신규 워크로드나 데이터 소스를 기존 플랫폼에 통합하거나 앞서 살펴본 성능 저하 문제를 해결하기 위해서는 기존 클러스터에 노드를 추가해야 하지만, 클러스터 크기 조정 작업은 오랜 시간이 소요된다. 예를 들어, 기존 분석 환경에 100TB 데이터가 저장된 환경에서 신규 노드를 추가한 경우, 10Gbps 네트워크 환경에서는 분당 50GB 데이터를 신규 노드로 재분배 할 수 있기 때문에 전체 데이터가 클러스터의 모든 노드에 균일하게 조정되기까지는 34시간이 소요된다. 하지만 운영 환경에서 이 시간 동안의 다운타임을 허용할 수 없다. 이런 이유로 데이터 재분배 작업은 운영 워크로드에 영향도를 최소한 방식으로 네트워크 대역폭을 제한해 조금씩 진행되기 때문에 2주의 시간이 필요하다.

[그림 7] 오랜 시간이 소요되는 클러스터 크기 조정 작업
[그림 7] 오랜 시간이 소요되는 클러스터 크기 조정 작업

5) 사일로 분석 환경
전통적인 데이터 플랫폼은 IT 산업 발전에 따라 트랜잭션 시스템에서 데이터 분석 시스템으로 발전했다. 분석 시스템은 여러 운영 시스템에 데이터를 활용해 업무별, 부서별 데이터 마트를 생성해 사용하고 있으며, 정형/비정형 리포트 업무를 위해 EDW 시스템이 추가로 구축됐다. 전통적인 정보계 시스템에서 처리하기 어려운 반정형 및 비정형 데이터와 정형 데이터를 통합 분석하기 위해 데이터 레이크 플랫폼이 사일로 형태로 구축됐다. 그 결과 많은 조직이 필요에 따라 독자의 분석 플랫폼을 구축하게 되어 기업 내부에는 수많은 사일로된 분석 환경이 관리되지 않은 방식으로 존재한다. 이로 인해 많은 기업 내부에서는 사일로된 데이터를 통합 분석하려는 다양한 시도를 하고 있지만 현실적으로 해결하기 매우 어려운 상황이다.

6) 이기종 플랫폼 간 데이터 공유 체계 구축 어려움
모든 기업들은 기업 내 산재하는 데이터를 통합 분석하고자 한다. 이를 위해서는 전통적으로 이기종 또는 서로 다른 데이터베이스 간의 데이터를 동기화하기 위한 방안으로 CDC, ETL 및 EAI와 같은 솔루션들을 사용해야 한다. 복잡한 데이터 파이프라인은 결국 데이터 플랫폼 확장을 저해하는 원인이 되기도 한다. 많은 기업들은 사일로된 데이터 플랫폼 간의 데이터 동기화를 위해 고비용 솔루션을 도입해 사용하고 있으며, 데이터 공급자가 여러 테이블 및 소비자들에게 데이터를 동기화하는 경우 파이프라인 복잡도가 크게 증가해 시스템 구축 및 유지 관리에 많은 비용이 필요하기에 플랫폼 확장을 방해하는 가장 큰 원인이 된다. 이 방식의 또 다른 문제점은 데이터 공급자가 소비자에게 데이터를 공유하는 방식이 물리적으로 데이터를 복사 및 이동해야 한다는 것이다. 이 방식은 데이터 동기화 지연이 발생해 소비자는 최신의 실시간 데이터를 활용할 수 없으며, 데이터의 소유권 역시 공급자가 아닌 소비자에게 이전되는 문제점을 야기한다.

[그림 8] 이기종 플랫폼 간 데이터 공유를 위해 거쳐야 하는 과정
[그림 8] 이기종 플랫폼 간 데이터 공유를 위해 거쳐야 하는 과정

이처럼 지난 20년 동안 기업 환경에서 데이터 플랫폼은 변화하는 시대 요구사항에 맞게 진화해 왔지만 오늘날 기업 환경에서 생성되는 데이터의 양, 속도, 다양한 데이터 유형 및 분석 워크로드를 민첩하게 대응하지 못하는 한계에 봉착하게 됐다.

하지만 클라우드 환경에서 제공하는 무제한에 가까운 데이터 저장소와 유연하고 확장 가능한 컴퓨팅 리소스의 특성은 ‘모던 데이터 스택’이라는 개념으로 새로운 해결책을 제시할 수 있게 됐다. 다음 글에서는 모던 데이터가 무엇인지를 보다 자세히 살펴보고, 지난 2년간 발전돼온 모던 데이터 스택의 진행 과정에 대해 살펴보겠다.



댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.