ETL이란 무엇인가?

추출, 변환, 로드(ETL)는 데이터 기반 조직이 여러 소스에서 데이터를 수집한 후 검색, 보고, 분석, 의사 결정을 지원하기 위해 가져오는 데 사용하는 프로세스입니다.

데이터 소스는 유형, 형식, 볼륨, 안정성 측면에서 매우 다양할 수 있으므로 데이터를 함께 가져올 때 유용하도록 처리해야 합니다. 대상 데이터 저장소는 목표와 기술 구현에 따라 데이터베이스, 데이터 웨어하우스 또는 데이터 레이크일 수 있습니다.

ETL의 세 가지 개별 단계

추출
추출하는 동안 ETL은 데이터를 식별하고 해당 소스에서 복사하므로 데이터를 대상 데이터 저장소로 전송할 수 있습니다. 데이터는 문서, 이메일, 비즈니스 애플리케이션, 데이터베이스, 장비, 센서, 타사 등 구조적 및 비구조적 소스에서 가져올 수 있습니다.

변환
추출된 데이터는 원래 형식의 원시 데이터이므로 최종 데이터 저장소에 맞게 준비하려면 매핑하고 변환해야 합니다. 변환 프로세스에서 ETL은 결과 데이터를 신뢰할 수 있고 질의할 수 있는 방식으로 데이터를 검증, 인증, 중복 제거 및/또는 집계합니다.

로드
ETL은 변환된 데이터를 대상 데이터 저장소로 이동합니다. 이 단계는 모든 소스 데이터의 초기 로드를 수반할 수 있거나 소스 데이터의 증분 변경 로드일 수 있습니다. 데이터를 실시간으로 또는 예약된 배치로 로드할 수 있습니다.

ELT 또는 ETL: 어떤 차이점이 있습니까?

변환 단계는 ETL 프로세스에서 훨씬 가장 복잡합니다. 따라서 ETL과 ELT는 두 가지 요점에서 서로 다릅니다.

  • 변환 발생 시기
  • 변환 장소

기존 데이터 웨어하우스에서 데이터는 먼저 '소스 시스템(ERP 시스템, CRM 시스템 등)'에서 추출됩니다. OLAP 도구와 SQL 질의는 집계된 결과를 얻기 위해 데이터 집합 차원을 표준화하는 것에 의존합니다. 즉, 데이터가 일련의 변환을 거쳐야 합니다.

일반적으로 이러한 변환은 일반적으로 관계형 데이터 웨어하우스인 대상 시스템으로 데이터가 로드되기 전에 수행되었습니다.

그러나 데이터 웨어하우징을 뒷받침하는 기본 데이터 저장 및 처리 기술이 발전함에 따라 대상 시스템 내에서 변환을 수행할 수 있게 되었습니다. ETL 및 ELT 프로세스는 모두 준비 영역을 포함합니다. ETL에서 이러한 영역은 독점 또는 사용자 지정 여부에 관계없이 도구에 있습니다. 소스 시스템(예: CRM 시스템)과 대상 시스템(데이터 웨어하우스) 사이에 위치합니다.

반면 ELT를 사용하면 준비 영역이 데이터 웨어하우스에 있으며, ETL 도구가 아니라 DBMS를 지원하는 데이터베이스 엔진이 변환을 수행합니다. 따라서 ELT에서 즉각적으로 얻을 수 있는 결과 중 하나는 ETL 도구가 데이터 변환 프로세스를 지원하기 위해 제공하는 데이터 준비 및 정리 기능을 잃게 된다는 것입니다.

ETL 및 엔터프라이즈 데이터 웨어하우스

기본적으로 ETL 도구는 주로 비즈니스 인텔리전스(BI) 애플리케이션을 지원하는 엔터프라이즈 데이터 웨어하우스에 데이터를 제공하는 데 사용되었습니다. 이러한 데이터 웨어하우스는 모든 활동에 걸쳐서 기업에서 발생하는 모든 일에 대한 신뢰할 수 있는 단일 정보 소스를 나타내도록 설계되었습니다. 이러한 웨어하우스의 데이터는 데이터 검증을 제어하는 엄격한 스키마, 메타데이터, 규칙을 통해 신중하게 구조화됩니다.

엔터프라이즈 데이터 웨어하우스용 ETL 도구는 대용량 고성능 일괄 처리 로드, 이벤트 구동, 세류 공급 통합 프로세스, 프로그래밍 가능한 변환, 조정과 같은 데이터 통합 요구 사항을 충족해야만 가장 까다로운 변환 및 워크플로를 처리하고 가장 다양한 데이터 소스에 대한 커넥터를 가질 수 있습니다.

데이터를 로드한 후 소스와 대상 데이터 저장소 간에 동기화 상태를 유지하기 위한 여러 전략이 있습니다. 전체 데이터 집합을 주기적으로 다시 로드하거나, 최신 데이터의 정기적 업데이트를 예약하거나, 소스 및 대상 데이터 웨어하우스 사이의 전체 동기화를 유지하기 위해 커밋할 수 있습니다. 이러한 실시간 통합을 변경 데이터 캡처(CDC)라고 합니다. 이 고급 프로세스의 경우 ETL 도구는 소스 데이터베이스의 트랜잭션 의미를 이해하고 이러한 트랜잭션을 대상 데이터 웨어하우스로 올바르게 전송해야 합니다.

ETL 및 데이터 마트

데이터 마트는 엔터프라이즈 데이터 웨어하우스보다 규모가 더 작고 집중적인 대상 데이터 저장소입니다. 예를 들어 단일 부서 또는 단일 제품군에 대한 정보에 초점을 맞출 수 있습니다. 따라서 데이터 마트를 위한 ETL 도구 사용자는 기간 업무(LOB) 전문가, 데이터 분석가 및/또는 데이터 과학자인 경우가 많습니다.

데이터 마트를 위한 ETL 도구는 프로그래머와 IT 직원이 아닌 비즈니스 직원 및 데이터 관리자가 사용할 수 있어야 합니다. 따라서 이러한 도구에는 ETL 파이프라인을 쉽게 설정할 수 있는 시각적 워크플로가 있어야 합니다.

코드가 없는 데이터 흐름 설계에 대해 알아보기

ETL 또는 ELT 및 데이터 레이크

데이터 레이크는 데이터 웨어하우스 및 데이터 마트와는 다른 패턴을 따릅니다. 데이터 레이크는 일반적으로 데이터를 개체 스토리지 또는 HDFS(Hadoop Distributed File Systems)에 저장하므로 스키마가 없어도 덜 구조화된 데이터를 저장할 수 있으며 비구조적 데이터를 질의할 수 있는 여러 도구를 지원합니다.

데이터 레이크가 허용하는 한 가지 추가 패턴은 추출, 로드, 변환(ELT)으로, 여기서는 먼저 데이터가 '있는 그대로' 저장되고 데이터가 데이터 레이크에서 캡처된 후 변환, 분석 및 처리됩니다. 이 패턴은 여러 이점을 제공합니다.

  • 모든 데이터가 기록되며 집계 또는 필터링으로 인해 신호가 손실되지 않습니다.
  • 데이터는 매우 빠르게 수집될 수 있으므로 사물 인터넷(IoT) 스트리밍, 로그 분석, 웹 사이트 척도 등에 유용합니다.
  • 이를 통해 캡처 당시 예상하지 못한 추세를 발견할 수 있습니다.
  • 따라서 비구조적 대규모 데이터 집합의 패턴 감지에 탁월한 새로운 인공 지능(AI) 기술을 배포할 수 있습니다.

데이터 레이크를 위한 ETL 도구는 데이터 과학자와 데이터 엔지니어에게 효과적이기 때문에 시각적 데이터 통합 도구를 포함하고 있습니다. 데이터 레이크 아키텍처에 자주 사용되는 추가 도구는 다음과 같습니다.

  • 클라우드 스트리밍 메시징, 애플리케이션 로그, 운영 원격 분석, 웹 클릭스트림 데이터 추적, 이벤트 처리, 보안 분석을 위해 대규모 실시간 데이터 스트림을 데이터 레이크로 수집할 수 있는 서비스입니다. Kafka와의 호환성 덕분에 이러한 서비스는 거의 무한한 데이터 소스에서 데이터를 검색할 수 있습니다.
  • 매우 큰 데이터 집합에서 데이터 처리 및 변환 작업을 빠르게 수행할 수 있는 Spark 기반 클라우드 서비스. Spark 서비스는 개체 스토리지 또는 HDFS에서 데이터 집합을 로드하고, 컴퓨팅 인스턴스의 확장 가능한 클러스터 간 메모리에서 이러한 데이터 집합을 처리 및 변환하고, 데이터 레이크 또는 데이터 마트 및/또는 데이터 웨어하우스에 출력을 다시 쓸 수 있습니다.

ETL 사용 사례

ETL 프로세스는 고품질 모델을 만들면서 데이터 과학 및 분석을 위해 데이터를 데이터 레이크에 빠르고 안정적으로 수집할 수 있기 때문에 많은 산업에 필수적입니다. ETL 솔루션은 트랜잭션 데이터를 대규모로 로드 및 변환하여 대규모 데이터 볼륨에서 체계적인 보기를 만들 수 있습니다. 이를 통해 기업은 업계 추세를 시각화하고 예측할 수 있습니다. 여러 산업에서 ETL을 활용하여 실행 가능한 인사이트, 빠른 의사 결정, 효율성 향상을 지원합니다.

금융 서비스
금융 서비스 기관은 대량의 구조적 및 비구조적 데이터를 수집하여 소비자 행동에 대한 인사이트를 확보합니다. 이러한 인사이트는 위험을 분석하고 은행의 금융 서비스를 최적화하며 온라인 플랫폼을 개선하고 ATM에 현금을 제공할 수 있습니다.

석유 및 가스
석유 및 가스 산업은 ETL 솔루션을 사용하여 특정 지역 지역의 사용량, 스토리지 및 추세에 대한 예측을 생성합니다. ETL는 추출 사이트의 모든 센서에서 정보를 최대한 많이 수집하고 해당 정보를 읽기 쉽게 처리합니다.

자동차
ETL 솔루션을 사용하면 판매 대리점과 제조업체가 판매 패턴을 파악하고, 마케팅 캠페인을 조정하고, 재고를 보충하고, 잠재 고객에 대한 후속 조치를 취할 수 있습니다.

통신
오늘날 생성되는 전례 없는 수준의 볼륨과 다양한 데이터를 사용하는 통신 제공업체는 ETL 솔루션을 사용하여 해당 데이터를 보다 효과적으로 관리하고 이해할 수 있습니다. 기업에서 이 데이터를 처리하고 분석한 후에는 해당 데이터를 사용하여 광고, 소셜 미디어, SEO, 고객 만족도, 수익성 등을 개선할 수 있습니다.

보건의료 서비스
보건의료 서비스를 개선하는 동시에 비용을 절감해야 하는 상황에서 보건의료 산업은 ETL 솔루션을 활용하여 환자 기록을 관리하고 보험 정보를 수집하며 진화하는 규제 요구 사항을 충족합니다.

생명 과학
임상 연구소는 ETL 솔루션과 인공 지능(AI)을 사용하여 연구 기관에서 생성되는 다양한 형식의 데이터를 처리합니다. 예를 들어 백신 개발 과정에서 협업을 도모하려면 수집, 처리 및 분석할 막대한 양의 데이터가 필요합니다.

공공 부문
사물 인터넷(IoT) 기능이 빠르게 등장하면서 스마트 도시에서는 ETL과 AI 기능을 사용하여 교통을 최적화하고 수질을 모니터링하며 주차를 개선하는 등 여러 작업을 수행하고 있습니다.

ETL 제품 및 솔루션

SOA(Service Oriented Architecture) Suite
애플리케이션 통합의 복잡성을 어떻게 줄일 수 있습니까? 단일 플랫폼 내에 있는 간소화된 클라우드, 모바일, 온-프레미스 및 IoT 통합 기능을 통해 이 솔루션은 총 소유 비용(TCO)을 절감하면서 통합 시간을 단축하고 생산성을 높일 수 있습니다. Oracle E-Business Suite를 비롯한 많은 엔터프라이즈 애플리케이션은 이 제품을 많이 사용하여 데이터 흐름을 조정합니다.

GoldenGate
디지털 혁신은 데이터를 캡처한 위치에서 필요한 위치로 이동해야 하는 경우가 많으며 GoldenGate는 이러한 프로세스를 간소화하도록 설계되었습니다. Oracle GoldenGate는 온-프레미스, 클라우드 또는 자율운영 데이터베이스에 있는 이기종 데이터베이스 간의 실시간 통합을 위한 고속 데이터 복제 솔루션입니다. GoldenGate는 시스템 성능에 영향을 주지 않으면서 데이터 가용성을 개선하여 실시간 데이터 액세스 및 운영 보고를 제공합니다.

클라우드 스트리밍
Oracle 클라우드 스트리밍 솔루션은 대용량 데이터 스트림을 실시간으로 수집하고 사용하기 위한 확장성과 내구성이 뛰어난 완전 관리 솔루션을 제공합니다. 메시징, 애플리케이션 로그, 운영 원격 분석, 웹 클릭스트림 데이터 또는 게시-구독 메시징 모델에서 데이터가 지속적이고 순차적으로 생성되어 처리되는 기타 모든 인스턴스에 이 서비스를 사용합니다. Spark 및 Kafka와 완벽하게 호환됩니다.