다음을 통해 공유


Teradata 마이그레이션을 넘어 Microsoft Azure에서 최신 데이터 웨어하우스 구현

이 문서는 Teradata에서 Azure Synapse Analytics로 마이그레이션하는 방법에 대한 지침을 제공하는 7부 시리즈 중 7부입니다. 이 문서는 최신 데이터 웨어하우스를 구현하기 위한 모범 사례에 중점을 두고 있습니다.

Azure로의 데이터 웨어하우스 마이그레이션을 넘어

기존 데이터 웨어하우스를 Azure Synapse Analytics로 마이그레이션하는 주요 이유는 전 세계적으로 안전하고 확장 가능하며 저렴한 클라우드 네이티브 종량제 분석 데이터베이스를 활용하는 것입니다. Azure Synapse를 사용하면 마이그레이션된 데이터 웨어하우스를 전체 Microsoft Azure 분석 에코시스템과 통합하여 다른 Microsoft 기술을 활용하고 마이그레이션된 데이터 웨어하우스를 최신화할 수 있습니다. 이러한 기술에는 다음이 포함됩니다.

  • 비용 효율적인 데이터 수집, 스테이징, 정리 및 변환을 위한 Azure Data Lake Storage. Data Lake Storage는 빠르게 성장하는 준비 테이블이 차지하는 데이터 웨어하우스 용량을 확보할 수 있습니다.

  • Azure Data Factory는 클라우드, 온-프레미스 데이터 원본, 스트리밍 데이터에 대한 커넥터가 있는 협업 IT 및 셀프 서비스 데이터 통합을 위한 것입니다.

  • 여러 기술에서 일관되고 신뢰할 수 있는 데이터를 공유하는 Common Data Model에는 다음이 포함됩니다.

    • Azure Synapse
    • Azure Synapse Spark
    • Azure HDInsight
    • Power BI
    • Adobe 고객 환경 플랫폼
    • Azure IoT
    • Microsoft ISV 파트너
  • Microsoft 데이터 과학 기술에는 다음이 포함됩니다.

    • Azure Machine Learning 스튜디오
    • Azure Machine Learning
    • Azure Synapse Spark(서비스로서의 Spark)
    • Jupyter 노트북
    • RStudio
    • ML.NET
    • 데이터 과학자가 Azure Synapse 데이터를 사용하여 기계 학습 모델을 대규모로 학습할 수 있도록 하는 Apache Spark용 .NET.
  • 대용량 데이터를 처리하고, PolyBase를 사용하여 논리 데이터 웨어하우스를 만들어 Azure Synapse 데이터와 빅 데이터를 결합하는 Azure HDInsight.

  • Azure Event Hubs, Azure Stream Analytics, Apache Kafka는 Azure Synapse에서 라이브 스트리밍 데이터와 통합합니다.

빅 데이터의 성장으로 인해 Azure Synapse에서 사용할 사용자 지정 학습 기계 학습 모델을 사용하도록 설정하기 위한 기계 학습에 대한 수요가 급증했습니다. 기계 학습 모델을 사용하면 데이터베이스 내 분석을 이벤트 기반 및 주문형 방식으로 대규모 일괄 처리로 실행할 수 있습니다. 여러 BI 도구 및 애플리케이션에서 Azure Synapse의 데이터베이스 내 분석을 활용하는 기능은 일관된 예측 및 권장 사항도 보장합니다.

또한 Azure Synapse를 Azure의 Microsoft 파트너 도구와 통합하여 가치 실현 시간을 단축할 수 있습니다.

Azure Synapse로 마이그레이션한 후 Microsoft 분석 에코시스템의 기술을 활용하여 데이터 웨어하우스를 최신화하는 방법을 자세히 살펴보겠습니다.

Data Lake Storage 및 Data Factory로 데이터 스테이징 및 ETL 처리 오프로드

디지털 변환은 캡처 및 분석을 위한 새로운 데이터의 급류를 생성하여 기업에 핵심 과제를 만들었습니다. 좋은 예는 온라인 트랜잭션 처리(OLTP) 시스템을 열어 모바일 디바이스에서 액세스를 제공함으로써 만들어진 트랜잭션 데이터입니다. 이 데이터의 대부분은 데이터 웨어하우스로 이동하며, 주요 원본은 OLTP 시스템입니다. 이제 직원보다 고객이 트랜잭션 속도를 주도함에 따라 데이터 웨어하우스 준비 테이블의 데이터 볼륨이 빠르게 증가하고 있습니다.

IoT(사물 인터넷)과 같은 새로운 데이터 원본과 함께 회사로 데이터가 빠르게 유입됨에 따라 회사는 데이터 통합 ETL 처리를 스케일 업할 방법을 찾아야 합니다. 한 가지 방법은 데이터 웨어하우스 최신화 프로그램의 일부로 수집, 데이터 정리, 변환 및 통합을 데이터 레이크로 오프로드하고 대규모로 데이터를 처리하는 것입니다.

데이터 웨어하우스를 Azure Synapse로 마이그레이션하면 Microsoft는 Data Lake Storage에서 데이터를 수집하고 준비하여 ETL 처리를 최신화할 수 있습니다. 그런 다음, PolyBase를 사용하여 병렬로 Azure Synapse Analytics에 로드하기 전에 Data Factory를 사용하여 데이터를 정리, 변환 및 통합할 수 있습니다.

ELT 전략의 경우 데이터 볼륨 또는 빈도가 증가함에 따라 쉽게 확장할 수 있도록 ELT 처리를 Data Lake Storage로 오프로드하는 것이 좋습니다.

Microsoft Azure Data Factory

Azure Data Factory는 확장성이 뛰어난 ETL 및 ELT 처리를 위한 사용한 만큼 지불하는 하이브리드 데이터 통합 서비스입니다. Data Factory는 코드 없이 데이터 통합 파이프라인을 빌드할 수 있는 웹 기반 UI를 제공합니다. Data Factory를 사용하여 다음을 수행할 수 있습니다.

  • 코드 없이 확장 가능한 데이터 통합 파이프라인을 빌드합니다.

  • 대규모 데이터를 쉽게 수집합니다.

  • 사용한 만큼만 요금을 지불합니다.

  • 온-프레미스, 클라우드 및 SaaS 기반 데이터 원본에 연결합니다.

  • 클라우드 및 온-프레미스 데이터를 대규모로 수집, 이동, 정리, 변환, 통합 및 분석합니다.

  • 온-프레미스와 클라우드 모두에 있는 데이터 저장소에 걸쳐 있는 파이프라인을 원활하게 작성, 모니터링 및 관리합니다.

  • 고객 성장에 맞춰 종량제 규모 스케일 아웃을 지원합니다.

코드를 작성하지 않고 이러한 기능을 사용하거나 Data Factory 파이프라인에 사용자 지정 코드를 추가할 수 있습니다. 다음 스크린샷은 Data Factory 파이프라인의 예를 보여 줍니다.

Screenshot of an example of a Data Factory pipeline.

Data Factory를 사용하면 코드 없이 확장 가능한 데이터 통합 파이프라인을 빌드할 수 있습니다.

다음을 포함한 여러 위치에서 Data Factory 파이프라인 개발을 구현합니다.

  • Microsoft Azure Portal.

  • Microsoft Azure PowerShell.

  • 다국어 SDK를 사용하여 .NET 및 Python에서 프로그래매틱 방식으로.

  • ARM(Azure Resource Manager) 템플릿

  • Rest API

Data Factory는 온-프레미스, 클라우드 및 SaaS 데이터에 연결할 수 있습니다.

코드 작성을 기본 설정하는 개발자와 데이터 과학자는 해당 프로그래밍 언어에 사용할 수 있는 SDK(소프트웨어 개발 키트)를 사용하여 Java, Python 및 .NET에서 Data Factory 파이프라인을 쉽게 작성할 수 있습니다. Data Factory 파이프라인은 온-프레미스 데이터 센터, Microsoft Azure, 기타 클라우드 및 SaaS 제품에 있는 데이터를 연결, 수집, 정리, 변환 및 분석할 수 있기 때문에 하이브리드 데이터 파이프라인이 될 수 있습니다.

Data Factory 파이프라인을 개발하여 데이터를 통합 및 분석한 후에는 해당 파이프라인을 전역으로 배포하고 일괄 처리 실행되도록 예약하거나 요청 시 서비스로 호출하거나 이벤트 기반으로 실시간으로 실행할 수 있습니다. Data Factory 파이프라인은 또한 하나 이상의 실행 엔진에서 실행되고 실행을 모니터링하여 성능을 보장하고 오류를 추적할 수 있습니다.

Azure Data Factory에서 파이프라인은 데이터 통합 및 분석을 제어합니다. Data Factory는 IT 전문가를 대상으로 하는 엔터프라이즈급 데이터 통합 소프트웨어이며 비즈니스 사용자를 위한 데이터 랭글링 기능이 있습니다.

사용 사례

Data Factory는 다음과 같은 여러 사용 사례를 지원합니다.

  • 클라우드 및 온-프레미스 데이터 원본의 데이터를 준비, 통합 및 보강하여 Microsoft Azure Synapse에서 마이그레이션된 데이터 웨어하우스 및 데이터 마트를 채웁니다.

  • 클라우드 및 온-프레미스 데이터 원본의 데이터를 준비, 통합 및 보강하여 기계 학습 모델 개발 및 분석 모델 재학습에 사용할 학습 데이터를 생성합니다.

  • 데이터 준비 및 분석을 조정하여 감정 분석과 같이 데이터를 일괄 처리하고 분석하기 위한 예측 및 규정 분석 파이프라인을 만듭니다. 분석 결과에 따라 조치를 취하거나 결과로 데이터 웨어하우스를 채웁니다.

  • Azure Cosmos DB와 같은 작동 데이터 저장소를 기반으로 Azure 클라우드에서 실행되는 데이터 기반 비즈니스 애플리케이션에 대한 데이터를 준비, 통합 및 보강합니다.

데이터 과학에서 학습 데이터 집합을 빌드하여 기계 학습 모델을 개발합니다.

데이터 원본

Data Factory를 사용하면 클라우드 및 온-프레미스 데이터 원본 모두에서 커넥터를 사용할 수 있습니다. 자체 호스팅 통합 런타임이라고 하는 에이전트 소프트웨어는 온-프레미스 데이터 원본에 안전하게 액세스하고 안전하고 확장 가능한 데이터 전송을 지원합니다.

Azure Data Factory를 사용하여 데이터 변환

Data Factory 파이프라인 내에서 이러한 원본의 모든 형식의 데이터를 수집, 정리, 변환, 통합 및 분석할 수 있습니다. 데이터는 구조화되거나, JSON 또는 Avro와 같이 반구조화되거나, 구조화되지 않을 수 있습니다.

전문 ETL 개발자는 코드를 작성하지 않고도 Data Factory 매핑 데이터 흐름을 사용하여 여러 형식을 필터링, 분할, 조인, 조회, 피벗, 피벗 해제, 정렬, 통합 및 집계할 수 있습니다. 또한 Data Factory는 대체 키, 삽입, upsert, 업데이트, 테이블 다시 만들기, 테이블 자르기와 같은 다중 쓰기 처리 옵션, 싱크라고도 하는 여러 형식의 대상 데이터 저장소를 지원합니다. ETL 개발자는 데이터 열에 창을 배치해야 하는 시계열 집계를 포함하여 집계를 만들 수도 있습니다.

전문 ETL 개발자는 Data Factory 매핑 데이터 흐름을 사용하여 코드를 작성할 필요 없이 데이터를 정리, 변환, 통합할 수 있습니다.

Data Factory 파이프라인에서 데이터를 작업으로 변환하는 매핑 데이터 흐름을 실행할 수 있으며, 필요한 경우 단일 파이프라인에 여러 매핑 데이터 흐름을 포함할 수 있습니다. 이러한 방식으로 까다로운 데이터 변환 및 통합 작업을 결합할 수 있는 더 작은 매핑 데이터 흐름으로 분할하여 복잡성을 관리할 수 있습니다. 그리고 필요할 때 사용자 지정 코드를 추가할 수 있습니다. 이 기능 외에도 Data Factory 매핑 데이터 흐름에는 다음 기능이 포함됩니다.

  • 식을 정의하여 데이터를 정리 및 변환하고 집계를 계산하고 데이터를 보강합니다. 예를 들어 이러한 식은 날짜 필드에서 기능 엔지니어링을 수행하여 여러 필드로 나누어 기계 학습 모델 개발 중에 학습 데이터를 만들 수 있습니다. 수학, temporal, 분할, 병합, 문자열 연결, 조건, 패턴 일치, 바꾸기 및 기타 여러 함수를 포함하는 풍부한 함수 집합에서 식을 구성할 수 있습니다.

  • 데이터 변환 파이프라인이 데이터 원본의 스키마 변경으로 인한 영향을 피할 수 있도록 스키마 드리프트를 자동으로 처리합니다. 이 기능은 디바이스가 업그레이드되거나 IoT 데이터를 수집하는 게이트웨이 디바이스에서 판독값을 놓친 경우 예고 없이 스키마 변경이 발생할 수 있는 스트리밍 IoT 데이터에 특히 중요합니다.

  • 대규모로 병렬로 변환을 실행할 수 있도록 데이터를 분할합니다.

  • 스트리밍 데이터를 검사하여 변환 중인 스트림의 메타데이터를 봅니다.

Data Factory는 스트리밍 데이터와 같은 인바운드 데이터의 스키마 변경을 자동으로 검색하고 관리하는 기능을 지원합니다.

다음 스크린샷은 Data Factory 매핑 데이터 흐름의 예를 보여 줍니다.

Screenshot of an example of a Data Factory mapping dataflow.

데이터 엔지니어는 개발 중에 디버그 기능을 사용하도록 설정하여 데이터 품질을 프로파일링하고 개별 데이터 변환 결과를 볼 수 있습니다.

Data Factory는 데이터를 분할하여 ETL 처리를 대규모로 실행할 수도 있습니다.

필요한 경우 코드가 포함된 연결된 서비스를 파이프라인에 추가하여 Data Factory 변환 및 분석 기능을 확장할 수 있습니다. 예를 들어 Azure Synapse Spark 풀 Notebook에는 학습된 모델을 사용하여 매핑 데이터 흐름에 의해 통합된 데이터의 점수를 매기는 Python 코드가 포함될 수 있습니다.

HDInsight의 Data Lake Storage, Azure Synapse 또는 Hive 테이블과 같은 하나 이상의 데이터 저장소에 Data Factory 파이프라인 내에서 통합 데이터 및 분석 결과를 저장할 수 있습니다. 다른 작업을 호출하여 Data Factory 분석 파이프라인에서 생성된 인사이트에 대해 작업할 수도 있습니다.

Data Factory를 사용하면 고유한 코드를 작성하고 파이프라인의 일부로 실행할 수 있으므로 Data Factory 파이프라인은 확장 가능합니다.

Spark를 활용하여 데이터 통합 확장

런타임 시 Data Factory는 내부적으로 Microsoft의 Spark as a Service 제공 사항인 Azure Synapse Spark 풀을 사용하여 Azure 클라우드에서 데이터를 정리하고 통합합니다. 클릭 스트림 데이터와 같은 대용량, 고속 데이터를 대규모로 정리, 통합 및 분석할 수 있습니다. Microsoft의 의도는 다른 Spark 배포판에서도 Data Factory 파이프라인을 실행하는 것입니다. Spark에서 ETL 작업을 실행하는 것 외에도 Data Factory는 Pig 스크립트 및 Hive 쿼리를 호출하여 HDInsight에 저장된 데이터에 액세스하고 변환할 수 있습니다.

데이터 랭글링을 통해 비즈니스 사용자(시민 데이터 통합자 및 데이터 엔지니어라고도 함)는 플랫폼을 사용하여 코드를 작성하지 않고도 대규모 데이터를 시각적으로 검색, 탐색 및 준비할 수 있습니다. 이 Data Factory 기능은 사용이 간편하며 셀프 서비스 비즈니스 사용자가 드롭다운 변환이 있는 스프레드시트 스타일 UI를 사용하여 데이터를 준비하고 통합하는 Microsoft Excel Power Query 또는 Microsoft Power BI 데이터 흐름과 유사합니다. 다음 스크린샷은 Data Factory 랭글링 데이터 흐름의 예를 보여 줍니다.

Screenshot of an example of Data Factory wrangling dataflows.

Excel 및 Power BI와 달리 Data Factory 데이터 흐름 랭글링은 파워 쿼리를 사용하여 M 코드를 생성한 다음, 클라우드 규모 실행을 위한 대규모 병렬 메모리 내 Spark 작업으로 변환합니다. Data Factory에서 매핑 데이터 흐름과 랭글링 데이터 흐름을 결합하면 전문 ETL 개발자와 비즈니스 사용자가 협업을 통해 공통 비즈니스 목적을 위해 데이터를 준비, 통합 및 분석할 수 있습니다. 앞의 Data Factory 매핑 데이터 흐름 다이어그램은 Data Factory와 Azure Synapse Spark 풀 Notebooks를 동일한 Data Factory 파이프라인에서 결합할 수 있는 방법을 보여 줍니다. Data Factory의 매핑 및 랭글링 데이터 흐름의 조합은 IT 및 비즈니스 사용자가 각각이 만든 데이터 흐름을 계속 인식하도록 돕고 데이터 흐름 재사용을 지원하여 재창조를 최소화하고 생산성과 일관성을 최대화합니다.

Data Factory는 랭글링 데이터 흐름과 매핑 데이터 흐름을 모두 지원하므로 비즈니스 사용자와 IT 사용자는 공통 플랫폼에서 데이터를 공동으로 통합할 수 있습니다.

데이터 정리 및 변환 외에도 Data Factory는 동일한 파이프라인에서 데이터 통합 및 분석을 결합할 수 있습니다. Data Factory를 사용하여 데이터 통합 및 분석 파이프라인을 모두 만들 수 있습니다. 후자는 전자의 확장입니다. 파이프라인에 분석 모델을 드롭하여 예측 또는 권장 사항을 위한 깨끗하고 통합된 데이터를 만드는 분석 파이프라인을 만들 수 있습니다. 그런 다음, 예측 또는 권장 사항에 따라 즉시 조치를 취하거나 데이터 웨어하우스에 저장하여 BI 도구에서 볼 수 있는 새로운 인사이트와 권장 사항을 제공할 수 있습니다.

데이터 일괄 처리 점수를 매기기 위해 Data Factory 파이프라인 내에서 서비스로 호출하는 분석 모델을 개발할 수 있습니다. Azure Synapse Spark 풀 Notebooks 또는 RStudio의 R을 사용하는 Azure Machine Learning SDK 또는 Azure Machine Learning 스튜디오를 통해 코드 없이 분석 모델을 개발할 수 있습니다. Azure Synapse Spark 풀 Notebooks에서 Spark 기계 학습 파이프라인을 실행하면 분석이 대규모로 발생합니다.

HDInsight의 Data Lake Storage, Azure Synapse 또는 Hive 테이블과 같은 하나 이상의 데이터 저장소에 통합 데이터 및 Data Factory 분석 파이프라인 결과를 저장할 수 있습니다. 다른 작업을 호출하여 Data Factory 분석 파이프라인에서 생성된 인사이트에 대해 작업할 수도 있습니다.

일관되고 신뢰할 수 있는 데이터를 공유하기 위한 Lake 데이터베이스 사용

모든 데이터 통합 설정의 주요 목표는 데이터를 한 번 통합하고 데이터 웨어하우스뿐만 아니라 모든 분야에서 재사용하는 기능입니다. 예를 들어 데이터 과학에서 통합 데이터를 사용하려고 할 수 있습니다. 재사용은 재창조를 방지하고 모든 사람이 신뢰할 수 있는 일관되고 일반적으로 이해되는 데이터를 보장합니다.

Common Data Model은 기업 전체에서 공유하고 재사용할 수 있는 핵심 데이터 엔터티를 설명합니다. 재사용을 위해 Common Data Model은 논리적 데이터 엔터티를 설명하는 공통 데이터 이름 및 정의 세트를 설정합니다. 예를 들어 일반적인 데이터 이름에는 고객, 계정, 제품, 공급자, 주문, 결제 및 반품이 있습니다. IT 및 비즈니스 전문가는 데이터 통합 소프트웨어를 사용하여 공통 데이터 자산을 만들기 및 저장하여 어디에서나 재사용을 최대화하고 일관성을 유지할 수 있습니다.

Azure Synapse는 레이크의 데이터를 표준화할 수 있도록 하는 업계별 데이터베이스 템플릿을 제공합니다. Lake 데이터베이스 템플릿은 사전 정의된 사업 영역에 대한 스키마를 제공하여 데이터를 구조화된 방식으로 Lake 데이터베이스에 로드할 수 있도록 합니다. 데이터 통합 소프트웨어를 사용하여 레이크 데이터베이스 공통 데이터 자산을 만들 때 애플리케이션 및 분석 시스템에서 사용할 수 있도록 자체적으로 설명하는 신뢰할 수 있는 데이터가 만들어집니다. Data Factory를 사용하여 Data Lake Storage에서 공통 데이터 자산을 만들 수 있습니다.

Data Lake Storage는 Microsoft Azure Synapse, Azure Machine Learning, Azure Synapse Spark 및 HDInsight를 뒷받침하는 공유 스토리지입니다.

Power BI, Azure Synapse Spark, Azure Synapse 및 Azure Machine Learning은 공통 데이터 자산을 사용할 수 있습니다. 다음 다이어그램은 Azure Synapse에서 레이크 데이터베이스를 사용하는 방법을 보여 줍니다.

Screenshot showing how a lake database can be used in Azure Synapse.

데이터를 통합하여 공유 스토리지에 레이크 데이터베이스 논리적 엔터티를 만들어 공통 데이터 자산의 재사용을 최대화합니다.

Azure에서 Microsoft 데이터 과학 기술과 통합

데이터 웨어하우스를 현대화할 때의 또 다른 주요 목표는 경쟁 우위를 위한 인사이트를 생성하는 것입니다. 마이그레이션된 데이터 웨어하우스를 Azure의 Microsoft 및 타사 데이터 과학 기술과 통합하여 인사이트를 생성할 수 있습니다. 다음 섹션에서는 최신 데이터 웨어하우스 환경에서 Azure Synapse와 함께 사용하는 방법을 확인하기 위해 Microsoft에서 제공하는 기계 학습 및 데이터 과학 기술에 대해 설명합니다.

Azure의 데이터 과학을 위한 Microsoft 기술

Microsoft는 고급 분석을 지원하는 다양한 기술을 제공합니다. 이러한 기술을 통해 기계 학습을 사용하여 예측 분석 모델을 빌드하거나 딥 러닝을 사용하여 비정형 데이터를 분석할 수 있습니다. 기술에는 다음이 포함됩니다.

  • Azure Machine Learning 스튜디오

  • Azure Machine Learning

  • Azure Synapse Spark 풀 Notebooks

  • ML.NET(Visual Studio용 API, CLI 또는 ML.NET Model Builder)

  • Apache Spark용 .NET

데이터 과학자는 RStudio(R) 및 Jupyter Notebooks(Python)를 사용하여 분석 모델을 개발하거나 Keras 또는 TensorFlow와 같은 프레임워크를 사용할 수 있습니다.

하위 코드/코드 없음 방법을 사용하거나 Python, R 및 .NET과 같은 프로그래밍 언어를 사용하여 기계 학습 모델을 개발합니다.

Azure Machine Learning 스튜디오

Azure Machine Learning 스튜디오는 끌어서 놓기, 웹 기반 UI를 사용하여 예측 분석을 빌드, 배포 및 공유할 수 있는 완전 관리형 클라우드 서비스입니다. 다음 스크린샷은 Azure Machine Learning 스튜디오 UI를 보여 줍니다.

Screenshot showing predictive analysis in the Azure Machine Learning studio UI.

Azure Machine Learning

Azure Machine Learning은 데이터를 빠르게 준비하고 기계 학습 모델을 학습 및 배포할 수 있도록 하는 Python용 SDK 및 서비스를 제공합니다. PyTorch, TensorFlow, scikit-learn 또는 Spark MLlib(Spark용 기계 학습 라이브러리)와 같은 오픈 소스 프레임워크와 함께 Jupyter Notebooks를 사용하여 Azure Notebooks에서 Azure Machine Learning을 사용할 수 있습니다. Azure Machine Learning은 여러 알고리즘을 자동으로 테스트하여 가장 정확한 알고리즘을 식별하여 모델 개발을 촉진하는 AutoML 기능을 제공합니다.

Azure Machine Learning은 여러 오픈 소스 프레임워크를 사용하여 Machine Learning 모델을 개발하기 위한 SDK를 제공합니다.

또한 Azure Machine Learning을 사용하여 엔드투엔드 워크플로를 관리하고, 클라우드에서 프로그래밍 방식으로 크기 조정하고, 클라우드와 에지 모두에 모델을 배포하는 기계 학습 파이프라인을 빌드할 수 있습니다. Azure Machine Learning에는 Azure Portal에서 프로그래밍 방식으로 또는 수동으로 만들 수 있는 논리적 공간인 작업 영역이 포함되어 있습니다. 이러한 작업 영역은 컴퓨팅 대상, 실험, 데이터 저장소, 학습된 기계 학습 모델, Docker 이미지, 배포된 서비스를 모두 한 곳에서 유지하여 팀이 함께 작업할 수 있도록 합니다. Visual Studio for AI 확장과 함께 Visual Studio에서 Azure Machine Learning을 사용할 수 있습니다.

작업 영역에서 관련 데이터 저장소, 실험, 학습된 모델, Docker 이미지, 배포된 서비스를 구성하고 관리합니다.

Azure Synapse Spark 풀 Notebooks

Azure Synapse Spark 풀 Notebook은 Azure에 최적화된 Apache Spark 서비스입니다. Azure Synapse Spark 풀 Notebooks 사용:

  • 데이터 엔지니어는 Data Factory를 사용하여 확장 가능한 데이터 준비 작업을 빌드하고 실행할 수 있습니다.

  • 데이터 과학자는 Scala, R, Python, Java 및 SQL과 같은 언어로 빌드된 Notebooks를 사용하여 기계 학습 모델을 대규모로 빌드하고 실행하여 결과를 시각화할 수 있습니다.

Azure Synapse Spark는 Microsoft에서 제공하는 동적으로 확장 가능한 Spark as a Service이며, Spark는 데이터 준비, 모델 개발 및 배포된 모델 실행의 확장 가능한 실행을 제공합니다.

Azure Synapse Spark 풀 Notebooks에서 실행되는 작업은 Azure Blob Storage, Data Lake Storage, Azure Synapse, HDInsight 및 Apache Kafka와 같은 스트리밍 데이터 서비스에서 대규모로 데이터를 검색, 처리 및 분석할 수 있습니다.

Azure Synapse Spark는 Azure의 다양한 Microsoft 분석 에코시스템 데이터 저장소에 있는 데이터에 액세스할 수 있습니다.

Azure Synapse Spark 풀 Notebooks는 자동 크기 조정 및 자동 종료를 지원하여 TCO(총 소유 비용)를 줄입니다. 데이터 과학자는 MLflow 오픈 소스 프레임워크를 사용하여 기계 학습 수명 주기를 관리할 수 있습니다.

ML.NET

ML.NET은 Windows, Linux, macOS용 오픈 소스 플랫폼 간 기계 학습 프레임워크입니다. Microsoft는 .NET 개발자가 Visual Studio용 ML.NET Model Builder와 같은 기존 도구를 사용하여 사용자 지정 기계 학습 모델을 개발하고 .NET 애플리케이션에 통합할 수 있도록 ML.NET을 만들었습니다.

Microsoft는 기계 학습 기능을 .NET 개발자로 확장했습니다.

Apache Spark용 .NET

Apache Spark용 .NET은 R, Scala, Python 및 Java를 넘어 Spark 지원을 .NET으로 확장하고 모든 Spark API에서 .NET 개발자가 Spark에 액세스할 수 있도록 하는 것을 목표로 합니다. Apache Spark용 .NET은 현재 HDInsight의 Apache Spark에서만 사용할 수 있지만 Microsoft는 Apache Spark용 .NET을 Azure Synapse Spark 풀 Notebooks에서 사용할 수 있도록 할 계획입니다.

데이터 웨어하우스와 함께 Azure Synapse Analytics 사용

기계 학습 모델을 Azure Synapse와 결합하려면 다음을 수행할 수 있습니다.

  • 스트리밍 데이터에서 일괄 처리 또는 실시간으로 기계 학습 모델을 사용하여 새로운 인사이트를 생성하고 Azure Synapse에서 이미 알고 있는 정보에 이러한 인사이트를 추가합니다.

  • Azure Synapse Analytics의 데이터를 사용하여 다른 애플리케이션과 같은 다른 곳에서 배포하기 위한 새로운 예측 모델을 개발하고 학습합니다.

  • 다른 곳에서 학습된 모델을 포함하여 기계 학습 모델을 Azure Synapse에 배포하여 데이터 웨어하우스의 데이터를 분석하고 새로운 비즈니스 가치를 창출합니다.

Azure Synapse의 데이터를 사용하여 Azure Synapse Spark 풀 Notebooks에서 기계 학습 모델을 대규모로 학습, 테스트, 평가 및 실행합니다.

데이터 과학자는 Azure Machine Learning과 함께 RStudio, Jupyter Notebooks 및 Azure Synapse Spark 풀 Notebooks를 사용하여 Azure Synapse의 데이터를 통해 Azure Synapse Spark 풀 Notebooks에서 대규모로 실행되는 기계 학습 모델을 개발할 수 있습니다. 예를 들어 데이터 과학자는 감독되지 않는 모델을 만들어 고객을 세분화하여 다양한 마케팅 캠페인을 추진할 수 있습니다. 감독되는 기계 학습을 사용하여 고객의 변동 경향을 예측하거나 가치를 높이려는 고객에게 차선책을 권장하는 것과 같이 특정 결과를 예측하도록 모델을 학습시킵니다. 다음 다이어그램은 Azure Machine Learning에 Azure Synapse를 사용하는 방법을 보여 줍니다.

Screenshot of an Azure Synapse train and predict model.

다른 시나리오에서는 소셜 네트워크 또는 리뷰 웹 사이트 데이터를 Data Lake Storage로 수집한 다음, 자연어 처리를 사용하여 Azure Synapse Spark 풀 Notebook에서 대규모로 데이터를 준비 및 분석함으로써 제품 또는 브랜드에 대한 고객 감정을 채점할 수 있습니다. 그런 다음, 해당 점수를 데이터 웨어하우스에 추가할 수 있습니다. 빅 데이터 분석을 사용하여 부정적인 감정이 제품 판매에 미치는 영향을 이해함으로써 데이터 웨어하우스에서 이미 알고 있는 내용을 추가할 수 있습니다.

Azure에서 기계 학습을 사용하여 일괄 처리 또는 실시간으로 새로운 인사이트를 생성하고 데이터 웨어하우스에서 알고 있는 정보에 추가합니다.

라이브 스트리밍 데이터를 Azure Synapse Analytics에 통합

최신 데이터 웨어하우스에서 데이터를 분석할 때 스트리밍 데이터를 실시간으로 분석하고 데이터 웨어하우스의 기록 데이터와 결합할 수 있어야 합니다. IoT 데이터를 제품 또는 자산 데이터와 결합하는 것이 한 예입니다.

데이터 웨어하우스를 IoT 디바이스 또는 클릭스트림의 스트리밍 데이터와 통합합니다.

데이터 웨어하우스를 Azure Synapse로 성공적으로 마이그레이션했으면 Azure Synapse의 추가 기능을 활용하여 데이터 웨어하우스 현대화 연습의 일부로 라이브 스트리밍 데이터 통합을 도입할 수 있습니다. 이렇게 하려면 Event Hubs, Apache Kafka와 같은 기타 기술 또는 스트리밍 데이터 원본을 지원하는 경우 기존 ETL 도구를 통해 스트리밍 데이터를 수집합니다. Data Lake Storage에 데이터를 저장합니다. 그런 다음, PolyBase를 사용하여 Azure Synapse에서 외부 테이블을 만들고 Data Lake Storage로 스트리밍되는 데이터를 가리키도록 하여 데이터 웨어하우스에 실시간 스트리밍 데이터에 대한 액세스를 제공하는 새 테이블이 포함되도록 합니다. Azure Synapse에 액세스할 수 있는 모든 BI 도구에서 표준 T-SQL을 사용하여 데이터가 데이터 웨어하우스에 있는 것처럼 외부 테이블을 쿼리합니다. 또한 스트리밍 데이터를 기록 데이터가 있는 다른 테이블에 결합하여 비즈니스 사용자가 데이터에 더 쉽게 액세스할 수 있도록 라이브 스트리밍 데이터를 기록 데이터에 결합하는 보기를 만들 수 있습니다.

Event Hubs 또는 Apache Kafka에서 스트리밍 데이터를 Data Lake Storage로 수집하고 PolyBase 외부 테이블을 사용하여 Azure Synapse의 데이터에 액세스합니다.

다음 다이어그램에서 Azure Synapse의 실시간 데이터 웨어하우스는 Data Lake Storage의 스트리밍 데이터와 통합됩니다.

Screenshot of Azure Synapse with streaming data in Data Lake Storage.

PolyBase를 사용하여 논리적 데이터 웨어하우스 만들기

PolyBase를 사용하면 논리 데이터 웨어하우스를 만들어 여러 분석 데이터 저장소에 대한 사용자 액세스를 단순화할 수 있습니다. 많은 회사에서 데이터 웨어하우스 외에도 지난 몇 년 동안 "워크로드 최적화" 분석 데이터 저장소를 채택했습니다. Azure의 분석 플랫폼은 다음과 같습니다.

  • 빅 데이터 분석을 위한 Synapse Spark 풀 Notebook(서비스로서의 Spark)이 포함된 Azure Data Lake Storage

  • HDInsight(서비스로서의 Hadoop), 빅 데이터 분석에도 사용됩니다.

  • Azure Cosmos DB에서 수행할 수 있는 그래프 분석을 위한 NoSQL Graph 데이터베이스.

  • 이동 중인 데이터의 실시간 분석을 위한 Event Hubs 및 Stream Analytics.

고객, 공급자, 제품, 자산 등에 대한 일관되고 신뢰할 수 있는 데이터에 액세스해야 하는 이러한 플랫폼 또는 MDM(마스터 데이터 관리) 시스템에 상응하는 타사 플랫폼이 있을 수 있습니다.

PolyBase는 비즈니스 사용자가 쉽게 액세스할 수 있도록 Azure의 여러 기본 분석 데이터 저장소에 대한 액세스를 단순화합니다.

이러한 분석 플랫폼은 기업 내부 및 외부의 새로운 데이터 원본의 폭발적인 증가와 비즈니스 사용자의 새로운 데이터 캡처 및 분석 요구로 인해 등장했습니다. 새 데이터 원본은 다음과 같습니다.

  • IoT 센서 데이터 및 클릭스트림 데이터와 같은 컴퓨터 생성 데이터

  • 소셜 네트워크 데이터, 검토 웹 사이트 데이터, 고객 인바운드 이메일, 이미지, 동영상과 같은 사람이 생성한 데이터.

  • 공개 정부 데이터 및 날씨 데이터와 같은 기타 외부 데이터

이 새로운 데이터는 일반적으로 데이터 웨어하우스를 제공하고 종종 다음을 포함하는 구조화된 트랜잭션 데이터 및 기본 데이터 원본보다 좋습니다.

  • JSON, XML 또는 Avro와 같은 반구조화된 데이터.
  • 텍스트, 음성, 이미지 또는 동영상과 같은 비정형 데이터는 처리 및 분석이 더 복잡합니다.
  • 대용량 데이터, 고속 데이터 또는 둘 다.

그 결과 자연어 처리, 그래프 분석, 딥 러닝, 스트리밍 분석 또는 대량의 구조화된 데이터에 대한 복잡한 분석과 같이 보다 복잡한 새로운 종류의 분석이 등장했습니다. 이러한 종류의 분석은 일반적으로 데이터 웨어하우스에서 발생하지 않으므로 다음 다이어그램과 같이 다양한 형식의 분석 워크로드에 대해 다른 분석 플랫폼을 보는 것은 놀라운 일이 아닙니다.

Screenshot of different analytical platforms for different types of analytical workloads in Azure Synapse.

여러 분석 데이터 저장소의 데이터를 하나의 시스템에 있는 것처럼 보이게 만들고 이를 Azure Synapse Analytics에 결합하는 기능을 논리적 데이터 웨어하우스 아키텍처라고 합니다.

이러한 플랫폼은 새로운 인사이트를 생성하므로 일반적으로 새로운 인사이트를 Azure Synapse에서 이미 알고 있는 인사이트와 PolyBase에서 사용할 수 있는 인사이트를 결합해야 하는 요구 사항이 표시됩니다.

Azure Synapse 내에서 PolyBase 데이터 가상화를 사용하여 Azure Synapse의 데이터가 HDInsight, Azure Cosmos DB 또는 Stream Analytics 또는 Event Hubs에서 Data Lake Storage로 흐르는 스트리밍 데이터와 같은 다른 Azure 및 온-프레미스 분석 데이터 저장소의 데이터에 조인되는 논리 데이터 웨어하우스를 구현할 수 있습니다. 이 접근 방식은 Azure Synapse의 외부 테이블에 액세스하고 액세스하는 데이터가 여러 기본 분석 시스템에 저장되어 있음을 알 필요가 없는 사용자의 복잡성을 줄입니다. 다음 다이어그램은 비교적 단순하지만 여전히 강력한 UI 방법을 통해 액세스되는 복잡한 데이터 웨어하우스 구조를 보여 줍니다.

Screenshot showing an example of a complex data warehouse structure accessed through UI methods.

다이어그램은 Microsoft 분석 에코시스템의 다른 기술을 Azure Synapse의 논리 데이터 웨어하우스 아키텍처 기능과 결합할 수 있는 방법을 보여 줍니다. 예를 들어 데이터를 Data Lake Storage로 수집하고 Data Factory를 사용하여 데이터를 선별하여 Microsoft Lake 데이터베이스 논리적 데이터 엔터티를 나타내는 신뢰할 수 있는 데이터 제품을 만들 수 있습니다. 이 신뢰할 수 있고 일반적으로 이해되는 데이터는 Azure Synapse, Microsoft Azure Synapse Spark 풀 Notebooks 또는 Azure Cosmos DB와 같은 다양한 분석 환경에서 사용 및 재사용할 수 있습니다. 이러한 환경에서 생성된 모든 인사이트는 PolyBase에서 가능하게 만든 논리적 데이터 웨어하우스 데이터 가상화 계층을 통해 액세스할 수 있습니다.

논리적 데이터 웨어하우스 아키텍처는 데이터에 대한 비즈니스 사용자 액세스를 단순화하고 데이터 웨어하우스에서 이미 알고 있는 것에 새로운 가치를 추가합니다.

결론

데이터 웨어하우스를 Azure Synapse로 마이그레이션한 후 Microsoft 분석 에코시스템의 다른 기술을 활용할 수 있습니다. 이렇게 하면 데이터 웨어하우스를 현대화할 뿐만 아니라 다른 Azure 분석 데이터 저장소에서 생성된 인사이트를 통합 분석 아키텍처로 가져올 수 있습니다.

ETL 처리를 크기 조정하여 모든 형식의 데이터를 Data Lake Storage로 수집한 다음, Data Factory를 사용하여 대규모로 데이터를 준비 및 통합하여 신뢰할 수 있고 일반적으로 이해되는 데이터 자산을 생성할 수 있습니다. 이러한 자산은 데이터 웨어하우스에서 사용하고 데이터 과학자 및 기타 애플리케이션에서 액세스할 수 있습니다. 실시간 및 일괄 처리 지향 분석 파이프라인을 빌드하고 스트리밍 데이터에 대한 실시간 일괄 처리 및 서비스로서의 주문형 실행을 위한 기계 학습 모델을 만들 수 있습니다.

PolyBase 또는 COPY INTO를 사용하여 데이터 웨어하우스를 넘어 Azure의 여러 기본 분석 플랫폼에서 인사이트에 대한 액세스를 단순화할 수 있습니다. 이렇게 하려면 BI 도구 및 애플리케이션에서 스트리밍, 빅 데이터 및 기존 데이터 웨어하우스 인사이트에 대한 액세스를 지원하는 논리 데이터 웨어하우스에서 전체적이고 통합된 보기를 만듭니다.

데이터 웨어하우스를 Azure Synapse로 마이그레이션하면 Azure에서 실행되는 풍부한 Microsoft 분석 에코시스템을 활용하여 비즈니스에서 새로운 가치를 창출할 수 있습니다.

다음 단계

전용 SQL 풀로 마이그레이션하는 방법에 대한 자세한 내용은 Azure Synapse Analytics의 전용 SQL 풀로 데이터 웨어하우스 마이그레이션을 참조하세요.