바로 이동

ETL이란?

ETL은 추출(Extract), 변환(Transform), 로드(Load)를 나타내며 조직에서 여러 시스템의 데이터를 단일 데이터베이스, 데이터 저장소, 데이터 웨어하우스 또는 데이터 레이크에 결합하기 위해 일반적으로 허용되는 방법입니다. ETL을 사용하면 기존 데이터를 저장하거나 집계(현재 더 일반적인 방식)하여 분석하고 이를 비즈니스 결정에 활용할 수 있습니다.  

조직에서는 수십 년간 ETL을 사용해왔습니다. 하지만 새로운 것은 현재 데이터 소스와 대상 데이터베이스가 모두 클라우드로 전환되고 있다는 것입니다.

또한, 지금은 스트리밍 ETL 파이프라인도 등장하고 있습니다. 이 파이프라인은 일괄 파이프라인과 통합되었습니다. 즉, 연속적인 데이터 스트림을 실시간으로 처리하는 파이프라인과 집계 일괄 처리로 데이터를 처리하는 파이프라인이 통합된 것입니다. 일부 기업에서는 일괄 백필 또는 재처리 파이프라인이 혼합된 연속 스트리밍 프로세스를 실행합니다.

Cloud Data Fusion, Dataflow, Dataproc을 비롯하여 ETL을 지원하는 Google Cloud 서비스 포트폴리오에 대해 알아보세요.

ETL의 정의

ETL이란 기업이 전 세계 모든 곳의 수많은 팀에서 관리하는 구조화된 데이터와 구조화되지 않은 데이터를 비롯한 전체 데이터를 가져와 비즈니스 목적에 실질적으로 유용한 상태로 변환하는 엔드 투 엔드 프로세스를 의미합니다.

오늘날의 최신 ETL 솔루션은 점점 늘어나고 빨라지는 데이터의 양과 속도에 대처할 수 있어야 합니다. 아울러, 트랜잭션을 수집, 보강, 관리하고 온프레미스나 클라우드를 포함한 모든 소스에서 구조화된 데이터와 구조화되지 않은 데이터 모두를 실시간으로 지원하는 기능은 오늘날의 엔터프라이즈 ETL 솔루션이 충족해야 하는 기본적인 요건입니다.

클라우드 기반 ETL의 작동 방식

추출

추출은 온라인, 온프레미스, 기존 소스, SaaS 등 하나 이상의 소스에서 데이터를 가져오는 프로세스입니다. 가져오기, 즉 추출이 완료된 후에는 데이터가 스테이징 영역에 로드됩니다.

변환

변환에는 데이터를 가져와서 정리하고 대상 데이터베이스, 데이터 저장소, 데이터 웨어하우스 또는 데이터 레이크에 저장할 수 있도록 공통된 형식으로 만드는 작업이 포함됩니다. 정리에는 일반적으로 중복되거나 불완전하거나 명백히 잘못된 레코드를 제거하는 작업이 포함됩니다.

로드

로드는 형식이 지정된 데이터를 대상 데이터베이스, 데이터 저장소, 데이터 웨어하우스 또는 데이터 레이크에 삽입하는 프로세스입니다.

ETL 사용 사례

ETL은 관련된 모든 데이터를 한곳에 모아 활용 가능한 정보로 만들고 이를 분석하여 경영진, 관리자, 기타 이해관계자가 해당 정보에 입각한 결정을 내릴 수 있도록 지원하는 중요한 수단입니다. ETL은 일반적으로 다음 작업을 수행하는 데 사용됩니다.

데이터 웨어하우징

데이터 웨어하우스는 비즈니스 목적을 위해 종합적으로 분석할 수 있도록 다양한 소스의 데이터를 결합한 데이터베이스입니다. ETL은 종종 데이터를 데이터 웨어하우스로 이전하는 데 사용됩니다.

머신러닝 및 인공지능

머신러닝(ML)은 분석 모델을 명시적으로 프로그래밍하지 않고 데이터를 이해하는 방법입니다. 즉, 명시적 프로그래밍 대신 시스템이 인공지능 기법을 사용하여 데이터를 학습합니다. ETL을 사용하면 ML 목적으로 데이터를 단일 위치로 이전할 수 있습니다.

마케팅 데이터 통합

마케팅 데이터 통합에는 고객 데이터, 소셜 네트워킹 데이터, 웹로그 분석 데이터와 같은 마케팅 데이터를 분석하고 향후 계획을 수립할 수 있도록 모든 데이터를 한곳으로 이전하는 작업이 포함됩니다. ETL은 마케팅 데이터를 수집하고 준비하는 데 사용됩니다.

IoT 데이터 통합

IoT는 하드웨어에 내장된 센서를 통해 데이터를 수집하고 전송할 수 있는 연결된 기기들의 모음입니다. IoT 기기에는 공장 장비, 네트워크 서버, 스마트폰, 그 밖의 다양한 머신(웨어러블 기기 및 이식 기기 포함)이 포함될 수 있습니다. ETL은 여러 IoT 소스의 데이터를 데이터 분석이 가능한 단일 위치로 이전해줍니다.

데이터베이스 복제

데이터베이스 복제는 Oracle, MySQL용 Cloud SQL, Microsoft SQL Server, PostgreSQL용 Cloud SQL, MongoDB 등의 소스 데이터베이스에서 데이터를 가져와서 클라우드 데이터 웨어하우스에 복사하는 작업입니다. 이 작업은 일회성 작업으로 수행할 수도 있고 데이터 업데이트 시 지속적인 프로세스로 수행할 수도 있으며, 데이터를 복제하는 과정에서 ETL이 사용될 수 있습니다.

클라우드 마이그레이션

기업들은 비용 절감, 애플리케이션 확장성 향상, 데이터 보호 차원에서 온프레미스의 데이터와 애플리케이션을 클라우드로 이전하고 있으며, ETL은 일반적으로 이러한 마이그레이션을 실행하는 데 사용됩니다.