에이전틱 기업 강화 Think 기조 연설 보기

ETL(추출, 변환, 로드)이란 무엇인가요?

ETL이란 무엇인가요?

ETL(추출, 변환, 적재)은 여러 출처의 데이터를 단일하고 일관된 데이터 세트로 결합, 정리 및 구성하는 데이터 통합 프로세스입니다. 그런 다음 이 데이터를 데이터 웨어하우스, 데이터 레이크 또는 기타 대상 시스템에 로드합니다.

ETL 데이터 파이프라인은 데이터 분석 및 머신 러닝 워크스트림의 기반을 제공합니다. ETL은 일련의 비즈니스 규칙을 통해 데이터를 정제하고 구성하여 월간 보고와 같은 특정 비즈니스 인텔리전스 요구 사항을 충족합니다. 또한 백엔드 프로세스와 최종 사용자 경험을 개선할 수 있는 고급 분석 작업도 처리할 수 있습니다. 조직은 다음과 같은 목적으로 ETL 파이프라인을 자주 사용합니다.

  • 레거시 시스템에서 데이터 추출

  • 데이터를 정리하여 데이터 품질 개선 및 일관성 확립

  • 대상 데이터베이스에 데이터 로드

ETL의 발전 과정

기업들은 주판을 쓰던 시대부터 데이터를 생성해 왔지만, 현대적 분석은 디지털 컴퓨터와 데이터 스토리지의 등장으로 비로소 가능해졌습니다.

1970년대에는 더 큰 중앙 집중식 데이터베이스로의 이동과 함께 중요한 진전이 이루어졌습니다. 이후 ETL이 계산 및 분석을 위해 데이터를 통합하고 로드하는 프로세스로 도입되었으며, 결국 데이터 웨어하우징 프로젝트를 위해 데이터를 처리하는 기본 방법이 되었습니다.

1980년대 후반에는 데이터 웨어하우스와 트랜잭션 데이터베이스에서 관계형 데이터 형식으로 정보를 저장하는 관계형 데이터베이스로의 전환이 인기를 얻었습니다. 기존 트랜잭션 데이터베이스는 트랜잭션별로 정보를 저장하고 각 트랜잭션과 함께 중복된 고객 정보를 저장했기 때문에 시간이 지남에 따라 통합된 방식으로 고객 데이터에 쉽게 액세스할 방법이 없었습니다. 관계형 데이터베이스를 통해 분석은 비즈니스 인텔리전스(BI)의 기반이자 의사 결정의 중요한 툴이 되었습니다.

더 정교한 ETL 소프트웨어가 등장하기 전에는, 초기 ETL 시도는 대부분 IT 팀이 여러 시스템과 커넥터에서 데이터를 추출하는 수작업 중심의 작업이었습니다. 그런 다음 데이터를 공통 형식으로 변환하고 상호 연결된 테이블에 로드했습니다. 그럼에도 불구하고 초기 ETL 단계는 가치가 있었으며, 고급 알고리즘과 신경망의 발전으로 보다 심층적인 분석 인사이트를 얻을 수 있는 기회가 제공되었습니다.

빅데이터 시대는 컴퓨팅 속도와 저장 용량이 계속해서 빠르게 증가하던 1990년대에 도래했습니다. 이후 소셜 미디어 및 사물 인터넷(IoT)과 같은 새로운 출처에서 대규모 데이터가 수집되기 시작했습니다.데이터가 온프레미스 데이터 웨어하우스에 저장되는 경우가 많다는 제한 요인이 남아 있었습니다.

컴퓨팅과 ETL 모두에서 다음 주요 발전 단계는 클라우드 컴퓨팅이었으며, 이는 1990년대 후반부터 대중화되었습니다. 이제 Amazon Web Services(AWS), Microsoft Azure, Snowflake와 같은 데이터 웨어하우스를 사용해 전 세계 어디에서나 데이터에 액세스할 수 있습니다. 또한 이러한 플랫폼은 빠르게 확장할 수 있어 ETL 솔루션이 매우 상세한 분석 정보와 새로운 경쟁 우위를 제공할 수 있도록 지원합니다.

가장 최근의 발전은 스트리밍 데이터를 활용한 ETL 솔루션으로, 방대한 데이터에서 초 단위 수준의 분석 정보를 제공합니다.

AI 아카데미

데이터 관리가 생성형 AI 구현의 비결일까요?

생성형 AI를 성공적으로 사용하기 위해 고품질 데이터가 필수적인 이유를 알아보세요.

ETL과 ELT 비교

ETL과 ELT(추출, 적재, 변환)의 가장 분명한 차이는 작업 순서입니다. ELT는 데이터를 원본 위치에서 복사하거나 내보냅니다. 이후 변환을 위해 스테이징 영역에 로드하는 대신, 필요에 따라 변환할 수 있도록 원시 데이터를 대상 데이터 저장소에 직접 로드합니다.

두 프로세스 모두 데이터베이스, 데이터 웨어하우스, 데이터 레이크와 같은 다양한 데이터 저장소를 사용하지만, 각각 장단점이 있습니다. ELT는 소스에서 직접 로드가 가능하므로 대용량 비정형 데이터 세트를 처리하는 데 유용합니다. ELT는 데이터 추출 및 저장을 위한 사전 계획이 많이 필요하지 않기 때문에 빅데이터 관리에 더 적합할 수 있습니다.

반면 ETL 프로세스는 시작 단계에서 더 명확한 정의가 필요합니다. 서로 다른 소스 시스템 전반에서 통합할 수 있는 잠재적인 '키'와 함께 추출을 위해 특정 데이터 포인트를 식별해야 합니다. 입력 데이터의 소스는 대개 메타데이터를 사용하여 추적됩니다. 이 작업이 완료된 후에도 데이터 변환에 대한 비즈니스 규칙을 구성해야 합니다.

이 작업은 일반적으로 특정 유형의 데이터 분석에 필요한 데이터 요구 사항에 따라 달라질 수 있으며, 이러한 요구 사항에 따라 데이터에 어느 수준의 요약이 필요한지가 결정됩니다.

클라우드 데이터베이스의 채택으로 ELT 파이프라인이 점점 더 보편화되고 있지만, ELT 기술은 여전히 발전 중인 프로세스로, 모범 사례가 확립되는 단계에 있습니다.

ETL 작동 방식

ETL의 작동 방식을 이해하는 가장 쉬운 방법은 프로세스의 각 단계에서 어떤 일이 발생하는지 이해하는 것입니다.

추출

데이터를 추출하는 동안 원시 데이터는 소스 위치에서 스테이징 영역으로 복사되거나 내보내집니다. 데이터 관리 팀은 다양한 데이터 소스에서 데이터를 추출할 수 있으며 이는 정형 또는 비정형일 수 있습니다. 이러한 데이터 유형에는 다음이 포함되지만 이에 국한되지는 않습니다.

  • SQL 또는 NoSQL 서버
  • CRM 및 ERP 시스템
  • JSON 및 XML
  • 플랫 파일 데이터베이스
  • 이메일
  • 웹페이지

변환

스테이징 영역에서 원시 데이터는 데이터 처리를 거칩니다. 여기서 데이터는 의도한 분석 사용 사례에 맞게 변환 및 통합됩니다. 변환 프로세스의 이 단계에는 다음이 포함될 수 있습니다.

  • 데이터를 필터링, 정제, 집계, 중복 제거, 검증 및 인증합니다.
  • 원시 데이터를 기반으로 계산, 번역 또는 요약을 수행합니다. 이 과정에는 일관성을 위해 행 및 열 머리글 변경, 통화 또는 기타 측정 단위 변환, 텍스트 문자열 편집 등이 포함될 수 있습니다.
  • 데이터 품질 및 규정 준수를 보장하기 위한 감사를 수행하고 지표를 계산합니다.
  • 업계 또는 정부 규제 기관에서 관리하는 데이터를 제거, 암호화 또는 보호합니다.
  • 대상 데이터 웨어하우스의 스키마와 일치하도록 데이터를 테이블 또는 결합된 테이블로 포맷합니다.

로드

마지막 단계인 로드에서는 변환된 데이터를 스테이징 영역에서 대상 데이터 웨어하우스로 이동합니다. 일반적으로 이 프로세스는 전체 데이터의 초기 로드를 수행한 후, 증분 데이터 변경 사항을 주기적으로 로드하고, 비교적 드물게 데이터 웨어하우스의 데이터를 삭제하고 교체하기 위한 전체 새로 고침을 수행하는 방식으로 이루어집니다.

ETL을 사용하는 대부분의 조직에서는 프로세스가 자동화되고 잘 정의되어 있으며 지속적이고 배치 중심적입니다. 일반적으로 ETL 로드 프로세스는 소스 시스템과 데이터 웨어하우스의 트래픽이 가장 낮은 시간대인 비업무 시간 동안 수행됩니다.

ETL 및 기타 데이터 통합 방법

ETL과 ELT는 두 가지 데이터 통합 방법에 불과하며 데이터 통합 워크플로를 촉진하는 다른 접근 방식도 사용됩니다. 다음과 같은 방법들이 있습니다.

  • 변경 데이터 캡처(CDC) 변경된 원본 데이터만 식별 및 캡처하고 해당 데이터를 대상 시스템으로 이동합니다. CDC는 ETL의 ‘추출(extract)’ 단계에서 필요한 리소스를 줄이는 데 사용할 수 있습니다. 또한 변환된 데이터를 데이터 레이크 또는 기타 저장소로 실시간 전송하는 데 독립적으로 사용할 수도 있습니다.

  • 데이터 복제는 데이터 소스의 변경 사항을 실시간 또는 일괄적으로 중앙 데이터베이스에 복사합니다. 데이터 복제는 데이터 통합 방법으로 나열되는 경우가 많습니다. 실제로 재해 복구를 위한 백업을 만드는 데 가장 자주 사용됩니다.

  • 데이터 가상화는 소프트웨어 추상화 계층을 사용해 원본 데이터를 대상 시스템으로 물리적으로 복사, 변환 또는 로드하지 않고도 통합되고 완전히 활용 가능한 데이터 를 생성합니다. 데이터 가상화 기능을 사용하면 조직은 동일한 원본 데이터로부터 가상 데이터 웨어하우스, 데이터 레이크 및 데이터 마트를 생성해 저장할 수 있습니다. 이 접근 방식은 각각을 위한 별도의 플랫폼을 구축 및 관리하는 비용과 복잡성을 줄여줍니다. 데이터 가상화는 ETL과 함께 사용할 수도 있지만, 점점 더 ETL 및 기타 물리적 데이터 통합 방식의 대안으로 여겨지고 있습니다.

  • 스트림 데이터 통합(SDI)은 이름 그대로 실시간 데이터 스트림을 지속적으로 수집하고 변환한 뒤 분석을 위해 대상 시스템에 로드하는 방식입니다. 여기서 핵심은 '지속적으로'입니다. 특정 시점에 캡처된 데이터 스냅샷을 통합하는 대신 SDI는 데이터를 지속적으로 통합합니다. 데이터가 사용 가능해지는 즉시 처리합니다. SDI는 분석, 머신 러닝 및 고객 경험 개선, 사기 탐지 등을 위한 실시간 애플리케이션을 지원하는 데이터 저장소를 구현합니다.

ETL의 이점과 과제

ETL 솔루션은 데이터를 다른 리포지토리에 로드하기 전에 데이터 정제를 수행함으로써 품질을 향상시킵니다. 시간이 많이 소요되는 배치 작업인 ETL은 업데이트 빈도가 낮은 소규모 대상 데이터 리포지토리를 생성할 때 더 자주 권장됩니다. ELT(추출, 로드, 변환), 변경 데이터 캡처(CDC) 및 데이터 가상화를 포함한 다른 데이터 통합 방식은 점점 더 큰 규모의 빈번하게 변경되거나 실시간인 데이터 스트림을 통합하는 데 사용됩니다.

ETL 도구

과거에는 조직이 자체 ETL 코드를 작성했습니다. 이제 다양한 오픈 소스 및 상용 ETL 도구와 클라우드 기반 서비스 중에서 선택할 수 있습니다. 이러한 제품의 일반적인 기능은 다음과 같습니다.

  • 포괄적인 자동화 및 사용 편의성: 주요 ETL 툴은 데이터 소스부터 대상 데이터 웨어하우스까지 전체 데이터 흐름을 자동화합니다. 이러한 자동화는 데이터 이동 및 형식 지정과 같은 반복 작업에서 데이터 엔지니어를 해방시켜 더 빠른 결과와 효율적인 운영을 가능하게 합니다.

  • 시각적인 드래그 앤 드롭 인터페이스: 이 기능은 규칙 및 데이터 흐름을 지정하는 데 사용할 수 있습니다.

  • 복잡한 데이터 관리 지원: 이 기능은 복잡한 계산, 데이터 통합 및 문자열 조작을 지원합니다.

  • 보안 및 규정 준수: 최고의 ETL 툴은 전송 중 및 저장 중인 데이터를 모두 암호화하며 HIPAA 및 GDPR을 포함한 산업 및 정부 규정을 준수하는 인증을 받았습니다.

또한 많은 ETL 툴은 ELT 기능을 포함하도록 발전했으며, 인공지능(AI) 애플리케이션을 위한 실시간 및 스트리밍 데이터 통합도 지원합니다.

ETL 관련 자주 묻는 질문

스테이징 영역이란 무엇인가요?

스테이징 영역은 데이터 소스와 데이터 웨어하우스 같은 대상 위치 사이에 존재하는 임시 저장 공간으로, 원시 데이터를 일시적으로 저장하는 데 사용됩니다. 이는 원시 데이터가 대상 위치로 이동하기 전에 정제, 검사 및 변환되는 적재 구역 역할을 합니다.

초기 로드와 증분 로드의 차이점은 무엇인가요?

초기 로드는 데이터 소스에서 대상 위치로 이력 데이터를 처음 추출하고 로드하는 작업입니다. 이는 전체 데이터 세트를 포함하며 프로젝트 시작 시 한 번만 수행됩니다. 증분 로드는 마지막 로드 이후 새롭게 추가, 변경 또는 삭제된 데이터만 로드하는 프로세스입니다. 이러한 프로세스는 예약된 일정에 따라 실행됩니다.

천천히 변경되는 차원(SCD)이란 무엇인가요?

이 용어는 다소 모호하며 두 가지 의미로 사용됩니다. SCD(천천히 변경되는 차원)는 고정된 일정이 아니라 시간에 따라 간헐적으로 변경되는 데이터 웨어하우스의 차원 테이블을 의미합니다. 대표적인 예로 고객 주소가 있습니다. 이 용어는 시간에 따른 차원 데이터 변경을 처리하고 추적하는 데 사용되는 방법 및 기술을 의미하는 데에도 사용됩니다.

중복 데이터는 어떻게 처리해야 하나요?

중복 데이터를 처리하기 위해 조직은 중복 데이터와 그 유형을 체계적으로 식별하는 프로세스, 중복 데이터를 제거하거나 병합하기 위한 명확한 규칙 및 향후 중복 입력을 방지하기 위한 가드레일을 마련해야 합니다.

관련 솔루션
IBM StreamSets

직관적인 그래픽 인터페이스를 통해 스트리밍 데이터 파이프라인을 생성하여 하이브리드 및 멀티클라우드 환경 전반에서 완벽한 데이터 통합을 촉진합니다.

StreamSets 살펴보기
IBM watsonx.data™

watsonx.data를 사용하면 오픈, 하이브리드 및 관리형 데이터 저장소를 통해 데이터의 위치와 관계없이 모든 데이터로 분석과 AI를 확장할 수 있습니다.

watsonx.data 알아보기
데이터 및 분석 컨설팅 서비스

IBM Consulting을 통해 엔터프라이즈 데이터의 가치를 실현하여 비즈니스 이점을 제공하는 인사이트 중심의 조직을 구축하세요.

분석 서비스 알아보기
다음 단계 안내

탁월한 고객 및 직원 경험을 제공하기 위해 데이터 사일로를 제거하고, 복잡성을 줄이며, 데이터 품질을 개선하는 데이터 전략을 구축하세요.

  1. 데이터 관리 솔루션 살펴보기
  2. watsonx.data 알아보기