SeaForest

데이터 파이프라인이란, ETL과 ELT 본문

DB

데이터 파이프라인이란, ETL과 ELT

seaforest 2023. 3. 12. 21:36

BI 업무를 하면서, 잘 정제된 데이터는 중요하다는 점을 알게 되었고, 자연스럽게 ETL 쪽에도 관심을 갖게 되었다. 데이터가 어떻게 구성되었느냐에 따라 작업 효율이 달라지기 때문에 분석에 최적화된 형태로 잘 정리된 데이터가 필요하고, 잘 구성된 데이터는 데이터 파이프라인 안에서 만들어지기 때문에 데이터를 잘 전달하기 위해서는 효율적인 파이프라인 구축이 필요하다. 

 

1. 데이터 파이프라인이란?

출처 :  https://www.xenonstack.com/insights/data-pipeline-benefits-importance

  • 데이터를 한 장소에서 다른 장소로 옮기는 것
  • 데이터를 이동시킬 수 있는 통로를 만드는 것
  • 데이터를 생성해서 저장하기까지의 일련의 과정
  • 예시
    • API Database
    • Database Database
    • Datbase BI Tool

 

2. 왜 데이터 파이프라인을 구축할까

  • 데이터 파이프라인을 구성함으로써 데이터 기반의 의사결정을 지원할 수 있을 뿐만 아니라, 데이터 기반의 애플리케이션을 개발하는 데에도 큰 도움이 됨
  • 이러한 데이터 파이프라인은 "빅데이터 아키텍쳐" 설계에 기반하여 구축됨
  • 필요한 데이터가 한 곳에 저장되는 경우는 흔하지 않고, 보통 여러 위치에 있기 때문에 데이터를 수집하기 위해 여러 소스에 접근해야함. 이러한 문제를 해결하려면 통찰력을 얻고 의사 결정을 내리는데 사용할 수 있는 데이터를 사용할 수 있는 Data Pipeline이 필요함
  • Data Pipeline은 다양한 소스에서 데이터를 추출하고 변환할 수 있도록 도와줌

 

3. 일반적인 데이터 파이프라인 패턴, ETL과 ELT

출처 : https://blog.naver.com/hongin90/222787207143

  • ETL / ELT
    • 추출(Extract)  : 로드 및 변환을 준비하기 위해 다양한 소스에서 데이터를 수집 ,원본 데이터 소스에서 데이터를 뽑아냄
    • 변환(Transformation) : 분석가, 시각화 도구 또는 파이프라인이 제공하는 모든 사용 사례에 유용하게 쓸 수 있게 각 소스 시스템의 원본 데이터를 결합하고 형식을 지정하는 단계 ,데이터를 예쁘게 변환
    • 로드(Load) : 원본 데이터(ETL의 경우) 또는 완전히 변환된 데이터(ELT의 경우)를 최종 대상으로 가져옴, 데이터를 데이터 저장소에 저장
  • ETL에서 ELT로
    • ETL은 수십년동안 데이터 파이프라인 패턴의 표준이었으나, 클라우드 기반의 서버 등장으로 최근에는 ELT 방법도 많이 쓰고 있음
    • 대량의 데이터가 발생함으로 인해 'Data Lake' 개념이 생김, 즉 모든 데이터를 모두 저장한 후 용도에 따라 가져다 쓰는 논리가 생김.
    • 과거에는 로드할 데이터 저장소에서 비정형/반정형 데이터를 처리할 수 없었기 때문에 ETL 방법만 있었음. 그래서 모든 데이터는 데이터 저장소에 로드되기 전 해당 데이터 저장소에 적합한 형태로 가공 및 처리된 뒤에야 로드 되어야했음고,  Data Warehouse라고 불리는 저장소가 이 경우에 해당됨
    • 이후 나온 것이 ELT , 데이터 저장소에서 비정형/반정형 데이터 또한 다룰 수 있게 되면서 더이상 데이터를 가공 및 처리한 후 저장해야할 필요가 없어졌음. Data Lake가 이 경우에 해당함
    • ELT 패턴을 사용하면 데이터 엔지니어와 데이터 분석가간의 책임을 명확하게 분할할 수 있음. (추출과 로드 : 데이터 엔지니어 / 변환 : 데이터 분석가)
  • EtLT
    • ELT가 지배적인 패턴으로 등장했을 때, 추출 후 로드하기 전에 간단히 변환하는 것이 여전이 유익하다는 것이 분명해짐. 이것을 소문자 t 변환 또는 EtLT라고 함
    • ETL과 ELT의 장점을 결합한 형태

 

4. 데이터 파이프라인 구축시 고려 사항

  • Scalability : 데이터가 기하급수적으로 늘어났을 때도 작동하는가?
  • Stability : 에러, 데이터 플로우 등 다양한 모니터링 관리
  • Security : 데이터 이동간 보안에 대한 리스크는 무엇인가?

 

 

* 레퍼런스

- 데이터 파이프라인 핵심 가이드

https://product.kyobobook.co.kr/detail/S000001766501

 

데이터 파이프라인 핵심 가이드 | 제임스 댄스모어 - 교보문고

데이터 파이프라인 핵심 가이드 | 데이터 파이프라인의 모든 단계를 기초부터 탄탄하게 설명합니다!데이터 파이프라인은 데이터 분석의 성공을 위한 기반입니다. 수많은 다양한 소스에서 데이

product.kyobobook.co.kr

https://data-scientist-brian-kim.tistory.com/93

 

[Study] 2. 데이터 파이프라인

이번 포스팅에서는 데이터 파이프라인에 대해 알아보도록 하겠다. What is Data Pipeline? 데이터 파이프라인이란 무엇일까? 간단히 말하면 다양한 소스에서 데이터를 변환하고 옮기는 일련의 과정을

data-scientist-brian-kim.tistory.com

https://velog.io/@yeonjooyou/DE-ETL%EA%B3%BC-ELT%EC%9D%98-%EA%B0%9C%EB%85%90-ETLT

 

[DE] ETL과 ELT의 개념 (+ETLT)

1. ETL 1-1. 정의 ETL 프로세스란 여러 소스에서 데이터를 수집하고, 이를 표준화하여, 분석을 위한 데이터 웨어하우스 또는 저장을 위한 데이터베이스 또는 기타 유형의 데이터 소스에 적재하는 데

velog.io

 

https://maily.so/grabnews/posts/ecaebe

 

'IT 회사에서 데이터가 흐른다는 것' #1 - 데이터 파이프라인 개요

그랩의 IT 뉴스레터

maily.so