Offcanvas

BI / How To / 데이터센터 / 머신러닝|딥러닝 / 빅 데이터 / 스토리지

빅데이터 분석 위한 대규모 확장형 스토리지··· ‘데이터 레이크’ A to Z

2022.05.03 Martin Heller  |  InfoWorld
데이터 레이크는 데이터 웨어하우스와는 무엇이 다를까? 정의에서부터 활용처, 활용 양태에 대해 살펴본다. 
 
Image Credit : Getty Images Bank

2011년, 당시 비즈니스 인텔리전스 기업 펜타호(Pentaho)의 CTO였던 제임스 딕슨이 ‘데이터 레이크(Data Lake)’라는 용어를 만들었다. 그는 당시 인기 있었던 ‘데이터 마트(Data Mart)’에서 흔히 나타났던 정보 사일로와 대비되는 개념으로 데이터 레이크를 설명했다. 
 

데이터 마트가 손쉬운 소비를 위해 세척되고 패키지화 되며, 구조화된 생수 더미라면 데이터 레이크는 더욱 자연스러운 상태의 물이다. 데이터 레이크의 콘텐츠는 소스로부터 흘러나와 레이크를 채우며, 다양한 레이크 사용자가 검토하거나 몰두하거나 샘플을 채취할 수 있다.


그 이후로 데이터 레이크는 꾸준히 진화했으며, 이제는 빅데이터 저장과 애널리틱스 측면에서 데이트 웨어하우스(Data Warehouse)와 경쟁하고 있다. 오늘날 다양한 도구와 제품이 데이터 레이크에서의 더 빠른 SQL 쿼리를 지원한다. 또 3대 주요 클라우드 벤더는 데이터 레이크 스토리지 및 분석을 제공한다. 한편에서는 거버넌스, 보안, 분석과 알맞은 스토리지를 결합하는 새로운 ‘데이터 레이크하우스(Data Lakehouse)’ 개념도 등장했다. 이 글은 데이터 레이크에 관한 개괄적인 이해를 돕기 위해 작성됐다. 정의에서부터 사용 방법, 데이터 레이크가 데이터 스웜(Data Swamp)이 되지 않도록 하는 방법 등을 살펴본다.

데이터 레이크 개념
‘데이터 레이크’는 기본적으로 분석 준비가 완료될 때까지 데이터를 보관하는 단일 저장소를 의미한다. 모든 데이터 담는 경우도 있지만, 데이터 웨어하우스에 맞지 않는 데이터만을 보관하기도 한다. 일반적으로, 데이터 레이크는 데이터를 네이티브 파일 형식으로 저장하지만 효율적인 분석을 위해 데이터를 다른 형식으로 전환하는 경우도 있다.

대개 데이터 레이크는 이미지와 비디오 등의 바이너리 데이터, PDF 문서 등의 비구조화 데이터, CSV와 JSON 파일 등의 반구조화 데이터뿐만 아니라 일반적으로 관계형 데이터베이스로부터 얻는 구조화 데이터를 모두 담아낸다. 구조화 데이터가 분석에 더 유용하지만 반구조화 데이터는 구조화 형태로 손쉽게 변환할 수 있다. 비구조화 데이터는 지능형 자동화를 사용하여 구조화 데이터로 변환할 수 있는 경우가 많다.

데이터 레이크 vs 데이터 웨어하우스
데이터 레이크 또는 데이터 웨어하우스가 필요한지가 문제가 아니다. 다른 목적을 위해 둘 다 필요할 가능성이 있다. 또한 이 둘을 결합할 수 있기도 하다. 우선, 데이터 레이크와 데이터 웨어하우스의 주된 차이점을 살펴본다.

• 데이터 소스 : 데이터 레이크를 위한 일반적인 데이터 소스에는 로그 파일, 클릭 스트림에서 얻은 데이터, 소셜 미디어 게시물, 인터넷 연결 장치로부터 얻은 데이터가 포함된다. 데이터 웨어하우스는 일반적으로 트랜잭션 데이터베이스, 비즈니스 부문 애플리케이션, 분석을 위한 운영 데이터베이스로부터 추출된 데이터를 저장한다.

• 스키마 전략 : 데이터 레이크를 위한 데이터베이스 스키마는 일반적으로 분석 시에 적용되며, 이것을 ‘SoR(Schema-on-Read)’이라 한다. 기업 데이터 웨어하우스의 데이터베이스 스키마는 일반적으로 데이터 스토어 생성 전에 고안되며 데이터 입력 과정에서 적용된다. 이것을 ‘SoW(Schema-on-Write)’라고 부른다.

• 스토리지 인프라 : 데이터 웨어하우스는 쿼리 결과를 신속하게 제공하기 위해 값비싼 RAM와 SSD 디스크 용량이 상당한 경우가 많다. 반면 데이터 레이크는 저렴한 회전식 디스크를 사용하는 경우가 많다. 데이터 웨어하우스와 데이터 레이크는 모두 MPP(Massively Parallel Processing)를 사용하여 SQL 쿼리 속도를 높인다.

• 미가공 vs 큐레이트(Curated) 데이터 : 데이터 웨어하우스의 데이터는 데이터 웨어하우스를 조직의 ‘단일 신뢰원’으로 취급할 수 있는 수준까지 큐레이팅 해야 한다. 반면 데이터 레이크의 데이터는 큐레이팅이 가능하거나 불가능할 수 있다. 데이터 레이크는 일반적으로 이후 분석을 위해 필터링 및 전환이 가능한 미가공 데이터부터 시작한다.

• 사용자 : 데이터 웨어하우스 사용자는 일반적으로 비즈니스 분석가이다. 데이터 레이크 사용자는 최소한 처음에는 데이터 사이언티스트 또는 데이터 엔지니어인 경우가 많다. 비즈니스 분석가는 데이터가 큐레이팅 된 후 액세스하는 것이 일반적이다.

• 분석 유형 : 일반적인 데이터 웨어하우스 분석에는 비즈니스 인텔리전스, 배치 보고, 시각화가 포함되어 있다. 데이터 레이크의 경우 일반적인 분석에는 머신러닝, 예측 분석, 데이터 디스커버리(Data Discovery), 데이터 프로파일링(Data Profiling)이 포함된다.

그렇다면 데이터 마트는?
기업의 모든 관계형 데이터를 분석에 적합한 형태로 결합하는 데이터 웨어하우스와는 달리 ‘데이터 마트’는 단일 부서 또는 사업부로부터 얻은 데이터로 제한되는 분석 데이터베이스이다. 데이터 마트는 부서와 관련된 데이터만 포함시켜 효율적인 분석을 제공한다. 그런 의미에서 선천적으로 사일로화 되어 있다고 볼 수 있다. 

일각에서는 사업부에는 배제된 데이터가 필요 없기 때문에 사일로화는 상관없다고 주장한다. 그러나 실제로는 중요한 경우가 많다. 여러 사업부로부터 얻은 결합된 데이터에 기초한 보고서가 필요한 상관은 항상 있다. 그래서 오늘날 데이터 레이크와 데이터 웨어하우스가 많고 데이터 마트가 적은 것이다.

데이터 레이크에서 더 빠른 SQL 쿼리
데이터 레이크에 미가공 데이터를 저장할 때, 데이터를 데이터 사이언티스트 또는 데이터 엔지니어가 처리할 때까지 비즈니스 분석가에게 무용지물일 수도 있다. 필터링 및 데이터 전환 외에 데이터 레이크는 데이터 카탈로그, 데이터 보안, 스키마 정의가 필요하다. 이런 특징이 없는 데이터 레이크에 대한 표현이 바로 ‘데이터 스웜’이다.

다행히도 데이터 레이크에 있는 데이터를 필터링 및 정리하는 데 도움이 되는 많은 도구가 있다. 한 예로, 하이브(Hive) 메타스토어를 ORC 형식으로 생성하여 스키마의 필요성을 해결할 수 있다. 구성이 되면 메타스토어는 프레스토(Presto) 같은 대규모 병렬 SQL 엔진을 통해 고속 SQL 쿼리를 지원한다(참고로 ORC(Optimized Row Columnar) 형식은 하이브에 최적화된 압축 칼럼 스토어이며, 프레스토와 잘 호환된다).

아파치 스파크(Apache Spark)는 또 다른 대규모 병렬 SQL 엔진이다. ORC 형식과 호환될 수 있지만 또 다른 압축 칼럼 스토어인 파케이(Parquet)와 더욱 잘 호환된다. 스파크는 파케이 파일에서 수직 및 수평 파티셔닝을 수행하여 필요한 데이터만 읽어야 하고 관련성이 없는 데이터를 건너뛸 수 있는 쿼리 플랜을 생성할 수 있다.

추천 테크라이브러리

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.