Seung's Learning Record

[Data Engineering] ETL (Extract, Transform, Load)과 ELT (Extract, Load, Transform) 개념 정리 본문

DE

[Data Engineering] ETL (Extract, Transform, Load)과 ELT (Extract, Load, Transform) 개념 정리

70_0ewd 2024. 5. 21. 02:18
목차

     

     

    E, T, L 용어 정리

    ETL / ELT은 모두 다음 세 가지 단계를 포함한다.

    • E/Extract(추출) : 원본 데이터베이스 또는 데이터 소스에서 데이터를 가져오는 것을 말한다. ETL을 사용하면 데이터가 임시 스테이징 영역으로 들어가고, ELT를 사용하면 즉시 데이터가 Lake 스토리지 시스템으로 이동한다.
    • T/Transform(변환) : 추출된 데이터를 목적지 시스템의 요구에 맞게 변환하는 단계이다. 용도에 맞는 필터링, Resahping, 정재 등의 단계를 통해 필요한 형태로 변환한다.
    • L/Load(적재) : 데이터를 목적지 스토리지에 저장하는 프로세스를 의미한다.

    데이터는 분석 가능한 데이터로 통합하기 전에 Raw 데이터를 정리하고, 많은 정보를 담을 수 있도록 변환해야 한다. 요구사항에 맞는 데이터를 얻기 위해서는 위의 단계가 필수적이다.

     


    ETL Process

    ETL은 데이터를 원천 시스템에서 추출(Extract)하고, 변환(Transform)한 후, 목적지 시스템으로 적재(Load)하는 과정을 갖는다. 이 과정은 전통적인 데이터 웨어하우스 및 비즈니스 인텔리전스(BI) 시스템에서 널리 사용된다.
    OLAP 데이터 웨어하우스는 관계형 SQL 기반 데이터 구조를 지원한다. 그러므로 관계형 SQL 기반 데이터가 아닌 데이터는 OLAP 데이터 웨어하우스에 삽입되기 전 즉, Load 단계 이전에 무조건 변환되어야만 하기 때문에 ETL이 필수적이다.

    ETL Process는 다음과 같은 특징을 갖는다.

    • 워크플로우가 잘 정의되어 있어야 하며 연속적이고 지속적인 프로세스를 가진다. 
    • 데이터 엔지니어 및 개발자의 상세 계획, 감독 및 코딩이 필요하다.
    • 효율적이며 안정적인 데이터 분석이 가능하다. 
    • ETL은 데이터를 데이터 웨어하우스에 넣기 전에 변환하기 때문에, 보안 규정 위반 위험성을 줄여준다.
    • ETL을 진행하기 위해서 잘 개발된 도구와 플랫폼이 많이 있다.
    • 변환 작업이 추출 단계와 적재 단계 사이에 이루어져야 하므로, 처리 시간이 오래 걸릴 수 있다.
    • 데이터의 양이 많아질수록 변환 단계에서 병목 현상이 발생할 수 있다.

     


    ELT Process

    ELT는 데이터를 원천 시스템에서 추출(Extract)한 후, 변환(Transform) 없이 바로 목적지 시스템으로 적재(Load)하고, 적재된 후에 변환(Transform) 작업을 수행하는 과정을 갖는다. ELT는 주로 형식이나 데이터 종류에 관계없이 모든 유형을 Raw 데이터 형태로 적재할 수 있는 데이터 레이크에서 동작한다. 데이터 레이크는 OLAP 데이터 웨어하우스와 달리 정형, 비정형 데이터 모두를 수용할 수 있기 때문에 데이터를 로드하기 전에 데이터를 변환할 필요가 없다. 

    ELT Process는 다음과 같은 특징을 갖는다.

    • 고속 클라우드 서버 기반 프로세스여서 확장성이 높다.
    • 지속적으로 확장되는 모든 raw data를 수집 가능하다.
    • 특정 분석에 필요한 데이터만 변환하기 때문에 유연성이 높다.
    • ETL보다 신뢰성이 낮지만, 적재와 가용에 걸리는 시간이 짧다.
    • ELT는 클라우드 기반이어서 사용자가 수동 업데이트를 시작하지 않고 자동화된 솔루션을 활용하기 때문에 유지 보수 비용이 낮다.
    • 원천 데이터가 목적지 시스템으로 그대로 적재되므로 초기 적재 후 데이터 품질이 낮을 수 있다.
    • 목적지 시스템의 처리 능력에 따라 성능이 좌우된다.

     


    ETL vs ELT 정리

      ETL ELT
    데이터 처리 순서 추출 → 변환 → 적재 추출 → 적재 → 변환
    데이터 적재 시점 변환 후 데이터 적재 변환 없이 데이터 적재 후 변환
    변환 위치 중앙 처리 시스템 또는 ETL 서버에서 변환 목적지 시스템(데이터 웨어하우스)에서 변환
    처리 시간 변환 단계로 인해 상대적으로 오래 걸릴 수 있음 빠른 적재 후 목적지 시스템의 처리 능력에 따라 변환 시간 단축 가능
    데이터 품질 변환 후 적재하므로 변환된 데이터의 품질이 보장됨 적재 후 변환되므로 초기 데이터 품질이 낮을 수 있음
    사용 사례 전통적인 데이터 웨어하우스, BI 시스템 클라우드 데이터 웨어하우스, 빅데이터 플랫폼
    도구 및 기술 Talend, Informatica, Apache Spark, Apache Hive 등 Google BigQuery, Amazon Redshift, Snowflake, Apache Spark 등

    'DE' 카테고리의 다른 글

    [Data Engineering] 데이터 파이프라인(Data Pipeline) 개념 정리  (0) 2024.05.21