ETL이란 무엇입니까?

ETL(추출, 변환, 적재)은 여러 소스에서 데이터를 수집하고, 이를 표준화하고, 분석을 위한 데이터 웨어하우스, 저장을 위한 데이터베이스 또는 기타 유형의 데이터 소스에 적재하는 데이터 통합 프로세스입니다. 조직은 ETL을 사용하여 서로 다른 언어로 여러 시스템에 흩어져 있는 데이터를 통합 형식 및 스타일로 변환하여 보다 쉽게 분석할 수 있습니다. 정보 폭발로 인해 조직은 막대한 양의 데이터를 처리해야 합니다. 그러나 많은 조직에서 데이터의 다양성과 양에 걸려 휘청거립니다. 많은 사람들이 소스 시스템에서 데이터를 이동하고, 공통 언어로 번역하고, 다른 시스템으로 적재하여 전체 데이터를 분석하여 데이터를 완벽하게 볼 수 있도록 하는 데 어려움을 겪습니다. ETL은 조직이 비즈니스 인텔리전스를 향상시키기 위해 다양한 시스템에서 데이터를 추출, 변환 및 적재함으로써 데이터를 효율적으로 활용하도록 돕습니다.

ETL 다이어그램

ETL은 여러 분야에서 수많은 사용 사례를 가지고 있습니다. 그 중 하나는 고객 데이터에서 가치를 도출하는 것입니다. 고객은 다양한 방식으로 브랜드와 상호 작용합니다. ETL은 다양한 소스에서 이러한 모든 고객 데이터를 수집하고 표준 형식을 준수하도록 데이터를 변환한 다음 데이터 웨어하우스 또는 기타 데이터 소스에 적재하여 분석합니다. 회사가 동일한 언어로 되어 있고 동일한 위치에 있는 데이터를 쉽게 분석할 수 있을 때 조직에 브랜드와 고객의 상호 작용에 대한 정확한 360도 보기를 제공합니다. 이를 통해 조직은 고객의 요구를 이해할 수 있으며 조직에 고도로 개인화된 경험을 제공할 수 있습니다.

O'Reilly 보고서: 통합 데이터 인프라 구축
O'Reilly 보고서: 통합 데이터 인프라 구축
기업의 3 분의 1만이 데이터 기반 조직으로 변경했습니다. 해결책은 무엇입니까? 이 전자책에서 알아보십시오!

조직에 ETL이 필요한 이유는 무엇입니까?

데이터는 조직의 가장 큰 자산 중 하나입니다. 유용한 데이터는 대부분 구조화되지 않고 여러 소스에 흩어져 있습니다. 따라서 조직은 데이터를 수집 및 표준화하고 한 위치에서 분석을 준비하기 위해 ETL 형식의 데이터 통합이 필요합니다. ETL은 모든 팀에 데이터에 대한 쉽고 균일한 액세스를 보장합니다. 표준화된 데이터를 통해 팀은 정보에 입각한 결정을 내릴 수 있으며 이는 더 나은 비즈니스 인텔리전스로 이어집니다. 오늘날의 세계에서는 단 하나의 데이터라도 수익성에 큰 차이를 만들 수 있습니다. 데이터의 힘을 활용하려는 조직은 ETL 채택을 고려해야 합니다.

ETL에 포함된 단계는 무엇입니까?

이름에서 알 수 있듯이 ETL에는 추출, 변환 및 적재의 세 가지 기본 단계가 있습니다.

1단계: 데이터 추출

추출은 여러 소스에서 데이터를 수집하는 프로세스입니다. 이러한 소스에는 다음이 포함될 수 있습니다.

  • 고객 관계 관리 시스템(CRM)
  • 소셜 미디어 및 기타 온라인 소스
  • 레거시 데이터베이스 및 스토리지
  • 영업 및 마케팅 애플리케이션
  • 고객 거래 데이터
  • 전사적 리소스 관리 시스템
  • 사물 인터넷(IoT)의 센서 데이터

데이터 추출은 종종 세 가지 상이한 방식으로 수행됩니다.

변경 알림 기반 데이터 추출

일부 데이터 소스는 데이터 변경이 있을 때 ETL 시스템에 알림을 제공합니다. ETL 시스템은 새 데이터만 추출하게 됩니다. 알림 기반 데이터 추출이 가장 쉬운 방법이지만 많은 데이터 소스가 알림을 제공하지 않습니다.

증분 데이터 추출

일부 소스는 데이터 변경에 대한 알림을 제공하지 못할 수 있습니다. 그러나 변경된 데이터를 식별하고 기록할 수 있습니다. ETL 시스템은 이러한 소스를 주기적으로 확인하여 데이터에 변경 사항이 있는지 검사해야 합니다. 이 방법에서는 변경된 데이터 부분을 점진적으로 추출합니다. 증분 추출은 알림 기반 추출보다 복잡합니다.

전체 데이터 추출

일부 소스에는 데이터 변경 사항을 식별하는 메커니즘이 없을 수 있습니다. 이러한 소스를 처리할 때 ETL은 소스에서 완전한 데이터를 추출해야 합니다. ETL은 새 복사본과 비교할 수 있도록 마지막 추출의 복사본을 보관해야 합니다. 전체 데이터 추출 과정에서는 매번 전체 데이터 세트를 복사해야 하기 때문에 다른 방법보다 더 많은 양의 데이터 전송이 필요합니다. 또한 이로부터 ETL 시스템의 부하를 증가시킵니다.

정형 및 비정형 데이터

위 소스의 데이터는 정형 데이터이거나 비정형 데이터일 수 있습니다. 정형 데이터를 항상 즉시 추출할 수 있습니다. 비정형 데이터는 추출에 적합하도록 하기 위해 몇 가지 준비가 필요합니다. 여기에는 공백 또는 이모티콘 제거와 같은 데이터 정리가 포함됩니다.

2단계: 데이터 변환

서로 다른 소스의 데이터는 구조와 특성이 서로 다를 수 있습니다. '변환' 단계는 이 다양한 데이터를 표준화하기 위해 여러 기술을 적용합니다. 조직은 종종 데이터를 변환할 때 비즈니스 규칙을 적용합니다. 데이터 변환과 관련된 하위 프로세스는 다음과 같습니다.

표준화

다양한 소스에서 추출한 데이터의 형식은 크게 다를 수 있습니다. 표준화는 데이터를 공통 형식으로 만듭니다. 예를 들어, 로데이터의 모든 0은 NULL로 변환될 수 있습니다.

정리

소셜 미디어 또는 이메일 커뮤니케이션과 같은 소스의 데이터에는 관련이 없는 정보가 있을 수 있습니다. 일반적으로 데이터에는 불일치 값 및 누락된 값이 있을 수 있습니다. 정리는 데이터의 잡음을 제거하고 누락된 값과 불일치를 수정하는 데 도움이 됩니다.

중복 제거

소스의 로데이터에는 반복 및 중복 정보가 있을 수 있습니다. 중복 제거는 이러한 모든 중복성을 제거합니다.

형식 개정

여기에는 조직의 표준에 따라 한 형식에서 다른 형식으로 변환하는 작업이 포함됩니다. 여기에는 측정 단위 변환, 날짜-시간 변환 및 문자 집합 변환이 포함될 수 있습니다.

확인

이 단계에서는 데이터 무결성을 확인합니다. 이 단계에서 ETL 시스템은 데이터 이상을 식별하고 플래그를 지정합니다.

변환에는 데이터 집계, 키-값 관계 설정, 데이터 분할 및 필터링과 같은 고급 데이터베이스 연산도 포함됩니다.

3단계: 데이터 적재

ETL의 마지막 단계에서 변환된 데이터는 데이터 웨어하우스 또는 다시 다른 데이터 소스에 적재됩니다. '적재'하는 방법은 다음의 두 가지가 있습니다.

전체 적재

전체 적재에서는 '변환' 단계에서 준비된 모든 데이터가 단일 배치로 데이터 웨어하우스에 적재됩니다. '전체 적재'는 시간이 오래 걸리지만 증분 적재보다 덜 복잡합니다. 전체 적재로 인해 웨어하우스의 데이터 볼륨이 기하급수적으로 증가하여 관리가 어려워질 수 있습니다.

증분 적재

들어오는 데이터의 변경 사항을 찾습니다. 고유한 데이터가 발견된 경우에만 새 데이터 레코드를 생성합니다. 증분 적재는 전체 적재에 비해 관리하기 쉽습니다. 그러나 시스템 장애가 있는 경우 데이터 불일치가 발생할 수 있습니다.

조직은 데이터로 수행하려는 작업에 따라 '적재' 전략을 선택할 수 있습니다. 적재된 데이터는 다음의 다양한 요구 사항에 사용될 수 있습니다.

  1. 데이터에 대한 분석 또는 비즈니스 인텔리전스 계층을 생성
  2. 검색 가능한 데이터베이스로 데이터 사용
  3. 머신 러닝 알고리즘에 대한 훈련 세트
  4. 데이터를 기반으로 경고 시스템 생성

데이터 목적지(예: 데이터 웨어하우스)의 특성도 고려해야 합니다. 목적지의 속도, 용량 및 데이터 인터페이스는 적재 프로세스에 영향을 미칠 수 있습니다.

데이터 및 분석 아키텍처 현대화
데이터 및 분석 아키텍처 현대화
다음 13 가지 사용 사례를 확인하여 오늘날의 복잡한 데이터 및 분석 환경을 지원하는 방법을 알아보십시오.

ETL 도구의 유형은 무엇입니까?

조직은 요구 사항에 따라 다양한 유형의 ETL 도구를 사용합니다. 조직은 데이터로 수행해야 하는 작업에 따라 ETL 범주를 선택할 수 있습니다.

직접 코딩

일부 조직에서는 특정 ETL 도구를 사용하지 않기로 선택합니다. 대신 직접 코딩하는 방법을 사용합니다. 직접 코딩에서는 ETL 워크플로를 수행하는 사용자 지정 스크립트를 생성합니다. 직접 코딩 방식을 관리하고 표준화하는 것은 어려운 일입니다.

배치 프로세싱 도구

이러한 도구는 일상적인 작업을 방해하지 않도록 종종 업무 외 시간에 데이터를 일괄 처리합니다. 실시간 ETL 기능이 필요하지 않은 조직은 배치 프로세싱 도구에 의존할 수 있습니다.

오픈 소스 도구

온라인에서 여러 오픈 소스 ETL 도구를 제공합니다. 상용 ETL 도구에 대한 저렴한 대안입니다. 오픈 소스 버전을 사용하기로 선택한 조직은 ETL 도구를 운영하고 유지할 준비가 되어 있어야 합니다. 지원이 거의 또는 전혀 없을 수 있습니다.

클라우드 기반 도구

조직이 ETL의 인프라를 사용할 형편이 안 되는 경우 서비스로 ETL 플랫폼을 찾을 수 있습니다. 많은 회사가 클라우드에서 완전한 지원, 손쉬운 통합 및 확장성을 보장하는 ETL 서비스를 제공합니다.

실시간 도구

위에서 논의한 도구는 대부분 비실시간으로 작동합니다. 실시간 ETL 시스템은 연속 데이터 처리를 사용하여 여러 소스에서 데이터를 추출하고 웨어하우스에 저장합니다. 이러한 유형의 ETL 도구는 스트림 데이터 또는 사물 인터넷 사용 사례의 센서 데이터를 처리하는 데 유용합니다.

ETL의 이점은 무엇입니까?

통합 데이터

종종 조직은 여러 소스의 데이터로 어려움을 겪습니다. 이한 소스의 데이터는 볼륨, 형식 및 복잡성이 각이할 수 있습니다. ETL은 이런 데이터를 표준화하고 데이터에 대한 단일 관점을 제공합니다. ETL을 사용하면 조직에서 데이터를 빠르게 검색하고 분석할 수 있습니다. 이것은 더 빠르고 나은 결정을 내리는 데 도움이 됩니다.

역사적 맥락

많은 조직에서 기존 데이터 스토리지 시스템에 기록 데이터를 저장하고 있습니다. ETL은 레거시 시스템에서 데이터를 추출하여 현재 데이터와 통합할 수 있습니다. 이는 조직이 장기적인 추세를 인식할 수 있는 역사적 맥락을 제공합니다. 역사적 맥락은 기업이 유용한 통찰력을 얻고 비즈니스 인텔리전스를 향상시키는 데 도움이 됩니다.

효율성 및 생산성

ETL은 팀이 데이터에 쉽게 액세스할 수 있도록 하여 팀의 효율성을 높입니다. 데이터 마이그레이션을 위한 사용자 지정 스크립트를 작성해야 하는 부담이 없어져 생산성이 향상됩니다. 데이터를 쉽게 이용할 수 있다면, 직원들은 정보에 입각한 결정을 내릴 수 있고, 분석에 더 많은 시간을 할애하고 가치가 낮은 작업에 더 적은 시간을 할애할 수 있습니다.

ETL 워크플로 구현의 문제점은 무엇입니까?

엄청난 양의 데이터

ETL 시스템은 많은 경우 특정 수신 데이터 양을 처리하도록 설계됩니다. 오늘날의 세계에서 기업의 데이터는 빠르게 증가하고 있습니다. ETL 시스템은 증가된 데이터 양을 처리하지 못할 수 있습니다.

솔루션: 조직은 ETL 워크플로/도구를 구현할 때 확장성을 고려해야 합니다. 확장 가능한 솔루션을 선택하는 것과 함께 전체 데이터 적재를 피해야 합니다. 조직은 중요한 데이터를 식별하고 모든 비필수 데이터 사용을 피해야 합니다. 또한 병렬 데이터 처리를 찾아야 합니다.

데이터 형식 변경

조직은 데이터 형식의 동적 특성을 고려해야 합니다. 외부 소스의 데이터는 형식이 동일하지 않거나 빈도가 동일하지 않을 수 있습니다. ETL 시스템은 이러한 다양성을 처리할 수 있어야 합니다.

솔루션: "변환" 단계 이전에도 데이터를 정리하는 것은 형식 변경을 처리하는 데 중요합니다. ETL 시스템은 새 형식에 대해 변환 도구를 식별하고 경고할 수 있어야 합니다. 또한 ETL의 변환 프로세스는 유연해야 하며 하드 코딩된 규칙을 기반으로 하지 않아야 합니다.

긴밀하게 결합된 ETL 파이프라인

ETL은 많은 구성 요소와 하위 시스템을 가진 복잡한 시스템입니다. 이러한 각 구성 요소는 확장 가능하고 기능적이며 유연해야 합니다. 종종 조직은 이러한 구성 요소 각각에 대해 유사한 기술과 시스템을 사용하는 경향이 있습니다. 조직에서 ETL 워크플로를 구현할 때 모든 부분에 유사한 솔루션을 적용하는 경향이 있습니다. 이로부터 시스템은 긴밀하게 결합되고 유연성이 적어집니다.

솔루션: ETL 시스템의 각 구성 요소는 독립 구성 요소로 간주되어야 합니다. 조직은 이러한 각 단계에 적합한 도구를 선택해야 합니다. 이러한 각 구성 요소에는 고도로 전문화된 솔루션이 필요할 수 있습니다. ETL 구성 요소를 분리함으로써 조직은 전체 시스템을 처음부터 다시 빌드하지 않고도 일부를 수정하거나 변경할 수 있습니다.