Replikera och synkronisera stordatordata i Azure

Azure Data Factory
Azure Databricks

Den här referensarkitekturen beskriver en implementeringsplan för replikering och synkronisering av data under moderniseringen till Azure. Den beskriver tekniska aspekter som datalager, verktyg och tjänster.

Arkitektur

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

Ladda ned en Visio-fil med den här arkitekturen.

Arbetsflöde

Stordator- och mellanregistersystem uppdaterar lokala programdatabaser med jämna mellanrum. För att upprätthålla konsekvensen synkroniserar lösningen de senaste data med Azure-databaser. Synkroniseringsprocessen omfattar följande steg:

  1. Dessa åtgärder utförs under hela processen:

    1. En lokal datagateway överför data snabbt och säkert mellan lokala system och Azure-tjänster. Med den här konfigurationen kan den lokala datagatewayen ta emot instruktioner från Azure och replikera data utan att det lokala nätverket exponerar de lokala datatillgångarna direkt.
    2. Azure Data Factory-pipelines samordnar aktiviteter som sträcker sig från extrahering av data till datainläsning. Du kan schemalägga pipelineaktiviteter, starta dem manuellt eller automatiskt utlösa dem.
  2. Lokala databaser som Db2 zOS, Db2 för i och Db2 LUW lagrar data.

  3. Pipelines grupperar de aktiviteter som utför uppgifter. För att extrahera data skapar Data Factory dynamiskt en pipeline per lokal tabell. Du kan sedan använda en massivt parallell implementering när du replikerar data i Azure. Men du kan också konfigurera lösningen så att den uppfyller dina krav:

    • Fullständig replikering: Du replikerar hela databasen och gör nödvändiga ändringar av datatyper och fält i Azure-måldatabasen.
    • Partiell, delta- eller inkrementell replikering: Du använder vattenstämpelkolumner i källtabeller för att synkronisera uppdaterade rader med Azure-databaser. Dessa kolumner innehåller antingen en kontinuerligt inkrementell nyckel eller en tidsstämpel som anger tabellens senaste uppdatering.

    Data Factory använder även pipelines för följande transformeringsuppgifter:

    • Konvertering av datatyp
    • Datamanipulering
    • Dataformatering
    • Kolumnhärledning
    • Utplattade data
    • Datasortering
    • Datafiltrering
  4. En lokalt installerad integrationskörning (IR) tillhandahåller den miljö som Data Factory använder för att köra och skicka aktiviteter.

  5. Azure Data Lake Storage Gen2 och Azure Blob Storage är en plats för mellanlagring av data. Det här steget krävs ibland för att transformera och slå samman data från flera källor.

  6. Dataförberedelser sker härnäst. Data Factory använder Azure Databricks, anpassade aktiviteter och pipelinedataflöden för att snabbt och effektivt transformera data.

  7. Data Factory läser in data i relationsdatabaser och icke-relationella Azure-databaser:

    • Azure SQL
    • Azure Database for PostgreSQL
    • Azure Cosmos DB
    • Azure Data Lake Storage
    • Azure-databas för MariaDB
    • Azure Database for MySQL

    I vissa användningsfall kan andra verktyg också läsa in data.

  8. Andra verktyg kan också replikera och transformera data:

    • Microsoft Service for Distributed Relational Database Architecture (DRDA): Dessa DRDA-tjänster kan ansluta till Azure SQL-serien med databaser och hålla lokala databaser uppdaterade. Dessa tjänster körs på en lokal virtuell dator (VM) eller en virtuell Azure-dator.
    • SQL Server Migration Assistance (SSMA) för Db2: Det här verktyget migrerar scheman och data från IBM Db2-databaser till Azure-databaser.
    • SQL Server Integration Services (SSIS): Den här plattformen kan extrahera, transformera och läsa in data.
    • Verktyg från tredje part: När lösningen kräver replikering i nära realtid kan du använda verktyg från tredje part. Vissa av dessa agenter är tillgängliga på Azure Marketplace.
  9. Azure Synapse Analytics hanterar data och gör dem tillgängliga för business intelligence- och maskininlärningsprogram.

Komponenter

Lösningen använder följande komponenter:

Verktyg

  • Microsoft Service for DRDA är en komponent i Host Integration Server (HIS). Microsoft Service for DRDA är en programserver (AS) som DRDA Application Requester-klienter (AR) använder. Exempel på DRDA AR-klienter är IBM Db2 för z/OS och Db2 för i5/OS. Dessa klienter använder AS för att konvertera Db2 SQL-uttryck och köra dem på SQL Server.

  • SSMA för Db2 automatiserar migreringen från Db2 till Microsofts databastjänster. När det körs på en virtuell dator konverterar det här verktyget Db2-databasobjekt till SQL Server-databasobjekt och skapar dessa objekt i SQL Server. SSMA för Db2 migrerar sedan data från Db2 till följande tjänster:

    • SQL Server 2012
    • SQL Server 2014
    • SQL Server 2016
    • SQL Server 2017 i Windows och Linux
    • SQL Server 2019 i Windows och Linux
    • Azure SQL Database
  • Azure Synapse Analytics är en analystjänst för informationslager och stordatasystem. Det här verktyget använder Spark-tekniker och har djup integrering med Power BI, Azure Machine Learning och andra Azure-tjänster.

Dataintegrerare

  • Azure Data Factory är en hybridtjänst för dataintegrering. Du kan använda den här fullständigt hanterade, serverlösa lösningen för att skapa, schemalägga och samordna ETL- och ELT-arbetsflöden .

  • Azure Synapse Analytics är en företagsanalystjänst som påskyndar tiden till insikter, i informationslager och stordatasystem. Azure Synapse samlar det bästa av SQL-tekniker (som används i informationslager för företag), Spark-tekniker som används för stordata, Data Explorer för logg- och tidsserieanalys, Pipelines för dataintegrering och ETL/ELT samt djupintegrering med andra Azure-tjänster, till exempel Power BI, Azure Cosmos DB och Azure Machine Learning.

  • SQL Server Integration Services (SSIS) är en plattform för att skapa lösningar för dataintegrering och transformering på företagsnivå. Du kan använda SSIS för att hantera, replikera, rensa och bryta data.

  • Azure Databricks är en plattform för dataanalys. Azure Databricks är optimerat för Azure-molnplattformen baserat på apache Sparks distribuerade bearbetningssystem med öppen källkod. I ett analysarbetsflöde läser Azure Databricks data från flera källor och använder Spark för att ge insikter.

Datalagring

  • Azure SQL Database är en del av Azure SQL-serien och är byggd för molnet. Den här tjänsten erbjuder alla fördelar med en fullständigt hanterad och vintergrön plattform som en tjänst. SQL Database tillhandahåller även AI-baserade, automatiserade funktioner som optimerar prestanda och hållbarhet. Lagringsalternativ för serverlös beräkning och hyperskala skalar automatiskt resurser på begäran.

  • SQL Managed Instance ingår i Azure SQL-tjänstportföljen. Den här intelligenta, skalbara molndatabastjänsten kombinerar den bredaste SQL Server-motorns kompatibilitet med alla fördelar med en fullständigt hanterad och vintergrön plattform som en tjänst. Med SQL Managed Instance kan du modernisera befintliga appar i stor skala.

  • SQL Server på virtuella Azure-datorer är ett sätt att lyfta och flytta SQL Server-arbetsbelastningar till molnet med 100 procent kodkompatibilitet. Som en del av Azure SQL-familjen erbjuder SQL Server på virtuella Azure-datorer kombinerad prestanda, säkerhet och analys av SQL Server med flexibiliteten och hybridanslutningen i Azure. Med SQL Server på virtuella Azure-datorer kan du migrera befintliga appar eller skapa nya appar. Du kan också komma åt de senaste SQL Server-uppdateringarna och versionerna, inklusive SQL Server 2019.

  • Azure Database for PostgreSQL är en fullständigt hanterad relationsdatabastjänst som baseras på communityversionen av PostgreSQL-databasmotorn med öppen källkod. Med den här tjänsten kan du fokusera på programinnovation i stället för databashantering. Du kan också skala din arbetsbelastning snabbt och enkelt.

  • Azure Cosmos DB är en globalt distribuerad databas med flera modeller . Med Azure Cosmos DB kan dina lösningar elastiskt och oberoende skala dataflöde och lagring i valfritt antal geografiska regioner. Den här fullständigt hanterade NoSQL-databastjänsten garanterar ensiffriga svarstider på 99:e percentilen var som helst i världen.

  • Data Lake Storage är en lagringsplats som innehåller en stor mängd data i sitt ursprungliga rådataformat. Datasjölager är optimerade för skalning till terabyte och petabyte med data. Data kommer vanligtvis från flera heterogena källor och kan vara strukturerade, halvstrukturerade eller ostrukturerade. Data Lake Storage Gen2 kombinerar Data Lake Storage Gen1-funktioner med Blob Storage. Den här nästa generationens datasjölösning tillhandahåller filsystemssemantik, säkerhet på filnivå och skalning. Men den erbjuder även nivåindelad lagring, hög tillgänglighet och haveriberedskap i Blob Storage.

  • Azure Database for MariaDB är en molnbaserad relationsdatabastjänst. Den här tjänsten baseras på mariaDB-databasmotorn för community edition.

  • Azure Database for MySQL är en fullständigt hanterad relationsdatabastjänst baserad på communityversionen av MySQL-databasmotorn med öppen källkod.

  • Blob Storage tillhandahåller optimerad molnobjektlagring som hanterar enorma mängder ostrukturerade data.

Nätverk

Information om scenario

Datatillgänglighet och integritet spelar en viktig roll i stordator- och mellanregistermodernisering. Data first-strategier hjälper till att hålla data intakta och tillgängliga under migreringen till Azure. För att undvika att påverka program under moderniseringen behöver du ibland replikera data snabbt eller hålla lokala data synkroniserade med Azure-databaser.

Mer specifikt omfattar den här lösningen:

  • Extrahering: Anslut till och extrahera från en källdatabas.
  • Omvandling:
    • Mellanlagring: Lagra data tillfälligt i sitt ursprungliga format och förbereda dem för transformering.
    • Förberedelse: Transformera och manipulera data med hjälp av mappningsregler som uppfyller måldatabaskraven.
  • Inläsning: Infogar data i en måldatabas.

Potentiella användningsfall

Scenarier för datareplikering och synkronisering som kan dra nytta av den här lösningen är:

  • CQRS-arkitekturer (Command Query Responsibility Segregation) som använder Azure för att betjäna alla förfrågningar.
  • Miljöer som testar lokala program och omvärdar eller omkonstruerade program parallellt.
  • Lokala system med tätt kopplade program som kräver stegvis reparation eller modernisering.

Rekommendationer

När du använder Data Factory för att extrahera data vidtar du åtgärder för att justera kopieringsaktivitetens prestanda.

Att tänka på

Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework.

Tänk på dessa saker när du överväger den här arkitekturen.

Tillförlitlighet

Tillförlitlighet säkerställer att ditt program kan uppfylla de åtaganden du gör gentemot dina kunder. Mer information finns i Översikt över tillförlitlighetspelare.

  • Infrastrukturhantering, inklusive tillgänglighet, automatiseras i Azure-databaser.

  • Se Poolning och redundans för information om det redundansskydd som Microsoft Service for DRDA tillhandahåller.

  • Du kan klustra den lokala datagatewayen och IR för att ge högre tillgänglighetsgarantier.

Säkerhet

Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i Översikt över säkerhetspelare.

Kostnadsoptimering

Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Översikt över kostnadsoptimeringspelare.

  • Prismodeller varierar mellan komponenttjänster. Granska prismodellerna för de tillgängliga komponenttjänsterna för att se till att prismodellerna passar din budget.

  • Använd Priskalkylatorn för Azure för att beräkna kostnaden för att implementera den här lösningen.

Driftsäkerhet

Driftskvalitet omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i Översikt över grundpelare för driftskvalitet.

  • Infrastrukturhantering, inklusive skalbarhet, automatiseras i Azure-databaser.

  • Du kan skala ut den lokalt installerade IR :n genom att associera den logiska instansen med flera lokala datorer i aktivt-aktivt läge.

  • Du kan klustra den lokala datagatewayen och IR för skalbarhet.

Prestandaeffektivitet

Prestandaeffektivitet handlar om att effektivt skala arbetsbelastningen baserat på användarnas behov. Mer information finns i Översikt över grundpelare för prestandaeffektivitet.

Nästa steg