데이터 레이크하우스 및 데이터 테이블 표준 아이스버그 등 기술 요구

[아이티데일리] 데이터에 기반한 의사결정은 빠르게 변화하는 시장 환경에 대응하기 위한 핵심 역량이다. 빠르게 데이터에 접근하고 인사이트를 추출할 수 있는 데이터 분석 역량이 곧 기업의 경쟁력과 직결된다는 얘기다. 하지만 데이터의 양이 기하급수적으로 늘고 종류도 다양해지면서, 데이터 분석과 관련된 제반 작업에 어려움을 겪는 기업들도 늘어나고 있다.

이러한 상황에서 최근 데이터 분석 프로세스를 간소·효율화할 수 있는 방법이 나타나 데이터 전문기업들의 관심을 받고 있다. 바로 ‘데이터 인 플레이스(Data In Place)’다. 데이터의 이동을 최소화해 분석하는 것을 골자로 하는 데이터 인 플레이스는 저장된 위치에서 데이터를 분석한다는 점에서 그 혁신성을 인정받고 있다. 데이터 분석의 새로운 트렌드로 부상한 ‘데이터 인 플레이스’를 조명해 본다. 


데이터 이동 최소화해 분석

데이터 인 플레이스(Data In Place)는 데이터가 있는 곳에서 데이터를 분석한다는 개념(Concept)이다. 데이터를 별도의 시스템으로 이동시키지 않고, 저장된 위치에서 직접 처리한다는 것이다. 표면적으로는 특정 스토리지에 위치한 데이터를 분석한다는 의미지만, 데이터를 이동시키거나 전처리하지 않고 그대로 사용한다는 의미로 해석된다.

데이터 인 플레이스는 데이터가 위치한 곳에서 사용자의 요구에 따라 다양한 분석 업무를 수행할 수 있도록 한다. 통상 △과거 데이터 분석 △실시간 데이터 분석 △미래 예측 등 3가지에 한정된 분석 업무에 국한되는 것이 아닌, 데이터가 있는 곳에서 기업 내의 다양한 사용자들이 원하는 시점에 원하는 분석 패턴을 유연하게 수행할 할 수 있다.

데이터 인 플레이스는 분석에 필요한 아키텍처가 유연하고 즉시성이 뛰어나야 가능하다. 또한 기업 내 데이터 분석가들이 각자 선호하는 분석 패턴을 위해 데이터 이동이나 별도의 분석 환경을 구축하지 않고 다양한 아키텍처 패턴을 단일 데이터 플랫폼에서 제공함으로써, 분석 업무별로 별도 플랫폼을 구축할 필요도 없다. 기업의 입장에서는 플랫폼 구축 및 운영 비용을 절감할 수 있다는 이점이 있다.

데이터 인 플레이스와 실시간 데이터 처리의 차이점

데이터브릭스코리아 엄경순 기술 총괄부사장은 “데이터 인 플레이스라는 개념은 최근까지 대외적으로 통용되지는 않았다. 일반적으로 데이터를 처리할 때 데이터 저장(Data at Rest), 데이터 처리(Data in Motion), 데이터 사용(Data in Use)이라는 용어를 사용해 왔다. 데이터를 저장, 처리, 사용하는 단계는 관계형 DB 환경에서 가장 효과적인 방법으로 평가됐다”면서 “그러나 기업들이 처리하는 데이터의 종류가 다양해지고 규모가 커지면서 데이터의 저장과 처리에 대한 통합 또는 간소화에 대한 요구사항들이 늘어났다. 이러한 요구사항들을 해결하기 위해 ‘제로 ETL(Zero ETL)’, ‘데이터 페더레이션(Data Federation)’, ‘변경 데이터 캡쳐(Change Data Capture)’ 등 기술들이 데이터 레이크 분야에 등장했고, 이러한 기술들을 활용해 데이터의 이동을 최소화해 처리하는 개념으로 데이터 인 플레이스가 등장한 것”이라고 데이터 인 플레이스 등장 배경을 소개했다.

기업이 특정 제품에 대한 고객 만족도 조사를 한다고 가정해 보자. 기업은 고객들을 대상으로 설문을 받을 수 있다. 수집된 설문 결과를 분석하기 위해서는 여러 가지 데이터 전처리 과정을 거쳐야 한다. 결측치도 처리해야 하고, 이상치도 보정해야 한다. 하지만 설문을 수집하는 단계에서 결측치나 이상치가 발생하지 않도록 설문조사 방법 자체를 다시 설계한다면 설문 분석가는 별도의 데이터 전처리 과정 없이 즉시 분석이 가능해진다. 이것이 바로 데이터 인 플레이스의 기본 개념이다.


제로 ETL로 비즈니스 적시성 및 비용 효율화 가능

전통적인 데이터 분석 방식과 데이터 인 플레이스의 가장 큰 차이점은 ‘데이터 추출·변환·적재(ETL, Extract, Transform, Load) 과정을 생략한다는 점’과 ‘정형, 비정형 데이터 분석 환경을 분리하지 않는다는 점’이다.

전통적인 데이터 분석은 데이터를 분석하기 위해 다른 시스템이나 데이터 웨어하우스, 데이터 마트와 같은 저장소로 데이터를 이동시키는 과정, 흔히 데이터 ETL이라고 불리는 전처리 과정이 필요하다. 또 물리적인 데이터 통합은 물론 데이터의 이동과 복사가 필수적이었다. ETL 과정을 거치면서 분석이 지연되는 경우가 많았다. 데이터 종류도 정형 데이터만을 지원했다.

데이터 인 플레이스와 전통적인 데이터 분석의 차이점

이와 달리 데이터 인 플레이스는 ETL 하는 과정을 생략한 ‘제로 ETL(Zero ETL)’로 변환함으로써 시간과 비용을 줄이고, 데이터 무결성을 유지할 수 있다. 저장소는 분산 저장소를 기반으로 하고 있으며, 데이터 페더레이션(Data Faderation) 흔히 데이터 가상화라고 불리는 기술을 활용해 데이터들을 논리적으로 통합한다. 또 제로 ETL은 성능도 뛰어나며, 데이터 이동 및 복제 비용을 절감할 수 있다. 유연성이 높아 정형 데이터와 비정형 데이터를 모두 지원한다.

데이터 인 플레이스는 ETL 파이프라인을 최소화해 데이터 이동을 최소화하고, 데이터 중복을 제거함으로써 데이터 분석의 적시성을 확보할 수 있다. 전통적인 ETL 파이프라인 방식은 야간에 대량 배치(Batch) 작업을 수행함으로써 전날의 데이터를 사용하게 되고 그에 따라 데이터 발생 시점과 분석 결과가 하루정도 차이가 난다. 현재 발생하는 데이터를 대상으로 분석하고 그 결과를 비즈니스에 즉시 적용할 수 있는 환경은 기업들의 비즈니스 민첩성을 확보하고 경쟁우위를 선점하기 위한 주요 차별점이 될 수 있다.

데이터 인 플레이스는 비용 관점에서도 이점이 있다. ETL 파이프라인을 최소화로 컴퓨팅자원 사용 비용을 절감할 수 있고, 데이터 중복 제거로 스토리지 비용을 절약할 수 있다. 그리고 이러한 작업에 투입되던 인력도 줄일 수 있다.

예를 들어, 유통기업이 물량 수요를 예측하는 머신러닝 분석을 한다고 가정해 보자. 일반적으로 머신러닝 분석모델을 만들 때 데이터 처리에 투입되는 자원과 시간이 전체의 약 70%이며, 실제 분석모델을 생성하는 데 투입되는 자원과 시간이 30%다. 만약 데이터 인 플레이스 환경을 구성해 데이터 처리에 소요되는 자원과 시간을 20%로 줄일 수 있다면 전체 분석비용의 50%를 절약할 수 있게 된다.

제로 ETL 외에도 정형, 비정형 데이터 분석 환경을 분리하지 않는다는 점도 전통적인 데이터 분석 방식과의 차별점이다. 전통적인 데이터 분석은 거시적 측면에서 크게 2가지 환경으로 구분된다. 정형 데이터를 분석하는 데이터 웨어하우스 환경과, 비정형 데이터를 분석하는 머신러닝 분석 환경으로 구분할 수 있다.

데이터 웨어하우스는 기간계 RDBMS 시스템으로부터 데이터를 수집하고 스테이징, 베이스 영역 생성, 데이터마트 생성 단계를 거쳐서 분석한다. 머신러닝 분석 환경은 이미지, 텍스트, 영상 등의 비정형 데이터를 저장하고 있는 네트워크 스토리지 등에서 데이터를 추출해 스테이징, 피쳐 추출, 모델훈련의 단계를 거쳐서 분석한다. 즉 정형 데이터와 비정형 데이터를 처리하는 환경이 분리돼 있으며 각 워크로드에는 많은 데이터 중복이 발생한다.

데이터 인 플레이스 분석 방식은 기본적으로 정형, 비정형 데이터의 분석 환경을 분리하지 않고 단일 스토리지 환경에서 데이터를 수집하고 수집한 상태 그대로 통합 분석한다.

언론사가 특정 사회현상에 대한 시민들의 인터뷰 데이터를 수집하고 분석한다고 예를 들어보자. 전통적인 방식에서는 정형화된 설문결과를 DB에 저장하고 SQL로 분석하게 된다. 그리고 인터뷰 영상, 음성, 이미지를 스토리지에 저장한 후 머신러닝 플랫폼에서 인터뷰 참여자의 표정, 음성, 어조 등을 파이썬(Python)으로 분석해 현상에 대한 감정을 분석하게 된다. 그리고 각기 분석된 결과를 통합 DB로 다시 수집해 결합하고 분석하는 과정을 거치게 될 것이다.

데이터 인 플레이스 방식을 사용하게 되면 설문결과와 인터뷰 영상, 음성, 이미지를 하나의 워크로드에서 SQL, 파이썬을 모두 처리하며 통합 분석 결과를 도출해 내게 된다. 데이터 처리뿐만 아니라 데이터 분석 워크로드도 간소화해 보다 높은 수준의 분석 적시성을 확보할 수 있다.


구현 핵심은 데이터 레이크하우스…데이터·테이블 포맷 중요

국내·외 데이터 전문기업들은 데이터 인 플레이스를 구현하기 위한 핵심 기술로 ‘데이터 레이크하우스(Data Lakehouse)’를 꼽는다.

데이터 인 플레이스는 데이터 이동을 최소화하고 정형, 비정형, 반정형 등 데이터의 저장 위치가 분산되지 않아야 한다. 정형과 비정형, 반정형 데이터를 한 곳에 담고 분석할 수 있어야 한다는 의미다. 이런 이유로 정형 데이터 기반의 분석뿐만 아니라 반정형 데이터 및 비정형 데이터까지 모든 데이터를 통합해 분석하는 레이크하우스의 플랫폼이 중요하다.

통상 기업들은 정형 데이터는 데이터 웨어하우스를 통해 분석하고 반정형 및 비정형 데이터는 데이터 레이크로 통합해 분석하는 하이브리드 아키텍처를 채택하고 있다. 하지만 하이브리드 분석 환경은 아키텍처 복잡성, 데이터 중복성 등 여러 문제를 야기하기도 한다.

데이터브릭스의 데이터 인텔리전스 플랫폼 특장점 (출처: 데이터브릭스)

데이터 레이크하우스는 데이터 웨어하우스와 비슷한 데이터 구조와 관리 기능을 제공하면서, 데이터 레이크에서 제공하는 저가 스토리지를 활용한 대용량 데이터 활용성을 포함한다. 데이터 레이크하우스는 데이터 레이크 위에 데이터 웨어하우스 역할을 하는 계층을 통합한 기술이다. 데이터 웨어하우스가 가진 고품질의 데이터 관리와 구조화 기능을 구현하지만, 이를 별도의 값비싼 데이터 웨어하우스 스토리지가 아닌 데이터 레이크의 유연하고 저렴한 스토리지 위에서 실현한다. 데이터 웨어하우스와 데이터 레이크 등 두 가지의 플랫폼을 하나로 통합함으로써, 사용자들은 기업 내에 존재하는 사일로 데이터를 제거하고 단일 데이터 저장소에 액세스해 데이터를 사용할 수 있다.

사실 데이터 레이크하우스라는 용어와 개념은 데이터브릭스가 2021년 처음 정립했다. 지금은 업계에 통용되는 용어로 사용되고 있다. 데이터브릭스코리아 엄경순 기술 총괄부사장은 “기업들은 일반적으로 데이터 분석을 위해 데이터 웨어하우스와 데이터 레이크를 구축한다. 하지만 데이터 웨어하우스와 데이터 레이크를 사용할 경우 데이터가 중복되는 경우가 많다. 중복을 제거하고 두 플랫폼을 통합해야 한다는 시장의 요구사항들이 있었다”면서 “이에 2021년 데이터브릭스는 UC 버클리, 스탠포드 대학교와 3자 연구를 통해 데이터 웨어하우스와 데이터 레이크를 통합하는 개념을 학술적으로 정립해 논문으로 게재했고 이를 데이터 레이크하우스로 명명했다”고 설명했다.

데이터 인 플레이스를 구현하기 위해서는 여러 종류의 데이터를 저장하고 분석할 수 있는 환경인 데이터 레이크하우스가 중요하다. 그렇다면 서로 다른 종류의 데이터를 어떻게 한 곳에 저장하고 분석할 수 있을까.

해답은 효율적인 데이터 읽기, 쓰기, 쿼리를 가능하게 하는 표준화된 데이터 포맷인 아파치 파케이(Apache Parquet)와 데이터 레이크에서 데이터 관리, 데이터 정합성 및 일관성이 유지되고 있음을 보장하는 ACID(Atomic, Isolated, Consistent, Durable) 트랜잭션을 지원하는 테이블 포맷 ‘아파치 아이스버그(Apache Iceberg)’, 실시간 스트리밍 및 배치 데이터 통합이 가능한 ‘델타 레이크(Delta Lake)’ 등을 토대로 정형, 비정형, 반정형 데이터들의 공통 표준을 정립하는 데서 찾을 수 있다.

데이터 인 플레이스를 위해서는 데이터 레이크하우스가 반드시 기반 플랫폼으로 자리를 잡고 있어야 한다. 또 데이터 레이크하우스를 성공적으로 구현하기 위해선 데이터 포맷과 테이블 포맷을 통해 데이터들의 표준을 정립하는 것이 중요하다.

스노우플레이크의 데이터 클라우드 플랫폼 특장점 (출처: 스노우플레이크)

데이터 포맷의 대표 기술로는 컬럼 지향(Column-Oriented) 저장 포맷으로 분석, 워크로드에 최적화된 ‘파케이’, 하둡 환경에서 사용되며 컬럼 지향 포맷으로 높은 압축 비율과 성능을 제공하는 ‘ORC’, 스키마 기반 로우 지향(Row-Oriented) 저장 포맷으로 스트리밍 데이터와의 연계 효율이 좋은 ‘Avro’ 등이 있다.

테이블 포맷의 경우 데이터 스냅샷, 스키마 진화, ACID 트랜잭션을 지원하는 ‘아파치 아이스버그’, 실시간 스트리밍과 배치 데이터 통합이 가능한 ‘델타 레이크’, 실시간 데이터 변경(CDC) 및 스냅샷 쿼리를 지원하는 ‘하파치 후디(Apache Hudi)’ 등이 있다.

데이터스트림즈 길기범 수석연구원은 “오늘날 많은 데이터 프로젝트에 컬럼 기반 개방형 데이터 포맷인 파케이가 사용되고 있다. 특정 언어에 종속되지 않고 대부분의 분산형 쿼리 엔진이나 ETL 도구들이 파케이 포맷을 지원하기 때문에 손쉽게 데이터를 내보내고 공유할 수 있기 때문이다”고 설명했다.


인메모리 DB, NoSQL 등과 시너지

데이터 인 플레이스와 시너지를 낼 수 있는 기술도 존재한다. 바로 NoSQL과 인메모리 DB다.

먼저 NoSQL은 비정형 또는 반정형 데이터를 유연하게 처리할 수 있는 스키마리스(schemaless) 구조를 갖고 있다. 구조가 자주 변경되거나 고정되지 않은 데이터를 다루는 데 적합하기 때문에 데이터 레이크와 시너지가 좋은 DB로 꼽힌다. 대표적인 NoSQL 솔루션에는 몽고 DB와 카산드라(Cassandra)가 있다.

통상적으로 레이크하우스 플랫폼은 비확정적인 데이터 스키마에 대한 실시간 트랜잭션 시스템을 처리할 수 있도록 설계되지는 않았다. 따라서 데이터 레이크하우스 플랫폼과 NoSQL 시스템이 상호보완적으로 운영되기도 한다. NoSQL을 통해 실시간 시스템 로그, 웹 로그, XML/Json 문서 데이터들을 실시간으로 저장하고, 분석이 필요한 부분은 레이크하우스 플랫폼과 논리적으로 통합해 가상화하거나 데이터 복제(CDC)를 통해 함께 활용한다.

데이터 인 플레이스는 NoSQL 외에도 인메모리DB와도 궁합이 잘 맞는다. 인메모리DB는 메모리에 데이터를 업로드해 사용하는 DB를 말한다. 메모리에 데이터를 업로드함으로써 대용량 데이터 증가, 실시간 트랜잭션 증가 등에 대응할 수 있는 고성능 데이터 처리가 가능하다. 데이터 인 플레이스에서 주목하는 데이터 이동을 최소화해 데이터를 분석하는 것을 지원할 수 있다. 다만 인메모리DB에서는 DB엔진과 DB저장소가 메모리에 저장되는 만큼, 주기억장치의 휘발로 인해 주기적인 백업이 필요하다.

스노우플레이크 루이스 리(Louis Lee) 시니어 세일즈엔지니어링 매니저는 “비즈니스 시나리오에 따라 쿼리의 결과를 밀리초에서 초 단위로 쿼리 결과를 얻어야 하는 경우가 있다. 준비된 데이터 마트가 있을 때 데이터를 활용해 상품을 실시간으로 추천하거나 경고를 제공해야 하는 경우, 매우 짧은 시간에 쿼리 결과를 제공해야 한다. 이러한 시나리오에서 사용되는 시스템이 초고속 트랜잭션을 처리하는 인메모리 DB 또는 RDBMS의 인메모리 기능이다. 이 시나리오에서는 레이크하우스 플랫폼에서 데이터 마트를 준비하고 인메모리 DB로 데이터 마트를 복제해 초고속 데이터 서빙환경을 구성할 수 있다”고 설명했다.

이어 델 테크놀로지스 관계자는 “일반적인 데이터 웨어하우스 및 데이터 레이크의 경우 분석하고자 하는 데이터를 컬럼형 기반으로 변환해 저장한다. 대용량 데이터를 효율적으로 처리하기 위해 데이터 웨어하우스에 저장된 데이터는 파티션 기반으로 범주화된 범위로 그룹핑해 저장돼 대량 데이터를 조회해 처리하는 목적에 최적화돼 있다. 하지만 이러한 데이터 저장 구조는 업무용 DB와 같은 트랜잭션 업무 목적이나 특정 조건에서 단 건을 조회하는데 제약사항이 있기 때문에 분석과 실시간 조회 업무가 혼용된 경우 이를 지원하기 위해 NoSQL, 인메모리 기반 DB와 같은 솔루션을 함께 혼용할 필요가 있다”고 부연했다.

데이터스트림즈의 데이터 패브릭 아키텍처 (출처: 데이터스트림즈)


기술적 제약 존재

한편, 데이터 인 플레이스 역시 새롭게 등장한 개념으로 보완해야 할 점도 있다. 먼저 데이터 인 플레이스는 데이터 소스 성능에 의존한다는 점이다. 데이터가 저장된 원 위치에서 처리되므로, 원본 데이터 소스의 성능이 전체 속도에 영향을 줄 수 있다. 또 원본 데이터 소스가 낮은 IO 처리 성능을 가진 경우, 쿼리 속도도 저하될 수 있으며, 네트워크 대역폭이나 데이터 소스가 병목현상을 유발할 수도 있다.

다음은 분산 환경이 복잡하다는 점이다. 여러 데이터 소스를 동시에 연결해 처리하는 경우, 각 데이터 소스의 연결, 인증, 쿼리 최적화 등이 복잡해질 수 있다. 이기종 DB 간 데이터 스키마나 데이터 타입의 불일치로 인해 조인(Join) 작업 시 추가적인 변환 비용이 발생할 수 있다.

세 번째는 실시간으로 데이터를 처리하는 데 한계가 있다는 점이다. 데이터 소스가 실시간 처리를 지원하지 않는 경우, 실시간 데이터 분석이 어렵거나 지연(latency)이 발생할 수 있다. 스트리밍 데이터 소스와 배치 데이터 소스를 동시에 통합해 처리하는 데 추가적인 기술적 요구사항이 필요하다.

아울러 데이터 가상화만으로 데이터 인 플레이스를 구성할 수는 없다는 점도 염두에 둬야 한다. 데이터 가상화는 기존의 기간계 또는 정보계 시스템에 전달되는 부하량이 많을 수 있어 데이터 이동이 최소화되는 부분에만 적용돼야 한다. 마지막으로 데이터 소스의 포맷이나 저장소 타입이 호환되지 않을 경우 추가적인 데이터 변환 및 복제가 요구되기도 한다.

데이터스트림즈 길기범 수석연구원은 “데이터 인 플레이스는 최신 기술이다. 때문에 기술적 완성도가 아직은 부족할 수밖에 없다. 기술적인 완성도 외에도 운영적 측면에서도 고려해야 할 사항이 존재한다. 데이터 인 플레이스는 원본 데이터에 직접 접근해 처리하기 때문에 데이터 소스별로 개별 보안 정책과 규정을 준수해야 한다. 아울러 데이터 소스 간 보안 수준이 다를 경우, 이를 통합적으로 관리하는데도 문제가 있다. 또한 데이터 인플레이스를 지원하는 고성능 분산 처리 엔진인 ‘아파치 스파크(Apache Spark)’나 트리노(Trino) 등과 네트워크 대역폭의 요구사항이 높아질수록 운영 비용이 증가한다는 점도 고려해야 한다. 특히 클라우드 기반에서는 데이터 전송 비용을 비롯해 네트워크 비용이 크게 늘어날 수도 있다. 이 점을 잘 고려해 기업 비즈니스에 맞고, 데이터 분석 체계에 맞는 데이터 인 플레이스 환경을 구현하는 것이 중요하다”고 첨언했다.


기업들의 데이터 인 플레이스 지원 전략

데이터브릭스, 스노우플레이크, 데이터스트림즈 등 데이터 전문기업들은 데이터 인 플레이스에 주목하며 각사가 보유한 핵심 기술 역량을 결집해 고객들을 지원하고 있다. 데이터브릭스와 스노우플레이크는 데이터 레이크하우스(데이터 클라우드)를 기반으로 고객들에게 데이터 인 플레이스를 제안하고 있고, 데이터스트림즈는 데이터 가상화 역량을 솔루션으로 녹인 ‘데이터 패브릭’ 플랫폼으로 고객들의 데이터 인 플레이스 환경을 지원하고 있다. 데이터 전문기업들의 데이터 인 플레이스 전략에 대해 알아봤다.

 

데이터브릭스

오픈소스 빅데이터 플랫폼 생태계에서 빼놓을 수 없는 아파치 스파크(Apache Spark)의 창시자가 창업한 데이터브릭스(Databricks)는 데이터 인 플레이스를 비즈니스 최전선에 내세우고 있다. 데이터브릭스는 데이터 인 플레이스를 구현하기 위한 데이터 레이크하우스 플랫폼인 ‘데이터 인텔리전스 플랫폼(Data Intelligence Platform)’을 통해 고객에게 데이터 인 플레이스를 제안하고 있다.

데이터브릭스가 제안하는 데이터 인 플레이스 구현 강점은 크게 4가지로 요약된다. 먼저 데이터브릭스의 DIP를 이용할 경우 기업의 데이터를 데이터브릭스가 운영하는 레이크하우스 플랫폼 내 별도의 스토리지로 이동시키지 않는다는 점이다. 시장에서 경쟁하는 많은 데이터 레이크하우스 플랫폼들은 고객의 데이터를 해당 벤더 사의 스토리지에 적재해야 하지만, DIP는 이러한 데이터 이동 없이 고객의 스토리지를 그대로 사용해 데이터를 분석한다. 고객은 외부 데이터 플랫폼 업체로 데이터를 이동시키지 않아도 되기 때문에 보안 법령, 사내 보안내규 등을 충실히 따르면서도 ETL 워크로드를 최소화할 수 있다.

다음은 정형 데이터뿐만 아니라 비정형 데이터도 데이터 이동 없이 고객의 스토리지를 그대로 사용할 수 있다. 이미지, 영상, 텍스트 등 비정형 데이터도 고객의 계정에 저장된 데이터를 해당 플랫폼에 ‘볼륨(Volume)’으로 등록해 데이터 이동없이 머신러닝, 딥러닝, 생성형AI 분석에 즉시 사용할 수 있다.

세 번째 DIP는 고객이 보유한 스토리지를 사용하면서도 강력한 보안 환경을 구현할 수 있다. 데이터 거버넌스 레이어를 구성할 수 있는 ‘유니티 카탈로그(Unity Catalog)’ 거버넌스 솔루션을 통해 강력한 보안 환경을 구축할 수 있다. 이 솔루션을 통해, 정형 테이블, 반정형 문서파일, 비정형 파일들에 대한 거버넌스 환경을 구성하고 높은 수준의 권한관리를 통해 사용자들의 무분별한 데이터 접근을 통제한다.

마지막은 기간계 시스템에서 발생되는 데이터를 실시간으로 통합할 수 있는 ‘델타 라이브 테이블(Delta Live Table, CDC솔루션)’ 기술을 제공한다는 점이다. 델타 라이브 테이블은 소스 시스템에서 발생되는 데이터를 읽어 비즈니스 로직에 따라 처리한 뒤 변경 데이터 캡쳐(Change Data Capture) 방식으로 데이터브릭스 플랫폼에 통합할 수 있다. 이 기술은 제로ETL을 구현하는 가장 중요한 요소로 사용된다.

데이터브릭스코리아 엄경순 기술 총괄부사장은 “데이터 인 플레이스의 실현을 위해서는 적합한 플랫폼을 선정하는 것이 매우 중요하다. 만약 데이터 인 플레이스의 사상을 구현할 수 없는 플랫폼을 도입한다면 오히려 과거로 회귀하는 데이터 처리환경이 될 수도 있기때문에 데이터 플랫폼은 매우 신중하게 선정해야 한다. 이러한 측면에서 데이터브릭스의 DIP는 단연 데이터 인 플레이스의 사상과 가장 일치되는 플랫폼이라고 자신있게 말할 수 있다”고 말했다.

[인터뷰] “데이터 인 플레이스 구현해야 비즈니스 민첩성 확보 가능”
데이터브릭스코리아 엄경순 기술 총괄부사장
데이터브릭스코리아 엄경순 기술 총괄부사장

Q. 데이터브릭스가 내세우는 데이터 인 플레이스의 개념은.

데이터 인 플레이스는 ETL 파이프라인을 간소화하고 데이터 이동을 최소화하며, 데이터 중복을 제거해 데이터 분석의 적시성을 확보할 수 있도록 해준다. 데이터브릭스는 데이터 인 플레이스라는 용어를 비즈니스 및 프로젝트에서 우리 회사의 특장점을 강조할 때 사용하고 있다. 그만큼 데이터 인 플레이스라는 개념이 데이터 분석 트렌드의 중심에 자리할 것으로 예상하고 있다.

다른 기업들 역시 데이터 인 플레이스에 많은 관심을 보이고 있다. 통상 데이터를 분석할 때 데이터를 모으고, 정제하며 처리하는 데 전체의 약 70% 시간이 들어간다. 또 데이터를 전처리해 분석가에게 도달하는 데까지 걸리는 시간이 길고, 저장소 비용도 비싸다. 데이터 인 플레이스가 이런 문제를 상당부분 해결할 수 있다는 점에서 많은 관심을 받을 것이다.

Q. 데이터 레이크하우스가 데이터 인 플레이스 개념을 구현하기에 중요한 재료다. 타사와의 차별점은.

데이터 레이크하우스는 데이터 인 플레이스를 구현하기 위해 반드시 필요하다. 데이터 인 플레이스는 정형 데이터와 비정형 데이터를 오브젝트 스토리지에 저장한다. 비정형 데이터를 정형화할 필요 없이 데이터 분석가가 원하는 대로 자연어로 분석할 수 있다. 그렇기에 데이터 레이크하우스가 반드시 필요하다 할 수 있다.

데이터브릭스는 UC버클리와 스탠포드 대학교와 함께 데이터 레이크하우스라는 개념을 정립한 기업이다. 데이터 레이크하우스와 관련된 기술만큼은 다른 회사보다 기술적 완성도가 높다고 자부한다. 우리 회사는 데이터브릭스 데이터 인텔리전스 플랫폼, DIP라는 솔루션을 제공하고 있다. 이 솔루션에는 ETL 워크로드를 최소화할 수 있는 기능, 고객 계정에 저장된 데이터를 볼륨으로 등록해 데이터 이동 없이 머신러닝, 딥러닝, 생성형 AI 분석에 사용할 수 있는 기능, 데이터 레이크하우스로 인해 발생할 거버넌스 이슈를 해결할 수 있는 ‘유니티 카탈로그’, 기간계에서 발생하는 데이터를 실시간으로 통합할 수 있는 CDC 솔루션 ‘델타 라이브 테이블’ 등을 함께 지원해 고객이 보다 안전하게 데이터 인 플레이스를 구현하도록 돕고 있다.

지난 몇 년 동안 플랫폼 기업들은 데이터 인 플레이스를 실현하기 위해 ETL 워크로드를 최소화하는 데에만 집중해 왔다. 데이터브릭스도 ETL 워크로드를 최소화하기 위한 아키텍처를 제공하고, ETL 코드 자동생성, ETL 코드 자동 수정 등의 기능들을 생성형 AI 기술을 활용해 제공하고 있다. 하지만 여기서 더 나아가 데이터브릭스는 데이터 인 플레이스를 구현해 데이터를 비 IT 전문가들도 즉시 분석할 수 있도록 ‘오토ML(AutoML)’, ‘텍스트 투 SQL(Text to SQL)’, ‘텍스트 투 차트(Text to Chart)’ 등의 생성형 AI 기술을 제공하고 있다.

Q. 데이터 인 플레이스를 도입하려는 기업에게 조언한다면.

데이터 인 플레이스는 비단 ETL 워크로드 최소화의 문제만이 아니다. 데이터 엔지니어, BI 분석가, 통계 분석가 등이 동일한 사용자경험과 언어로 협업할 수 있어야 하며, 전문가도 비전문가도 같은 수준의 결과물을 얻을 수 있어야 한다. 데이터 인 플레이스는 데이터 분석 전체 라이프 사이클을 간소화하고 효율화하는 하나의 수단이다. 데이터 분석 전체 라이프 사이클을 다양한 이해관계자들이, 단일 데이터 플랫폼에서 협업할 수 있는 플랫폼이 필요하다. 우리의 ‘데이터브릭스 데이터 인텔리전스 플랫폼’이 최적의 솔루션이라고 말할 수 있다.

 

데이터스트림즈

빅데이터 전문기업 데이터스트림즈는 데이터 패브릭(Data Fabric) 솔루션 및 아키텍처를 토대로 비즈니스를 영위하는 기업이다. 데이터스트림즈는 데이터 인 플레이스 사업을 위해 데이터 패브릭을 전면에 내세우고 있다.

데이터스트림즈에서 제안하는 데이터 패브릭 기반 데이터 인 플레이스 전략은 데이터를 물리적으로 이동하지 않고 원본 위치에서 처리와 분석을 수행할 수 있도록 데이터를 논리적인 가상의 레이어를 두고 통합, 관리하는 것에 있다.

데이터스트림즈 길기범 수석연구원은 “최근 기업들은 다양한 소스에 있는 방대한 양의 데이터를 효과적으로 관리하고 활용하기 위해 노력하고 있다. 이러한 배경에서 등장한 데이터 패브릭은 분산된 데이터 환경을 원활하게 통합하고, 데이터 관리를 자동화하는 아키텍처”라면서 “데이터 패브릭은 사일로화 된 레거시 시스템부터 최신 클라우드 애플리케이션 및 분석 데이터 저장소까지 모든 데이터 소스의 데이터를 통합해 자산화해 관리할 수 있다”고 설명했다.

데이터스트림즈는 ‘테라원(TeraONE)’이라는 통합 플랫폼을 통해 데이터 패브릭에 필요한 세부 솔루션을 제공하고 있다. 테라원은 빅데이터 수집·가공·저장부터 데이터 거버넌스, 데이터 가상화, AI 분석, 빅데이터 관리 기능을 통합해 제공한다. 크게 데이터 레이크를 지원하는 ‘스탠더드’ 버전, 수집부터 시각화까지 데이터 분석의 전 과정을 지원하는 ‘프로페셔널’ 버전, 데이터 거버넌스 기반 데이터 가상화를 지원하는 ‘패브릭’ 버전 등 3가지로 구성돼있다.

아울러 데이터 거버넌스를 지원할 수 있는 데이터 거버넌스 솔루션 ‘이루다’도 제공하고 있다. 이루다는 데이터 표준관리, 메타데이터 관리, 비즈니스 메타데이터 관리, 데이터 품질 관리, 데이터 계보 관리, 마스터데이터 관리 등의 기능을 제공하며, 데이터의 위치, 분류, 설명, 관계 등을 제공해 전사적 데이터 거버넌스 구축을 지원한다.

데이터스트림즈 길기범 수석연구원은 “데이터를 분석하기 위해서는 결국 데이터의 소스가 어디에 위치하고, 테이블, 컬럼이 무슨 의미가 있는지를 이해하는 데이터 거버넌스 기술이 필요하다. 또 데이터 거버넌스를 토대로 데이터 패브릭으로 데이터를 논리적으로 통합하고 분석할 수 있는 파이프라인을 마련해야 한다. 이렇게 해야 데이터의 이동을 최소화하고 분석할 수 있는 개념인 데이터 인 플레이스를 완성할 수 있다고 본다. 또한 이를 위한 일련의 작업을 위해서는 사람이 필요하다. 구축하고 실현할 수 있는 전문가가 중요하다. 데이터스트림즈는 이 모든 것을 다 갖추고 있다”고 말했다.

[인터뷰] “데이터 패브릭으로 성공적인 데이터 인 플레이스 구현”
데이터스트림즈 길기범 수석연구원
데이터스트림즈 길기범 수석연구원

데이터 인 플레이스 기술은 데이터를 물리적으로 이동하지 않고 원본 위치에서 처리와 분석을 수행하는 효율적인 접근법이다. 이는 데이터 이동에 따른 비용 절감, 실시간 처리, 데이터 일관성 유지라는 이점을 제공하며, 데이터 패브릭의 핵심인 통합적인 데이터 관리와도 자연스럽게 연결된다.

이를 효과적으로 활용하려면 다양한 데이터 소스와 통합이 가능한 아파치 임팔라(Apache Impala), 아파치 스파크(Apache Spark) 등 분산 처리 엔진을 선택하고, 아파치 아이스버그(Apache Iceberg)와 같은 메타데이터 관리 툴을 강화해 데이터 위치와 구조를 효율적으로 파악해야 한다. 특히 아파치 파케이(Apache Parquet), ORC 등 표준화된 데이터 포맷과 고성능 스토리지의 결합을 통해 성능을 최적화하고, 레디스, 아파치 이그나이트(Apache Ignite) 등 인메모리 캐싱에 사용되는 데이터의 접근 속도를 높이는 것이 중요하다.

또한 데이터 보안을 강화해 역할 기반 접근 제어와 데이터 암호화를 구현하고 에어플로우(Airflow), 나이파이(NiFi) 등 워크플로우 자동화 도구를 활용해 처리 과정을 간소화해야 한다. 데이터 인 플레이스를 성공적으로 안착시키기 위해서는 성능, 확장성, 데이터 소스 간 호환성을 고려한 체계적인 설계와 운영 전략이 필요하다. 이를 통해 데이터 패브릭 환경에서 실시간 분석과 데이터 관리의 효율성을 극대화할 수 있다.

 

스노우플레이크

스노우플레이크(Snowflake)는 기업의 모든 데이터를 한곳에 모아 활용할 수 있게 해주는 ‘데이터 클라우드(데이터 레이크하우스)’ 서비스를 제공하는 기업이다. 스노우플레이크는 데이터 인 플레이스를 구현할 수 있도록 통합 데이터 및 범용 거버넌스를 기반으로 하는 데이터 기반을 제공한다.

스노우플레이크가 전면에 내세운 플랫폼은 ‘AI 데이터 클라우드’다. 데이터 유형과 워크로드를 지원하는 동시에 모든 아키텍처 패턴을 활성화해 기업 내의 데이터 사일로를 제거한다. 특히 다양한 형식, 구조 및 저장 위치의 데이터를 처리하고 협업하기 위한 단일 플랫폼으로, 개방형 표준을 수용하기 위해 아파치 아이스버그 지원 및 오픈소스 카탈로그인 ‘폴라리스 카탈로그(Polaris Catalog)’도 갖추고 있다.

스노우플레이크 루이스 리(Louis Lee) 시니어 세일즈엔지니어링 매니저는 “스노우플레이크는 AI 데이터 클라우드로 데이터 레이크하우스 및 데이터 메시(Mesh)를 포함한 다양한 오픈 아키텍처를 구축할 수 있다. 강력한 데이터 파운데이션을 구축하기 위해서는 데이터 수집, 데이터 저장, 통합적인 보안 및 데이터 거버넌스 체계 및 다양한 워크로드 수용 등이 요구된다. 스노우플레이크는 이 4가지 사항을 모두 지원한다”고 설명했다.

먼저 스노우플레이크의 플랫폼은 데이터 수집 및 저장을 지원한다. 스노우플레이크에 저장되는 데이터는 고성능 분석 업무를 위해 개발된 하이브리드 컬럼형 자료 구조인 ‘마이크로 파티션’에 저장된다. 데이터가 저장되는 시점에 데이터 특성에 맞게 최적화된 압축 알고리즘을 적용함으로써 비용 효율적으로 데이터를 저장하게 되며, 저장되는 시점에 데이터의 통계 정보는 메타 계층에 저장된다. 정형 데이터의 실시간 및 배치 데이터 수집 파이프라인을 구축하기 위해 일반적으로 오픈소스 및 사용 CDC 및 ETL 도구와 완벽하게 통합돼 있다. 또한 JSON, 파케이, ORC, XML과 같은 반정형 데이터를 저장 및 처리하기 위한 기능으로 배리언트(Variant) 데이터 타입을 지원하며, 반정형 데이터의 실시간 및 배치 데이터 수집 기능을 위한 스노우파이프 스트리밍(Snowpipe Streaming), 스노우파이프(Snowpipe) 및 COPY INTO 기능도 지원한다. 오디오, 비디오, 이미지 및 PDF와 같은 비정형 데이터 지원을 위해서는 디렉토리 테이블(Directory Table)과 도큐먼트 AI(Document AI)와 같은 기능도 제공한다.

데이터 인 플레이스를 구현하는 데 요구되는 통합적인 보안 및 데이터 거버넌스 체계도 마련할 수 있다. 스노우플레이크는 ‘스노우플레이크 호라이즌(Snowflake Horizon)’을 통해 데이터 파운데이션 내에 존재하는 데이터, 앱 및 모델들에 대해 기업 내 다양한 사용자들에게 권한에 맞는 일관된 거버넌스 정책을 부여할 수 있다. 스노우플레이크 호라이즌은 데이터 암호화, 보안 정책 및 데이터 거버넌스에 대한 통합적인 기능을 모두 담고 있다. 데이터는 네트워크 및 저장소에 이르기까지 모든 구간에 암호화가 기본적으로 적용되며, 다단계 인증 방식을 통해 안전한 인증 체계도 구축돼 있다.

아울러 다양한 워크로드를 수용할 수 있다. 데이터가 있는 곳에서 데이터 엔지니어링 워크로드, 데이터 웨어하우스 워크로드, 데이터 사이언티스트 워크로드, 데이터 애플리케이션까지 확장해 데이터로 할 수 있는 모든 분석 업무를 단일 플랫폼에서 수행할 수 있다. 사용자 인터페이스에서는 SQL, 자바(Java), 파이썬(Python), 자바스크립트(JavaScript)와 같은 다양한 프로그램 언어로 분석 업무를 수행하기 위한 SQL 에디터 노트북 기능을 제공하고 있다. 스노우플레이크 내에서 실행되는 앱을 개발 및 실행하기 위한 ‘스트림릿(Streamlit)’ 기능이 포함돼 있다.

또한 지리 정보, 실시간 분석과 같은 다양한 분석 패턴을 지원하기 위한 함수를 지원하며, AI/ML 기반의 고급 분석을 위한 스노우파크 ML, 피처 스토어, 모델 레지스트리뿐만 아니라 생성형 AI를 위한 다양한 파운데이션 모델과 이 모델을 활용해 챗봇과 같은 기능을 수 분내에 개발해 활용할 수 있는 LLM-기반의 다양한 함수도 포함하고 있다.

[인터뷰] “스노우플레이크의 데이터 클라우드로 데이터 인 플레이스 구현하라”
스노우플레이크 루이스 리(Louis Lee) 시니어 세일즈엔지니어링 매니저
스노우플레이크 루이스 리(Louis Lee) 시니어 세일즈엔지니어링 매니저

Q. 스노우플레이크에서 바라보는 데이터 인 플레이스는 무엇인가.

데이터 인 플레이스는 데이터가 있는 곳에서 데이터 분석을 한다는 개념이다. 데이터 인 플레이스 분석은 데이터 인 플라이트(In-flight)에 비해 더 광범위한 데이터를 활용할 수 있으며, 실시간 데이터 분석도 하나의 분석 범주로 포함돼 있어 데이터 인 플라이트 분석보다 포괄적인 의미로 사용된다. 데이터 인 플라이트는 데이터가 생성돼 이동하는 시점에 실시간 데이터 처리 및 분석을 하는 개념으로, 주로 IoT 디바이스와 같은 데이터 소스에서 생성된 데이터를 비즈니스에서 정의하는 SLA 내에 바로 처리한다는 것을 의미한다.

Q. 데이터 인 플레이스를 구현하기 위해 어떠한 기술이 뒷받침돼야 하며, 제약이 있다면.

이상적인 데이터 인-플레이스를 지원하기 위해서는 데이터 수집, 저장, 활용 관점에서 여러 기술들이 필요하다. 먼저 데이터 수집 단에서는 정형 및 반정형 데이터에 대한 실시간 및 배치 수집을 지원하기 위한 기능들이 필요하다. 데이터 저장 측면에서는 대용량 데이터를 저장 보관해야 하기에 비용 효율적인 저장구조와 고성능 압축 알고리즘이 제공돼야 한다. 또한 기업 내의 데이터 자체의 중요성이 높아짐에 따라 데이터 암호화는 선택사항이 아닌 필수 사항이 됐다.

데이터 활용면에서는 기업 내 다양한 사용자의 요구사항을 충족하기 위해 SQL, 파이썬, 스칼라, 자바와 같은 다양한 프로그램 언어와 개별 언어를 사용하기 위한 개발 도구를 통합해 제공해야 한다. 또 다양한 분석 업무를 수용하기 위해 OLAP 기반 분석 패턴뿐만 아니라 검색, 지리 정보, 타임시리즈 분석과 같은 다양한 분석 업무를 수용할 수 있어야 한다. 그리고 AI/ML 및 생성형 AI을 위한 파운데이션 모델, RAG와 같은 기능들도 통합해 제공돼야 하며, 데이터가 있는 곳에서 사용자 분석 편의성을 제공하는 다양한 데이터 기반의 애플리케이션을 개발, 활용할 수 있는 기능도 필요하다.

다만, 보통의 경우 솔루션들은 특정한 목적을 가지고 개발된다. 개발 이후에 사용자 요청에 따라 지원되는 기능들이 하나, 둘 추가되며 확장된다. 솔루션의 원래 사상과 목적을 벗어나는 경우 유사한 기능을 지원할 수 있지만 다양한 분석 목적을 완벽하게 수용하기는 어렵다. 물론 스노우플레이크는 강력한 데이터 파운데이션을 구축하도록 지원하고 있다.

Q. NoSQL, 인메모리DB, 고성능 스토리지 등과의 상호보완 관계도 있을 수 있겠다.

일반적인 데이터 웨어하우스 및 데이터 레이크의 경우 분석하고자 하는 데이터를 컬럼형 기반으로 변환해 저장한다. 대용량 데이터를 효율적으로 처리하기 위해 데이터 웨어하우스에 저장된 데이터는 파티션 기반으로 범주화된 범위로 그룹핑, 저장돼 대량 데이터를 조회해 처리하는 목적에 최적화돼 있다. 하지만 이러한 데이터 저장 구조는 업무용 DB와 같은 트랜잭션 업무 목적이나 특정 조건 하에서 단 건을 조회하는데 제약사항이 있기에 분석과 실시간 조회 업무가 혼용된 경우 이를 지원하기 위해 NoSQL, 메모리 기반의 DB와 같은 솔루션을 함께 혼용하여 사용할 필요가 있다. 하지만 이렇게 구현된 업무 시스템의 경우 아키텍처의 복잡도가 높아지고 관리해야 하는 포인트가 증가하기 때문에 여러 문제점이 발생할 수도 있다.

저작권자 © 아이티데일리 무단전재 및 재배포 금지