Data 파이프 라인 : ETL vs ELT

2019. 10. 27. 22:33Data Science

 

Data 파이프라인은 Data를 어느곳에서 다른곳으로 옮긴다는 표현이죠.

예를 들어 서버1에서 서비2로 옮긴다는 것이 될수도 있습니다.

 

ETL

ETL 파이프 라인은 Data 파이프 라인에서 가장 흔한 종류중 하나라고 생각하시면 되겠습니다.

ETL의 뜻은 Extract, Transform, Load 의 각각을 첫 알파벳을 따온 것이죠.

자 웹로그를 가지고 잇는 데이터 베이스를 상상해봅시다. 각각의 entry는 유저의 ip 주소, time stamp, 혹은 유저가 클릭한 링크를 담고 있습니다.

 만약 당신의 회사에서 링크 클릭정보를 도시별로 날짜별로 분석하고 싶어한다면, 당신은 유저 ip를 도시로 mapping

할수있는 다른 Dataset이 필요하겠죠.

ETL파이프라인과 함께라면 당신은 1일별로 1회 코드를 실행해서 전일의 로그 데이터와 IP와 도시간 mapping, 그리고 집계된 링크 클릭정보를 추출하고 결과를 새로운 데이터 베이스에 담아둘수 있을 겁니다. 그러면 데이터 분석가 혹은

데이터 과학자들이 해당 테이블로 접근할수 있고 분석하기 쉽겠죠.

 

클라우드 컴퓨팅 이전에 비지니스 데이터들은 보통 비용이 소모되는 대형 서버에 저장되어 있을 테고 쿼리를 이러한 대형서버로 날려보고 분석하는 것은 비용적이나 시간적으로 비쌀겁니다. 데이터 분석가들 입장에서는 하루에 몇번이고 쿼리를 날려야 되는 입장이니 말이죠.

 사실 그래서 ETL파이프 라인으로 사전에 집계정보등 분석에 용이하게 정리된 데이터가 더 중요한 이유겠지요.

 

ELT 

ELT (extract, load, transform) 파이프라인은 클라우드 컴퓨팅일 경우입니다. 상대적으로 데이터 저장 및 쿼리 실행 비용이 적기 때문에 많은 클라우드 서비스들은 ELT 파이프라인을 기반으로 합니다.

그렇다고 클라우드에서 ETL을 안하는 건 아니죠. ETL 을 통해서 Data들을 분석하기 용이한 상태로 사전에 만들어 놓는다면 누가 싫어하겠습니까. 

 

아무도 없겠죠. 싫어할사람.