Azure Data Factory를 사용하여 데이터 통합 솔루션 디자인
Azure Data Factory는 데이터 기반 워크플로를 만들고 예약할 수 있는 클라우드 기반 데이터 통합 서비스입니다. Azure Data Factory를 사용하여 데이터 이동을 오케스트레이션하고 대규모로 데이터를 변환할 수 있습니다. 데이터 기반 워크플로 또는 파이프라인은 서로 다른 데이터 저장소에서 데이터를 수집합니다. Azure Data Factory는 추출, 변환, 로드를 의미하는 ETL 데이터 통합 프로세스입니다. 이 통합 프로세스는 여러 데이터 원본의 데이터를 단일 데이터 저장소로 결합합니다.
Azure Data Factory에 대해 알아야 할 사항
Azure Data Factory 아키텍처에서 데이터 기반 워크플로를 만들고 구현하는 네 가지 주요 단계가 있습니다.
- 연결 및 수집 먼저 데이터를 수집하여 다른 원본의 모든 데이터를 중앙 집중식 위치로 수집합니다.
- 변환 및 보강 다음으로, Azure Databricks 및 Azure HDInsight Hadoop과 같은 컴퓨팅 서비스를 사용하여 데이터를 변환합니다.
- CI/CD(연속 통합 및 지속적인 업데이트) 제공 및 게시 GitHub 및 Azure Pipelines를 사용하여 CI/CD를 지원하고 분석 엔진에 데이터를 게시하기 전에 ETL 프로세스를 증분 방식으로 제공합니다.
- 모니터링 마지막으로, Azure Portal을 사용하여 파이프라인에서 예약된 활동 및 오류를 모니터링합니다.
다음 다이어그램은 Azure Data Factory에서 다양한 데이터 원본으로부터 데이터 수집을 오케스트레이션하는 방법을 보여 줍니다. 데이터는 Storage Blob으로 수집되어 Azure Synapse Analytics에 저장됩니다. 분석 및 시각화 구성 요소도 Azure Data Factory에 연결됩니다. Azure Data Factory는 모든 데이터 통합 요구 사항에 대한 공통 관리 인터페이스를 제공합니다.
Azure Data Factory 구성 요소
Azure Data Factory에는 데이터 이동 및 데이터 통합을 위한 플랫폼을 제공하기 위해 함께 작동하는 다음과 같은 구성 요소가 있습니다.
- 파이프라인 및 활동: 파이프라인은 작업을 수행하는 활동의 논리적 그룹화를 제공합니다. 활동은 파이프라인의 단일 처리 단계입니다. Azure Data Factory는 데이터 이동, 데이터 변환, 제어라는 세 유형의 활동을 지원합니다.
- 데이터 세트: 데이터 세트는 데이터 저장소 내의 데이터 구조를 나타냅니다.
- 연결된 서비스: 연결된 서비스는 Azure Data Factory가 외부 리소스에 연결하는 데 필요한 필수 연결 정보를 정의합니다.
- 데이터 흐름: 데이터 엔지니어는 데이터 흐름을 통해 코드를 작성하지 않고도 데이터 변환 논리를 개발할 수 있습니다. 데이터 흐름 작업은 기존 Azure Data Factory 일정, 제어, 흐름, 모니터링 기능을 사용하여 운용할 수 있습니다.
- 통합 런타임: 통합 런타임은 활동과 연결된 서비스 개체 사이의 브리지입니다. 통합 런타임에는 Azure, 자체 호스팅, Azure-SSIS의 세 가지 유형이 있습니다.
비즈니스 시나리오
Tailwind Traders와 같은 고속 성장하는 주택 개선 소매업체의 중요한 과제는 클라우드와 온-프레미스 모두에서 관계형, 비관계형 및 기타 스토리지 시스템에 저장되는 대량의 데이터를 생성하는 것입니다. 경영진은 최대한 근 실시간으로 이 데이터로부터 실행 가능한 비즈니스 인사이트를 원합니다. 또한 영업 팀은 상향 판매 및 교차 판매 솔루션을 설정하고 롤아웃하기를 원합니다. 어떻게 하면 클라우드에서 대규모 데이터 수집 솔루션을 만들 수 있나요? 다양한 데이터 저장소와 컴퓨팅 리소스 간의 데이터 이동 및 변환을 지원하기 위해 어떤 Azure 서비스 및 솔루션을 채택해야 하나요?
Tailwind Traders의 데이터 준비 및 이동 시나리오에 Azure Data Factory의 구성 요소가 어떻게 관련되어 있는지 살펴보겠습니다. 매우 다양한 데이터 원본이 연결될 수 있으며 해당 데이터를 수집하고 데이터에서 실행되는 저장 프로시저를 통해 변환해야 합니다. 마지막으로 분석을 위해 데이터를 분석 플랫폼으로 푸시해야 합니다.
- 이 시나리오에서 Tailwind Traders는 연결된 서비스를 통해 다른 원본에서 데이터를 수집하고 요청 시 컴퓨팅 서비스를 실행하기 위해 연결 문자열을 저장할 수 있습니다.
- Tailwind Traders의 통합 런타임 환경인 Azure SSIS의 연결된 서비스를 통해 필요한 데이터 변환을 위해 저장 프로시저를 실행할 수 있습니다.
- 데이터 세트 구성 요소는 활동 개체에서 사용되며 활동 개체에는 변환 논리가 포함됩니다.
- 함께 그룹화되는 모든 활동인 파이프라인을 트리거할 수 있습니다.
- Azure Data Factory를 사용하여 Power BI 또는 Machine Learning 등의 기술에서 사용하는 최종 데이터 세트를 게시할 수 있습니다.
Azure Data Factory를 사용할 때 고려해야 할 사항
다음 결정 기준을 토대로 Azure Data Factory를 평가하고 서비스가 Tailwind Traders에 대한 데이터 통합 솔루션에 어떻게 도움이 되는지 고려합니다.
- 데이터 통합 요구 사항을 고려합니다. Azure Data Factory는 빅 데이터 커뮤니티와 SSIS(SQL Server Integration Services)를 사용하는 관계형 데이터 웨어하우징 커뮤니티의 두 커뮤니티를 제공합니다. 조직의 데이터 요구 사항에 따라 Azure Data Factory를 사용하여 클라우드에서 파이프라인을 설정할 수 있습니다. 클라우드 및 온-프레미스 데이터 서비스에 둘 모두에서 데이터에 액세스할 수 있습니다.
- 리소스 코딩을 고려합니다. 파이프라인을 설정하는 데 그래픽 인터페이스를 선호하는 경우 Azure Data Factory 작성 및 모니터링 도구가 이 요구 사항에 적합합니다. Azure Data Factory는 데이터 원본 작업을 위한 로우 코드(low code)/노 코드(no code) 프로세스를 제공합니다.
- 여러 데이터 원본 지원을 고려합니다. Azure Data Factory는 90개 이상의 커넥터를 지원하여 서로 다른 데이터 원본과 통합합니다.
- 서버리스 인프라를 고려합니다. 데이터 통합을 위해 완전 관리형 서버리스 솔루션을 사용하면 이점이 있습니다. 서버를 유지 관리, 구성 또는 배포할 필요가 없으며 변동하는 워크로드를 스케일링할 수 있습니다.