Azure에서 메인프레임 데이터 복제 및 동기화

Azure Data Factory
Azure Databricks

이 참조 아키텍처는 Azure로 현대화하는 동안 데이터를 복제하고 동기화하기 위한 구현 계획을 간략하게 설명합니다. 데이터 저장소, 도구 및 서비스와 같은 기술적 측면에 대해 설명합니다.

아키텍처

Architecture diagram showing how to sync on-premises and Azure databases during mainframe modernization.

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

워크플로

메인프레임 및 미드레인지 시스템은 정기적으로 온-프레미스 애플리케이션 데이터베이스를 업데이트합니다. 일관성을 유지하기 위해 솔루션은 최신 데이터를 Azure 데이터베이스와 동기화합니다. 동기화 프로세스에는 다음 단계가 포함됩니다.

  1. 이 작업은 프로세스 전체에서 발생합니다.

    1. 온-프레미스 데이터 게이트웨이는 온-프레미스 시스템과 Azure 서비스 간에 데이터를 빠르고 안전하게 전송합니다. 이 구성을 사용하면 온-프레미스 데이터 게이트웨이는 Azure에서 지침을 수신하고 온-프레미스 네트워크가 로컬 데이터 자산을 직접 노출하지 않고도 데이터를 복제할 수 있습니다.
    2. Azure Data Factory 파이프라인은 데이터 추출에서 데이터 로드에 이르는 다양한 활동을 오케스트레이션합니다. 파이프라인 활동을 예약하거나, 수동으로 시작하거나, 자동으로 트리거할 수 있습니다.
  2. Db2 zOS, Db2 for i, Db2 LUW 등과 같은 온-프레미스 데이터베이스는 데이터를 저장합니다.

  3. 파이프라인은 작업을 수행하는 활동을 그룹화합니다. 데이터를 추출하기 위해 Data Factory는 온-프레미스 테이블당 하나의 파이프라인을 동적으로 만듭니다. 그런 다음, Azure에서 데이터를 복제할 때 대규모 병렬 구현을 사용할 수 있습니다. 하지만 요구 사항을 충족하도록 솔루션을 구성할 수도 있습니다.

    • 전체 복제: 전체 데이터베이스를 복제하여 대상 Azure 데이터베이스의 데이터 형식 및 필드를 필요에 맞게 수정합니다.
    • 부분, 델타 또는 증분 복제: 원본 테이블의 워터마크 열을 사용하여 업데이트된 행을 Azure 데이터베이스와 동기화합니다. 이러한 열은 지속적으로 증가하는 키 또는 테이블의 마지막 업데이트를 나타내는 타임스탬프를 포함합니다.

    또한 Data Factory는 다음과 같은 변환 작업에 파이프라인을 사용합니다.

    • 데이터 형식 변환
    • 데이터 조작
    • 데이터 서식 지정
    • 열 파생
    • 데이터 평면화
    • 데이터 정렬
    • 데이터 필터링
  4. 자체 호스팅 IR(통합 런타임)은 Data Factory가 작업을 실행하고 디스패치하는 데 사용하는 환경을 제공합니다.

  5. Azure Data Lake Storage Gen2 및 Azure Blob Storage 데이터 스테이징을 위한 장소를 제공합니다. 이 단계는 여러 원본에서 데이터를 변환하고 병합하는 데 필요한 경우가 있습니다.

  6. 데이터 준비는 다음에 진행됩니다. Data Factory는 Azure Databricks, 사용자 지정 활동 및 파이프라인 데이터 흐름을 사용하여 데이터를 빠르고 효과적으로 변환합니다.

  7. Data Factory는 관계형 및 비관계형 Azure 데이터베이스에 데이터를 로드합니다.

    • Azure SQL
    • Azure Database for PostgreSQL
    • Azure Cosmos DB
    • Azure Data Lake Storage
    • Azure Database for MariaDB
    • Azure Database for MySQL

    특정 사용 사례에서 다른 도구는 데이터를 로드할 수도 있습니다.

  8. 다른 도구는 데이터를 복제하고 변환할 수도 있습니다.

    • DRDA(분산 관계형 데이터베이스 아키텍처용 Microsoft 서비스): 이러한 DRDA 서비스는 Azure SQL 데이터베이스 제품군에 연결하고 온-프레미스 데이터베이스를 최신 상태로 유지할 수 있습니다. 이러한 서비스는 온-프레미스 VM(가상 머신) 또는 Azure VM에서 실행됩니다.
    • Db2용 SSMA(SQL Server 마이그레이션 지원): 이 도구는 IBM Db2 데이터베이스에서 Azure 데이터베이스로 스키마 및 데이터를 마이그레이션합니다.
    • SSIS(SQL Server Integration Services): 이 플랫폼은 데이터를 추출, 변환 및 로드할 수 있습니다.
    • 타사 도구: 솔루션에 거의 실시간 복제가 필요한 경우 타사 도구를 사용할 수 있습니다. 이러한 에이전트 중 일부는 Azure Marketplace에서 사용할 수 있습니다.
  9. Azure Synapse Analytics는 데이터를 관리하고 비즈니스 인텔리전스 및 기계 학습 애플리케이션에 사용할 수 있도록 합니다.

구성 요소

이 솔루션은 다음 구성 요소를 사용합니다.

도구

  • Microsoft Service for DRDAHIS(Host Integration Server)의 구성 요소입니다. Microsoft Service for DRDA는 DRDA AR(애플리케이션 요청자) 클라이언트가 사용하는 AS(애플리케이션 서버)입니다. DRDA AR 클라이언트의 예로는 IBM Db2 for z/OS 및 Db2 for i5/OS가 있습니다. 이러한 클라이언트는 AS를 사용하여 Db2 SQL 문을 변환하고 SQL Server를 실행합니다.

  • Db2용 SSMA는 Db2에서 Microsoft 데이터베이스 서비스로의 마이그레이션을 자동화합니다. VM에서 실행되는 동안 이 도구는 Db2 데이터베이스 개체를 SQL Server 데이터베이스 개체로 변환하고 SQL Server에 해당 개체를 만듭니다. 그런 다음, Db2용 SSMA는 Db2에서 다음 서비스로 데이터를 마이그레이션합니다.

    • SQL Server 2012
    • SQL Server 2014
    • SQL Server 2016
    • Windows 또는 Linux의 SQL Server 2017
    • Windows 및 Linux 기반 SQL Server 2019
    • Azure SQL Database
  • Azure Synapse Analytics는 데이터 웨어하우스 및 빅 데이터 시스템을 위한 분석 서비스입니다. 이 도구는 Spark 기술을 사용하며 Power BI, Azure Machine Learning 및 기타 Azure 서비스와 긴밀하게 통합됩니다.

데이터 통합자

  • Azure Data Factory는 하이브리드 데이터 통합 서비스입니다. 이 완전 관리형 서버리스 솔루션을 사용하여 ETL 및 ELT 워크플로를 생성, 예약, 오케스트레이션할 수 있습니다.

  • Azure Synapse Analytics는 데이터 웨어하우스와 빅 데이터 시스템 전반에 걸쳐 인사이트 확보 시간을 단축하는 엔터프라이즈 분석 서비스입니다. Azure Synapse는 엔터프라이즈 데이터 웨어하우징에 사용되는 최고의 SQL 기술, 빅 데이터에 사용되는 Spark 기술, 로그 및 시계열 분석을 위한 Data Explorer, 데이터 통합 및 ETL/ELT를 위한 Pipelines, Power BI, Azure Cosmos DB 및 Azure Machine Learning과 같은 Azure 서비스와의 긴밀한 통합을 결합합니다.

  • SSIS(SQL Server Integration Services)는 엔터프라이즈 수준 데이터 통합 및 변환 솔루션을 빌드하기 위한 플랫폼입니다. SSIS를 사용하여 데이터를 관리, 복제, 정리 및 마이닝할 수 있습니다.

  • Azure Databricks는 데이터 분석 플랫폼입니다. Apache Spark 오픈 소스 분산 처리 시스템을 기반으로 Azure Databricks는 Azure 클라우드 플랫폼에 최적화되어 있습니다. 분석 워크플로에서 Azure Databricks는 여러 원본에서 데이터를 읽고 Spark를 사용하여 인사이트를 제공합니다.

데이터 스토리지

  • Azure SQL DatabaseAzure SQL 제품군의 일부이며 클라우드용으로 빌드되었습니다. 이 서비스는 완전 관리형 및 에버그린 플랫폼의 모든 이점을 서비스로 제공합니다. SQL Database는 성능과 내구성을 최적화하는 AI 기반의 자동화된 기능도 제공합니다. 서버리스 컴퓨팅 및 하이퍼스케일 스토리지 옵션은 필요에 따라 리소스 크기를 자동으로 조정합니다.

  • SQL Managed Instance는 Azure SQL 서비스 포트폴리오에 속합니다. 확장 가능한 지능형 클라우드 데이터베이스 서비스로, 가장 광범위한 SQL Server 데이터베이스 엔진 호환성을 완전히 관리되는 에버그린 PaaS의 모든 이점에 결합합니다. SQL Managed Instance를 사용하면 기존 앱을 대규모로 현대화할 수 있습니다.

  • SQL Server on Azure VMs는 100% 코드 호환성으로 SQL Server 워크로드를 클라우드로 이전하는 방법을 제공합니다. Azure SQL 제품군의 일부로 SQL Server on Azure VMs는 SQL Server의 성능, 보안 및 분석과 Azure의 유연성과 하이브리드 연결을 결합합니다. Azure VM에서 SQL Server 기존 앱을 마이그레이션하거나 새 앱을 빌드할 수 있습니다. SQL Server 2019를 비롯하여 최신 SQL Server 업데이트 및 릴리스에 액세스할 수도 있습니다.

  • Azure Database for PostgreSQL은 오픈 소스 PostgreSQL 데이터베이스 엔진의 커뮤니티 버전을 기반으로 하는 완전 관리형 관계형 데이터베이스 서비스입니다. 이 서비스를 사용하면 데이터베이스 관리 대신 애플리케이션 혁신에 집중할 수 있습니다. 워크로드를 빠르고 쉽게 확장할 수도 있습니다.

  • Azure Cosmos DB는 전역적으로 배포된 다중 모델 데이터베이스입니다. Azure Cosmos DB를 사용하면 솔루션에서 여러 지리적 지역에 걸쳐 탄력적이고 독립적으로 처리량과 스토리지의 크기를 조정할 수 있습니다. 이 완전 관리형 NoSQL 데이터베이스 서비스는 전 세계 어디서든 99 백분위수에서 한 자리 밀리초의 대기 시간을 보장합니다.

  • Data Lake Storage는 대량의 데이터를 네이티브, 원시 형식으로 보관하는 스토리지 리포지토리입니다. 데이터 레이크 저장소는 테라바이트 및 페타바이트 규모의 데이터에 맞게 크기를 조정할 수 있도록 최적화되었습니다. 데이터는 일반적으로 여러 다른 출처에서 오며 구조화, 반구조화 또는 구조화되지 않을 수 있습니다. Data Lake Storage Gen2는 Blob Storage와 Data Lake Storage Gen1의 기능을 결합합니다. 이 차세대 데이터 레이크 솔루션은 파일 시스템 의미 체계, 파일 수준 보안 및 크기를 제공합니다. Blob Storage의 계층화된 스토리지, 고가용성 및 재해 복구 기능도 제공합니다.

  • Azure Database for MariaDB는 클라우드 기반 관계형 데이터베이스 서비스입니다. 이 서비스는 MariaDB 커뮤니티 버전 데이터베이스 엔진을 기반으로 합니다.

  • Azure Database for MySQL오픈 소스 MySQL 데이터베이스 엔진의 커뮤니티 버전을 기반으로 하는 완전히 관리되는 관계형 데이터베이스 서비스입니다.

  • Blob Storage는 대량의 비정형 데이터를 관리하는 최적화된 클라우드 개체 스토리지를 제공합니다.

네트워킹

  • 온-프레미스 데이터 게이트웨이는 온-프레미스 데이터를 클라우드 서비스와 연결하는 브리지 역할을 합니다. 일반적으로 전용 온-프레미스 VM에 게이트웨이를 설치합니다. 그러면 클라우드 서비스에서 온-프레미스 데이터를 안전하게 사용할 수 있습니다.

  • IR은 Data Factory가 다양한 네트워크 환경에서 데이터를 통합하는 데 사용하는 컴퓨팅 인프라입니다. Data Factory는 자체 호스팅 IR을 사용하여 클라우드 데이터 저장소와 온-프레미스 네트워크 데이터 저장소 간에 데이터를 복사합니다. Azure Synapse Pipelines를 사용할 수도 있습니다.

시나리오 정보

데이터 가용성 및 무결성은 메인프레임 및 미드레인지 현대화에서 중요한 역할을 합니다. 데이터 우선 전략은 Azure로 마이그레이션하는 동안 데이터를 그대로 유지하고 사용할 수 있게 합니다. 현대화하는 동안 애플리케이션에 영향을 주지 않도록 하려면 데이터를 신속하게 복제하거나 Azure 데이터베이스와 동기화된 온-프레미스 데이터를 유지해야 하는 경우가 있습니다.

특히 이 솔루션은 다음을 다룹니다.

  • 추출: 원본 데이터베이스에 연결하고 추출합니다.
  • 변환:
    • 준비: 데이터를 원래 형식으로 임시 저장하고 변환을 준비합니다.
    • 준비: 대상 데이터베이스 요구 사항을 충족하는 매핑 규칙을 사용하여 데이터 변환 및 조작
  • 로드: 대상 데이터베이스에 데이터 삽입

잠재적인 사용 사례

이 솔루션이 이점이 될 수 있는 데이터 복제 및 동기화 시나리오는 다음과 같습니다.

  • Azure를 사용하여 모든 조회 채널을 서비스하는 CQRS(명령 쿼리 책임 분리) 아키텍처
  • 온-프레미스 애플리케이션을 테스트하고 애플리케이션을 병렬로 다시 호스팅하거나 다시 엔지니어링하는 환경
  • 단계적 수정 또는 현대화가 필요한 긴밀하게 결합된 애플리케이션이 있는 온-프레미스 시스템

권장 사항

Data Factory를 사용하여 데이터를 추출하는 경우 복사 작업의 성능을 조정하는 단계를 수행합니다.

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

이 아키텍처를 고려할 때 이러한 사항에 유의하세요.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 안정성 핵심 요소 개요를 참조하세요.

  • 가용성을 포함한 인프라 관리는 Azure 데이터베이스에서 자동화됩니다.

  • Microsoft Service for DRDA에서 제공하는 장애 조치(failover) 보호에 대한 정보는 풀링 및 장애 조치(failover)를 참조하세요.

  • 온-프레미스 데이터 게이트웨이 및 IR을 클러스터링하여 더 높은 가용성을 보장할 수 있습니다.

보안

우수한 보안은 중요한 데이터 및 시스템에 대한 고의적인 공격과 악용을 방어합니다. 자세한 내용은 보안 요소의 개요를 참조하세요.

  • 네트워크 보안 그룹을 사용하여 서비스의 액세스를 작동해야 하는 항목으로만 제한합니다.

  • PaaS(Platform as a Service) 서비스에 프라이빗 엔드포인트를 사용합니다. 서비스 방화벽을 사용하여 인터넷을 통해 연결할 수 있고 연결할 수 없는 서비스에 대한 보안을 보완합니다.

  • Azure의 온-프레미스 클라이언트 ID와 클라이언트 ID 간의 차이점에 유의하세요. 차이점을 보상해야 합니다.

  • 구성 요소-구성 요소 데이터 흐름에 관리 ID를 사용합니다.

  • DRDA용 Microsoft 서비스가 지원하는 클라이언트 연결 유형에 대한 자세한 내용은 DRDA용 Microsoft 서비스를 사용하여 솔루션 계획 및 설계를 참조하세요. 클라이언트 연결은 네트워크의 트랜잭션, 풀링, 장애 조치(failover), 인증 및 암호화의 특성에 영향을 줍니다.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

  • 가격 책정 모델은 구성 요소 서비스마다 다릅니다. 사용 가능한 구성 요소 서비스의 가격 책정 모델을 검토하여 가격 책정 모델이 예산에 맞는지 확인합니다.

  • Azure 가격 계산기를 사용하여 이 솔루션 구현 비용을 예상합니다.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성 핵심 요소 개요를 참조하세요.

  • 확장성을 포함한 인프라 관리는 Azure 데이터베이스에서 자동화됩니다.

  • 논리 인스턴스를 활성-활성 모드의 여러 온-프레미스 컴퓨터와 연결하여 자체 호스팅 IR을 확장할 수 있습니다.

  • 확장성을 위해 온-프레미스 데이터 게이트웨이 및 IR을 클러스터링할 수 있습니다.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성 핵심 요소 개요를 참조하세요.

다음 단계