Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- enumerate #함수 # def
- datetime #zip
- requests
- pickle #datetime
- FastAPI
- 리눅스 # 기초
- airflow
- 파일저장
- 원하는 태그 찾기
- Google Cloud Storage
- 정규표현식
- etl
- with open
- cron
- 자연어처리 환경 컨테이너
- 모델서빙
- requesthead
- 빗썸api
- ssh operator
- aiflow
- 자동화
- JavaScripts
- 가상환경 초기세팅
- beautifulsoup
- HeidiSQL
- mariadb설치 #mysql설치
- text.children
- K-ICT
- Docker
- celery
Archives
- Today
- Total
오음
ETL과 ELT의 차이점 본문
E,T,L 이란?
- E/Extract(추출) : 원본 데이터베이스 또는 데이터 소스에서 데이터를 가져오는 것을 말한다. ETL을 사용하면 데이터가 임시 스테이징 영역으로 들어가고, ELT를 사용하면 즉시 데이터가 Lake 스토리지 시스템으로 이동한다.
- T/Transform(변환) : 데이터의 구조를 변경하는 프로세스를 의미한다. 용도에 맞는 필터링, Resahping, 정재 등의 단계를 통해 필요한 형태로 변환한다.
- L/Load(적재) : 데이터를 스토리지에 저장하는 프로세스를 의미한다.
데이터를 담고 있는 소스는 호환되는 형식으로 저장되어있지 않기 때문에 데이터를 분석 가능한 데이터로 통합하기 전에 Raw 데이터를 정리하고, 많은 정보를 담을 수 있도록 변환해야 한다.
이 때 데이터를 옮겨야하는 상황이 항상 발생할 텐데 어떤 방법으로 사용해야 할까?
ETL
- Extract: 다양한 소스에서 원시 데이터를 추출
- Transform: 추출된 데이터를 비즈니스 규칙에 따라 변환하거나 정리, 이 과정에서는 불필요한 데이터 제거, 데이터 클린징, 중복 제거 수행
- Load: 변환된 결과를 최종적으로 데이터 웨어하우스에 로드
ELT
- Extract: 다양한 소스에서 원시 데이터를 추출
- Load: 추출된 원시 데이터를 그대로(변환 없이) 타겟 시스템에 로드합니다.
- Transform: 타겟 시스템 내에서 필요할 때 비즈니스 규칙에 따라 변환 작업을 수행합니다.
ETL vs ELT
- 처리 순서와 위치: ETL은 변환 작업을 로딩 전에 완료하지만, ELT는 로딩 후에 변환 작업을 수행한다는 점에서 차이가 있다.
- 리소스 사용: ETL은 보통 별도의 전용 서버에서 처리가 이루어지므로 해당 서버의 리소스가 한계가 될 수 있다. 반면 ELT는 대상 시스템의 자원을 활용하여 처리하기 때문에 대량의 데이터 처리가 가능하다는 장점이 있다.
- 유연성: ETL은 사전 정의된 스키마와 비즈니스 규칙에 따라 일관된 형태로 변경되므로 스키마 변경 시 추가적인 작업이 필요할 수 있다. 반면 ELT는 스키마 온 리드(Schema-on-read) 방식을 채택하여 필요할 때마다 적절한 형태로 읽고 해석하는 유연성을 가진다.
- 보안 및 규정 준수: ETL은 데이터 변환 과정에서 민감한 정보를 제거하거나 익명화하는 등의 처리를 할 수 있어 보안 및 규정 준수에 유리할 수 있지만, 반면 ELT는 원시 데이터를 그대로 로드하기 때문에 이러한 처리가 후단계에서 이루어져야 한다.
- 시스템 성능: ETL은 전처리 작업이 완료된 정제된 데이터만을 로드하기 때문에 타겟 시스템의 성능 부하가 적을 수 있지만, ELT는 원시 데이터를 모두 로드하고 변환 작업이 타겟 시스템에서 이루어지므로 시스템 리소스 사용량이 더 클 수 있다.
- ETL은 OLAP 데이터 웨어하우스의 특성으로 구조화/변환하기 때문에 안정적인 데이터 분석이 가능하고 ELT는 빠른 분석이 필요할 때 이상적이다.
ETL의 장점
- 효율적이며 안정적인 데이터 분석이 가능하다.
- 보안 규정 위반 위험성을 줄여 준다.
- 여러 플랫폼이 많다.
ELT의 장점
- 모든 데이터(비정형 데이터)에 대한 저장 용이성 및 유연성이 높다.
- 필요한 데이터만 변환한다.
- 시간이 빠르다.
그렇다면 언제 ELT를 사용할까?
- 방대한 양의 데이터를 보유했을 경우 - ELT는 정형 데이터와 비정형 데이터 모두에서 잘 작동한다. 시스템이 클라우드 기반인 한 ELT 프로세스를 통해 방대한 양의 데이터를 보다 신속하게 처리할 수 있다.
- 가능한 한 빨리 모든 데이터를 한 곳에 보관해야 할 경우 - 프로세스가 종료될 때 ELT는 전송 속도를 다른 모든 데이터보다 우선시한다.
- 데이터를 처리할 수 있는 리소스를 가지지 못했을 경우 - ETL를 사용하면 데이터 웨어하우스에 도착하기 전 파이프라인에서 데이터 변환이 일어나야 한다. 이때 요구되는 리소스는 상황에 따라 매우 클 수가 있는데, ELT 방식을 이용하면 추후 필요 데이터만 변환함으로써 경제적 유연성을 갖출 수 있다.
https://pearlluck.tistory.com/650
ETL ELT 차이 | 요즘엔 ETL에서 ELT로 흐름이 바뀌고 있다?@!
ETL이란? Extract, Transform, Load 의 앞글자를 딴 용어인데, 여러가지 데이터소스에서 추출(Extract)하고, 데이터를 원하는 형태로 변형(Transform)하고, DW로 적재(Load)하는 과정. 즉, 데이터소스에서 가져온
pearlluck.tistory.com
https://dining-developer.tistory.com/50
ETL, ELT의 4가지 주요 차이점
내가 생각하는 머신러닝, 데이터 엔지니어링/사이언스 분야에서의 가장 중요한 단계는 ETL이다. ETL은 정답이 없고 가장 많은 시간이 소요되기도 하고, 가장 많은 실수가 일어나기도 하며, 개발자
dining-developer.tistory.com