728x90
반응형

안녕하세요, 수염난아이티 입니다.

 

 이번 페이지에서는 ETL에 대해서 알아보겠습니다.

 

Extract(추출), Transform(변환), Load(저장) 를 나타내며

기업, 조직, 단체 등에서 데이터를 분석하여 유용하게 사용하기 위해 데이터를 변환하여

특정 저장소(데이터베이스)에 저장하는 방법 입니다.

 

 위 그림처럼 다양한 소스로부터 데이터를 추출하고 데이터를 사용가능할 수 있는 형태로 변환하고

변환된 데이터를 저장하여 최종 사용자가 목적에 맞게 문제를 해결하는데 데이터를 활용하는 일련의 과정 입니다.

 

주로 ETL은 데이터엔지니어가 수행을 하며 핵심은 데이터엔지니어가 특정 조직이 신뢰할 수 있는 데이터를 만들어 주는 것 입니다.

 

■ Extract (추출)

소스에서 데이터를 추출하는 것 이며, 소스는 일반적으로 비즈니스 시스템, API, 센서 데이터 등 여러가지 종류로 이루어져 있습니다. 추출은 크게 3가지로 나눌 수 있습니다.

① 부분 추출 (업데이트 미포함)

: 데이터를 얻는 가장 쉬운 방법은 레코드가 변경되면 소스 시스템이 알려주는 것 입니다.

② 부분 추출 (업데이트 포함)

: 소스 시스템에 따라 업데이트가 발생해도 알림을 제공하지 않는 경우가 있습니다.

 다만, 변경된 레코드를 지목하여 그러한 레코드의 추출을 제공할 수 있습니다.

③ 전체 추출

: 어느 데이터가 변경되었는지 파악할 수 없는 소스 시스템인 경우 시스템에서 데이터를 추출할 가능성이 있는 유일한 방식은 전체 추출 뿐 입니다. 이 방식을 취하면 마지막 추출의 사본을 같은 형식으로 추출하여 변경 사항을 확인해야 합니다.

 

■ Transform (변환)

소스에서 추출된 원시 데이터를 변환하여 다양한 애플리케이션에서 사용할 수 있는 형식으로 지정합니다.

이 단계에서는 데이터를 정리, 매핑, 변환(대게 특정 스키마로)하여 운영 요구사항에 부합하도록 설정합니다.

보통은 데이터를 대상 데이터 소스에 바로 로드하는 것이 아니라, 준비(Staging) 데이터베이스에 업로드하는 것이 보편적 입니다. 이 단계를 거치면 혹시나 무언가 계획에서 어긋난다 하더라도 금세 롤백할 수 있습니다.

 

■ Load (저장)

마지막으로 로드 기능은 변환한 데이터를 특정 대상 데이터베이스에 저장하는 프로세스를 말합니다.

이 데이터베이스는 기존에 존재할 수도 신규일 수도 있습니다. 이 단계는 각각 ETL 툴을 쓰거나 맞춤형 코드를 써서 수행하면 됩니다.

 

#출처 : https://devkhk.tistory.com/39

728x90
반응형

'▶IT World◀ > IT Basic' 카테고리의 다른 글

[it용어] 인증/인가 란?  (9) 2024.12.24
[it용어] FO/BO 란?  (2) 2024.12.24
JSON 파일 이란?  (3) 2024.12.11
CI/CD 란?  (4) 2024.11.24
IT 시스템 아키텍처란?  (0) 2024.11.21

+ Recent posts