데이터 수집: 데이터 추출 (1)

데이터 웨어하우스는 데이터를 구조화된 형식으로 저장합니다. 분석 및 비즈니스 인텔리전스를 위한 사전 처리된 데이터의 중앙 리포지토리입니다.  데이터 마트는 회사의 금융, 마케팅 또는 영업 부서와 같은 특정 사업부의 요구 사항을 지원하는 데이터 웨어하우스입니다. 데이터 레이크는 원시 데이터 및 비정형 데이터의 중앙 리포지토리입니다. 먼저 데이터를 저장하고 나중에 처리할 수 있습니다.

개요


ELT 패턴은 데이터 파이프라인에 이상적인 설계로, 처음 두단계인 데이터 추출(EXTRACT)과 데이터 로드(LOAD)를 모두 데이터 수집이라고 이야기합니다.

아래 내용에서는 데이터를 추출하고 로드하는 과정에 있어,

  1. 개발 환경과 인프라를 설정하는 방법

  2. 다양한 소스 시스템에서 데이터를 추출하는 방법

두 가지를 설명합니다.

내용의 대다수가 예제 코드로 구성되어 있고, 파이썬 환경설정부터 설명합니다. 이 부분은 생략하도록 하겠습니다.

전체 내용을 다이어그램으로 그려보면, 다음과 같습니다.

Untitled

모든 예제에서는

  1. 데이터베이스(mysql, mongo, pg)에서 데이터를 추출

  2. 추출된 데이터를 S3 버켓으로 로드

  3. S3에서 데이터 웨어하우스(Redshift)로 데이터 로드(수집 완료)

세 단계를 기반으로 합니다. 4장에서는 1, 2만 다루며 3의 경우 5장에서 이루어집니다.

데이터베이스에서 데이터를 추출하기 전에, 어떻게 하면 코드로 AWS의 S3와 데이터베이스를 연결할 수 있을지 살펴보겠습니다.

AWS: S3, IAM, Boto3