MS-Azure 데이터 팩토리로 구축하는 ETL 파이프라인


MS-Azure 데이터 팩토리로 구축하는 ETL 파이프라인

애져 데이터 팩토리를 한단어로 줄이면 ? ‘‘코드리스 ETL 서비스’

  • 한마디로 코드없이 클릭클릭 UI를 기반으로 ETL이 가능하게 되어있는 서비스 라고 한다.

실제 아키텍쳐는 아래와 같이 뭔가 내용이 참 많은 듯하다.

데이터 팩토리에 연결 및 데이터 수집

  • 다양한 소스 온-프레미스, 클라우드(구조화, 비구조화 및 준구조화)에 모두 서로 다른 간격과 속도로 쏟아지는 다양한 종류의 데이터를 보유

  • 정보 생산 시스템을 구축하는 첫 번째 단계에서는 필요한 모든 데이터 원본과 SaaS(software-as-a-service) 서비스, 데이터베이스, 파일 공유 및 FTP 웹 서비스 등과 같은 처리에 연결하게됨
  • 그 다음 후처리를 위해 집중화된 위치에 필요한 데이터를 이동

  • 향후 분석에 사용할 수 있도록 데이터 파이프라인에서 복사 작업을 사용하여 온-프레미스 및 클라우드 소스 데이터 저장소에서 클라우드의 중앙 데이터 저장소로 데이터를 이동 가능
  • Azure Data Lake Storage에서 데이터를 수집하고 나중에 Azure Data Lake Analytics 컴퓨팅 서비스를 사용하여 데이터를 변환가능
  • Azure HDInsight Hadoop 클러스터를 사용하여 Azure Blob Storage에서 데이터를 수집하고 나중에 변환 가능

변환 및 보강

  • 데이터가 클라우드의 중앙 집중식 데이터 저장소에 있는 경우 Azure Data Factory(ADF) 매핑 데이터 흐름을 사용하여 수집된 데이터를 처리하거나 변환

  • 데이터 흐름을 통해 데이터 엔지니어는 Spark 클러스터 또는 Spark 프로그래밍을 이해할 필요 없이 Spark에서 실행되는 데이터 변환 그래프를 작성 및 유지
  • 직접 변환을 코딩하는 것을 선호하는 경우 ADF는 컴퓨팅 서비스(예: HDInsight Hadoop, Spark, Data Lake Analytics 및 Machine Learning)에서 변환을 실행하기 위한 외부 활동을 지원

데이터 팩토리의 최상위 개념들

  • 하나 이상의 Azure Data Factory 인스턴스(또는 데이터 팩터리)가 존재 할 수 있음.

  • Azure Data Factory는 아래의 핵심 구성 요소로 구성

    • 파이프라인
    • 활동
    • 데이터 세트
    • 연결된 서비스
    • 데이터 흐름
    • Integration Runtimes

이러한 구성 요소는 함께 작동하여 데이터를 이동하고 변환하는 단계를 사용하여 데이터 기반 워크플로를 작성할 수 있는 플랫폼을 제공


파이프라인

  • 데이터 팩터리에는 하나 이상의 파이프라인을 포함.

  • 파이프라인은 작업 단위를 수행하는 작업의 논리적 그룹을 의미
  • 파이프라인의 활동이 모여 작업을 수행. 예를 들어, Azure Blob에서 데이터를 수집후 HDInsight 클러스터에서 Hive 쿼리를 실행하여 데이터를 분할하는 작업 그룹이 파이프라인안에 포함될 수 있음
  • 각각을 개별적으로 관리하는 대신 하나의 집합으로써 활동을 관리할 수 있다는 점입니다. 파이프라인의 작업을 서로 연결하여 순차적으로 작동하거나 독립적으로 병렬 작동할 수 있음

데이터 흐름 매핑

  • 모든 크기의 데이터를 변환하는 데 사용할 수 있는 데이터 변환 논리 그래프를 만들고 관리

  • 재사용 가능한 데이터 변환 루틴 라이브러리를 작성하고, 이러한 프로세스를 ADF 파이프라인에서 확장된 방식으로 실행할 수 있음
  • Data Factory는 필요할 때 회전 속도를 높이고 낮추는 논리를 Spark 클러스터에서 실행 -> 클러스터를 관리하거나 유지 관리할 필요없음

작업

  • 작업은 파이프라인의 처리 단계를 지칭함
    • 예를 들어, 하나의 데이터 저장소에서 다른 데이터 저장소로 데이터를 복사하는 데 복사 작업을 사용할 수 있음
    • 마찬가지로 데이터를 변환하거나 분석하기 위해서 Azure HDInsight 클러스터에서 Hive 쿼리를 실행하는 Hive 작업을 사용할 수 있음
  • Data Factory는 데이터 이동 작업, 데이터 변환 작업 및 제어 작업이라는 세 종류의 작업을 지원합니다.

데이터 세트

  • 데이터 세트는 데이터 저장소 내의 데이터 구조를 의미

  • 사용자가 활동에서 입력 또는 출력으로 사용하려는 데이터를 가리키거나 참조할 뿐임

연결된 서비스

  • 데이터 팩터리에서 외부 리소스에 연결하는 데 필요한 연결 정보를 정의하는 연결 문자열을 의미

  • 연결된 서비스는 데이터 원본에 연결을 정의하고 데이터 세트는 데이터 구조를 나타냄

    • 예를 들어, Azure Storage 연결 서비스는 Azure Storage 계정에 연결할 연결 문자열을 지정함
    • Azure Blob 데이터 세트는 Blob 컨테이너 및 데이터가 포함된 폴더를 지정함

연결된 서비스의 두 가지 용도

  • SQL Server 데이터베이스, Oracle 데이터베이스, 파일 공유 또는 Azure Blob 스토리지 계정을 포함하지만 여기에 국한되지 않는 데이터 저장소 를 나타내기 위해 사용됨
    • 지원되는 데이터 저장소 목록: 복사 작업 문서를 참조
  • 활동의 실행을 호스팅할 수 있는 컴퓨팅 리소스 를 나타내기 위해 사용
    • 예를 들어, HDInsightHive 활동은 HDInsight Hadoop 클러스터에서 실행. 변환 작업 및 지원되는 컴퓨팅 환경 목록은 데이터 변환 문서를 참조

통합 런타임

  • Data Factory에서 작업은 수행할 작업을 정의

  • 연결된 서비스는 대상 데이터 저장소 또는 컴퓨팅 서비스를 정의
  • 통합 런타임은 작업과 연결된 서비스 간의 브리지를 제공
  • 연결된 서비스 또는 작업에서 참조되며 작업이 실행되거나 디스패치되는 컴퓨팅 환경을 제공
  • 보안 및 준수 요구를 충족하면서 가장 성능이 뛰어난 방법으로 대상 데이터 저장소 또는 컴퓨팅 서비스에 가능하면 가장 가까운 영역에서 작업을 수행할 수 있음

트리거

  • 트리거는 파이프라인 실행을 시작해야 하는 시기를 결정하는 처리 단위

  • 다양한 유형의 이벤트에 대한 다른 종류의 트리거가 존재

파이프라인 실행

  • 파이프라인 실행은 파이프라인 실행의 인스턴스

  • 파이프라인 실행은 일반적으로 파이프라인에 정의된 매개 변수에 인수를 전달하여 인스턴스화
  • 인수는 수동으로 또는 트리거 정의 내에서 전달될 수

매개 변수

읽기 전용 구성의 키-값 을 의미.  매개 변수는 파이프라인에서 정의됩니다. 정의된 매개 변수에 대한 인수는 트리거에 의해 만들어진 실행 컨텍스트 또는 수동으로 실행한 파이프라인에서 실행하는 동안 전달됩니다. 파이프라인 내의 작업은 매개 변수 값을 사용합니다.

데이터 세트는 강력한 형식 매개 변수이며 다시 사용/참조 가능한 엔터티입니다. 작업은 데이터 세트를 참조할 수 있으며 데이터 세트 정의에 정의된 속성을 사용할 수 있습니다.

또한 연결된 서비스도 데이터 저장소 또는 컴퓨팅 환경에 대한 연결 정보를 포함하는 강력한 형식 매개 변수입니다. 역시 다시 사용/참조 가능한 엔터티입니다.

흐름 제어

흐름 제어는 파이프라인 수준에서 시퀀스, 분기 및 매개 변수 정의의 작업 연결 그리고 요청 시 또는 트리거에서 파이프라인을 호출할 때 인수 전달을 포함하는 파이프라인 작업의 조율입니다. 또한 사용자 지정 상태 전달 및 컨테이너 루핑, 즉 For-each 반복기도 포함합니다.

variables

변수는 파이프라인 내부에서 임시 값을 저장하는 데 사용할 수 있으며, 파이프라인, 데이터 흐름 및 기타 활동 간에 값을 전달할 수 있도록 매개 변수와 함께 사용할 수도 있습니다.

##

###

이런 기본 용어들을 최초 사용때 알았다면.. 훨씬 빠르게 ETL하고 DB도 구축했을텐데 싶다.

이래서 사람은 배워야..

###

글 12편을 아래와 같이 기획해본다.

1.글또 6기를 시작하며 (Done!)

2.ES - 일래스틱서치 개요와 기능들(Done!)

3.ES - 키바나를 활용한 데이터 시각화(Done!)

4.빅데이터를 지탱하는 기술 (책을 통한 스터디 1 - Done!)

5.빅데이터를 지탱하는 기술(책을 통한 스터디 2 - Done!)

6.Azure - AZ Fundamental 900로 알아보는 기본 Azure 아키텍쳐 (Done!)

7.Azure - Data Factory로 구축하는 ETL 파이프라인(Done)

8.회계법인(Accounting Firm)과 디지털 컨설팅 1

9.회계법인(Accounting Firm)과 디지털 컨설팅 2

10.Image 관련 딥러닝 논문 내용과 적용(미정)

11.NLP 관련 딥러닝 논문 내용과 적용(미정)

12.2021년을 회고하며.. 글또 6기 마무리 글

이 글이 도움이 되셨다면 추천 클릭을 부탁드립니다 :)

Buy me a coffeeBuy me a coffee





© 2020 modified by Tae You Kim

Powered by "shoman2"