Azure Synapse로 엔터프라이즈급 보안을 사용한 빅 데이터 분석

Azure Analysis Services
Azure Data Lake Storage
Azure Synapse Analytics

솔루션 아이디어

이 문서는 솔루션 아이디어입니다. 잠재적인 사용 사례, 대체 서비스, 구현 고려 사항 또는 가격 책정 지침과 같은 추가 정보로 콘텐츠를 확장하려면 GitHub 피드백을 제공하여 알려주세요.

이 문서에서 설명하는 솔루션은 Azure Synapse Analytics를 사용하여 다양한 원본의 데이터를 수집, 처리, 저장, 제공 및 시각화하는 최신 데이터 플랫폼을 구축하는 방법을 보여 줍니다.

아키텍처

Diagram showing the data flow in this solution. For a detailed explanation, see the following article text.

이 아키텍처의 Visio 파일을 다운로드합니다.

데이터 흐름

솔루션을 통한 데이터 흐름은 다음과 같습니다.

  1. Synapse 파이프라인 복사 작업에서 외부 관계형 데이터 웨어하우스, 반정형 데이터(예: 로그, 플랫 파일 및 xml) 및 기타 원본 시스템으로부터 원시 정형 데이터를 수집합니다. 그런 다음, 이 수집된 데이터는 Azure Data Lake Storage Gen2 위치에 저장됩니다. 또한 자체 호스팅 통합 런타임을 사용하면 온-프레미스 환경의 데이터 저장소와 클라우드 간의 복사 작업을 관리하고 실행할 수 있습니다.

  2. Azure Data Lake Storage Gen2에서 보안 스토리지를 제공합니다.

    • 외부 공격 취약성을 제한하려면 방화벽을 사용하여 스토리지 계정 액세스를 신뢰할 수 있는 Azure 서비스로 제한하는 것이 좋습니다.

    • Azure Storage 계정에 대한 프라이빗 엔드포인트를 사용하면 VNet(가상 네트워크)의 클라이언트에서 Private Link를 통해 데이터에 안전하게 액세스할 수 있습니다. 프라이빗 엔드포인트는 스토리지 계정 서비스에 대한 VNet 주소 공간의 IP 주소를 사용합니다. VNet의 클라이언트와 스토리지 계정 간의 네트워크 트래픽은 VNet과 Microsoft 백본 네트워크의 프라이빗 링크를 트래버스하여 공용 인터넷에 공개되지 않습니다.

  3. 데이터가 데이터 레이크에 수집되면 미사용 시 암호화됩니다. 사용자 고유의 고객 관리형 키를 사용하면 암호화 키를 추가로 보호하고 액세스 제어를 관리할 때 유연성을 높일 수 있습니다.

  4. 데이터가 Synapse 파이프라인을 사용하여 수집되고, Synapse Spark 풀 및 해당 Data Lake 기능을 사용하여 단계별로 처리됩니다. 데이터는 단계별 Azure Data Lake Storage Gen 2 디렉터리를 사용하여 Azure Storage 계정에 저장됩니다. 단계는 다음과 같습니다.

    1. Synapse 파이프라인 복사 작업에서 처음에 원본 시스템으로부터 데이터를 수집합니다. 이렇게 수집된 데이터는 데이터 레이크의 Bronze 디렉터리를 사용하여 원시 형식으로 저장됩니다.

    2. 다음으로, Synapse Spark 풀에서 데이터 품질 규칙을 실행하여 원시 데이터를 정리합니다. 그런 다음, 이렇게 보강된 데이터는 데이터 레이크의 Silver 디렉터리에 저장됩니다.

    3. 정리 프로세스 후 Spark 풀에서 필요한 정규화, 데이터 변환 및 Silver 디렉터리의 데이터에 대한 비즈니스 규칙을 적용합니다. 이렇게 변환된 데이터는 데이터 레이크의 Gold 디렉터리에 저장됩니다.

  5. Synapse Apache Spark-Synapse SQL 커넥터에서 다운스트림 애플리케이션 및 보고 서비스(예: Power BI)에서 사용할 수 있도록 정규화된 데이터를 Synapse SQL 풀로 푸시합니다. 이 커넥터는 서버리스 Apache Spark 풀과 Azure Synapse Analytics 작업 영역의 SQL 풀 간에 데이터를 최적으로 전송하도록 설계되었습니다.

  6. Power BI 서비스에서 DirectQuery 모드를 사용하여 Synapse SQL 풀에서 데이터를 안전하게 가져옵니다. 프라이빗 VNet의 가상 머신에 설치된 데이터 게이트웨이는 동일한 VNet의 프라이빗 엔드포인트를 통해 안전하게 연결하여 Power BI 서비스와 Synapse SQL 풀 간의 연결 플랫폼으로 작동합니다.

  7. 외부 애플리케이션에서 VNet에 연결된 적절한 프라이빗 엔드포인트에 액세스하여 Synapse 서버리스 풀 또는 전용 SQL 풀의 데이터에 액세스할 수 있습니다.

이 예제 솔루션에서 사용하는 여러 Azure 서비스 및 기능은 다음과 같습니다.

  • Azure Synapse Analytics는 이 예제 솔루션에서 데이터 수집, 처리 및 분석을 제공하는 데 사용되는 핵심 서비스입니다.

  • Azure Data Lake Storage(Gen2)Azure Storage 서비스를 기반으로 하며, 이 예제 솔루션의 다른 서비스에서 데이터를 저장하고 처리할 때 사용하는 데이터 레이크 기능을 제공합니다.

  • Synapse 파이프라인은 데이터를 원래 원본에서 데이터 레이크 스토리지 위치로 복사합니다.

  • Azure Synapse Analytics의 Apache Spark는 원본 위치에서 수집된 데이터에 대해 다른 처리 작업을 정리, 정규화 및 수행합니다.

  • 전용 SQL 풀(이전의 SQL DW)은 데이터가 처리 및 정규화되고 최종 사용자 및 애플리케이션에서 사용할 준비가 된 후 해당 데이터에 대한 데이터 웨어하우징 기능을 제공합니다.

  • 서버리스 SQL 풀을 사용하면 사용자가 처리되고 정규화된 데이터를 빠르게 쿼리하고 분석할 수 있습니다.

  • Azure Synapse 관리형 Virtual Network는 Azure Synapse 작업 영역을 위한 격리된 관리형 가상 네트워킹 환경을 만들어 작업 영역 리소스에 대한 네트워킹 구성을 관리할 필요가 없습니다.

  • Azure Synapse 관리형 프라이빗 엔드포인트는 Azure 리소스에 대한 프라이빗 링크를 설정하고, Microsoft 백본 네트워크만 사용하여 트래픽을 Azure Synapse 작업 영역과 다른 Azure 리소스 간에 라우팅합니다.

  • Azure VNet(Virtual Network)는 Azure Synapse 작업 영역의 일부가 아닌 Azure 리소스에 대한 개인 네트워킹 기능을 제공합니다. 이를 통해 리소스 간의 액세스, 보안 및 라우팅을 관리할 수 있습니다.

  • Azure 프라이빗 엔드포인트는 개인 IP 주소를 솔루션의 VNet에서 Azure 관리되는 서비스로 제공하여 서비스를 VNet에 효과적으로 연결합니다. 이를 통해 Azure Synapse 작업 영역과 다른 Azure 서비스(예: Azure Storage, Azure Cosmos DB, Azure SQL Database 또는 사용자 고유의 Azure Private Link 서비스) 간의 보안 네트워킹을 수행할 수 있습니다.

  • Power BI를 사용하면 사용자가 솔루션의 처리된 데이터를 사용하여 고급 분석을 수행하고 인사이트를 공유할 수 있습니다.

구성 요소

시나리오 정보

Azure Synapse Analytics는 데이터 통합, 엔터프라이즈 데이터 웨어하우징 및 빅 데이터 분석을 결합하여 대규모 조직에서 직면하는 가장 일반적인 데이터 문제를 처리할 수 있는 최신 데이터 플랫폼을 구축하는 데 도움이 됩니다. Azure Virtual Network를 사용하면 Azure 퍼블릭 클라우드 및 관리되는 네트워크에서 사용자 고유의 프라이빗 네트워크를 만들 수 있으며, Azure 프라이빗 엔드포인트를 사용하면 관리되는 클라우드 서비스를 이러한 프라이빗 네트워크에 안전하게 통합할 수 있습니다.

잠재적인 사용 사례

이 문서에서 설명하는 솔루션은 이러한 기술을 결합하여 조직에서 기대하는 높은 보안 표준을 충족하면서 다양한 원본에서 정형 및 반정형 데이터를 모두 수집, 처리, 저장, 제공 및 시각화할 수 있는 최신 데이터 플랫폼을 구축하는 방법을 보여 줍니다. 여기에 포함되는 일반적인 요구 사항 지원은 다음과 같습니다.

  • 데이터 원본 보안. 온-프레미스 회사 네트워크 내부 또는 가상 네트워크에 있는 데이터 원본은 방화벽 내부에서 보호됩니다. 이러한 리소스는 자체 호스팅 통합 런타임을 온-프레미스 또는 가상 네트워크에서 호스트되는 리소스에 설치하여 안전하게 액세스할 수 있습니다.

  • 관리 ID를 사용한 인증 및 권한 부여. Microsoft Entra 인증을 지원하는 리소스에 연결할 때 애플리케이션에서 사용할 ID를 제공하는 관리 ID를 사용하여 Azure 서비스 간 통신을 보호합니다. 이 예제서 Azure Synapse는 관리 ID를 사용하여 파이프라인을 통합합니다.

  • Azure 리소스에 대한 프라이빗 링크를 설정하는 프라이빗 엔드포인트. Azure Synapse는 Synapse 작업 영역 내의 서비스(예: Azure Storage 또는 Azure Cosmos DB)에 대한 완전 관리형 프라이빗 엔드포인트 기능을 제공합니다. 다른 Azure 리소스(예: Azure 애플리케이션, Microsoft Power BI 및 Azure Synapse 서비스)는 예제 솔루션의 가상 네트워크에 통합된 프라이빗 엔드포인트를 사용하여 보호합니다. 프라이빗 네트워크와 Synapse 풀 간의 네트워크 트래픽은 Private Link를 사용하여 Microsoft 백본 네트워크를 통해 트래픽을 이동하므로 공용 인터넷에 공개되지 않습니다.

  • 전송 중 데이터 암호화. Azure 서비스와 통신하는 동안 중간자(man-in-the-middle) 공격을 방지하기 위해 모든 데이터 전송이 TCP를 통한 보안 채널 HTTPS 및 TLS를 통해 수행되므로 데이터를 전송 중에 암호화하여 엔드투엔드 보안 프라이빗 데이터 이동이 보장됩니다.

  • 미사용 데이터 암호화. Azure Synapse Analytics의 투명한 데이터 암호화는 Synapse 작업 영역 내에 저장된 데이터의 실시간 암호화 및 암호 해독을 수행하여 악의적인 활동으로부터 보호하는 데 도움이 됩니다. 또한 Azure Storage는 미사용 스토리지 계정의 모든 데이터를 암호화합니다. 기본적으로 데이터는 Microsoft 관리형 키를 사용하여 암호화되지만, 암호화에 대한 추가 제어가 필요한 경우 사용자 고유의 키를 관리할 수 있습니다.

시나리오 배포

기존 Azure 계정이 있어야 합니다. Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.

이 아키텍처에서 설명하는 구성 요소를 배포하는 데 필요한 Azure Resource Manager 템플릿은 GitHub 리포지토리에서 사용할 수 있습니다. 이러한 템플릿은 아키텍처 다이어그램에 표시된 모든 서비스(Power BI Data Gateway, 자체 호스팅 통합 런타임 및 고객 관리형 키용 Azure Key Vault 제외)를 배포합니다.

데이터 원본에 연결하는 데 필요한 데이터 레이크 폴더 구조 및 Azure Synapse Analytics 통합 파이프라인은 사용자가 만들어야 합니다.

다음 단추를 클릭하여 ARM 템플릿을 직접 배포하세요.

Deploy to Azure

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

다음 단계

이 방법을 추가로 개발하는 방법을 알아보려면 다음 자습서를 완료하여 Azure Synapse Analytics의 기본 사항을 알아봅니다.

Azure Synapse Analytics를 사용하여 솔루션을 계획하고 배포하는 경우 다음 문서를 참조하세요.