Questa architettura di esempio illustra un piano di implementazione per la replica e la sincronizzazione dei dati durante la modernizzazione in Azure. Vengono illustrati aspetti tecnici come archivi dati, strumenti e servizi.
Architettura
Scaricare un file di Visio di questa architettura.
Workflow
I sistemi mainframe e midrange aggiornano i database delle applicazioni locali a intervalli regolari. Per mantenere la coerenza, la soluzione sincronizza i dati più recenti con i database di Azure. Il processo di sincronizzazione include i seguenti passaggi:
Le pipeline dinamiche di Azure Data Factory orchestrano le attività che vanno dall'estrazione dei dati al caricamento dei dati. È possibile pianificare le attività della pipeline, avviarle manualmente o attivarle automaticamente.
Le pipeline raggruppano le attività che eseguono attività. Per estrarre i dati, Data Factory crea dinamicamente una pipeline per ogni tabella locale. È quindi possibile usare un'implementazione parallela massiccia quando si replicano i dati in Azure. È anche possibile configurare la soluzione per soddisfare i requisiti:
- Replica completa: si replica l'intero database e si apportano le modifiche necessarie ai tipi di dati e ai campi nel database di Azure di destinazione.
- Replica parziale, differenziale o incrementale: si usano colonne limite nelle tabelle di origine per sincronizzare le righe aggiornate con i database di Azure. Queste colonne contengono una chiave a incremento continuo o un timestamp che indica l'ultimo aggiornamento della tabella.
Data Factory usa anche pipeline per le attività di trasformazione seguenti:
- Conversione del tipo di dati
- Manipolazione dei dati
- Formattazione dei dati.
- Derivazione di colonne
- Rendere flat i dati
- Ordinamento dei dati
- Filtro dati
I database locali, ad esempio Db2 zOS, Db2 per i e Db2 LUW archiviano i dati dell'applicazione.
Un runtime di integrazione self-hosted fornisce l'ambiente usato da Data Factory per eseguire e inviare attività.
Azure Data Lake Storage Gen2 e Archiviazione BLOB di Azure offrono una posizione per la gestione temporanea dei dati. Questo passaggio è talvolta necessario per trasformare e unire dati da più origini.
Per la preparazione dei dati, Data Factory usa Azure Databricks, le attività personalizzate e i flussi di dati della pipeline per trasformare i dati in modo rapido ed efficace.
Data Factory carica i dati nei database di Azure relazionali e non relazionali seguenti:
- Azure SQL
- Database di Azure per PostgreSQL
- Azure Cosmos DB
- Azure Data Lake Storage
- Database di Azure per MySQL
SQL Server Integration Services (SSIS): questa piattaforma può estrarre, trasformare e caricare i dati.
Strumenti non Microsoft: quando la soluzione richiede una replica quasi in tempo reale, è possibile usare strumenti non Microsoft.
Componenti
Questa sezione descrive altri strumenti che è possibile usare durante la modernizzazione, la sincronizzazione e l'integrazione dei dati.
Strumenti
Microsoft Service for Distributed Relational Database Architecture (DRDA) è un componente di Host Integration Server (HIS).Microsoft Service for Distributed Relational Database Architecture (DRDA) è un componente di Host Integration Server (HIS). Il servizio Microsoft per DRDA è un server applicazioni usato dai client DRDA Application Requester (AR). Esempi di client DRDA AR includono IBM Db2 per z/OS e Db2 per i5/OS. Questi client usano il server applicazioni per convertire le istruzioni SQL db2 ed eseguirle in SQL Server.
SQL Server Migration Assistant (SSMA) per Db2 automatizza la migrazione da Db2 ai servizi di database Microsoft. Durante l'esecuzione in una macchina virtuale ,questo strumento converte gli oggetti di database Db2 in oggetti di database di SQL Server e crea tali oggetti in SQL Server. SSMA per Db2 esegue quindi la migrazione dei dati da Db2 ai servizi seguenti:
- SQL Server 2012
- SQL Server 2014
- SQL Server 2016
- SQL Server 2017 in Windows e Linux
- SQL Server 2019 in Windows e Linux
- Database SQL di Azure
Azure Synapse Analytics è un servizio di analisi per data warehouse e sistemi di Big Data. Questo strumento usa tecnologie Spark e offre un'integrazione approfondita con Power BI, Azure Machine Learning e altri servizi di Azure.
Integrazione dei dati
Data Factory è un servizio di integrazione di dati ibridi. È possibile utilizzare questa soluzione completamente gestita e senza server per creare, pianificare e orchestrare flussi di lavoro di estrazione, trasformazione e caricamento (ETL) ed estrarre, caricare e trasformare i fussi di lavoro ELT.
Azure Synapse Analytics servizio di analisi aziendale che riduce il tempo necessario per estrarre informazioni dettagliate da data warehouse e sistemi di Big Data. Azure Synapse Analytics riunisce il meglio delle tecnologie e dei servizi seguenti:
- Tecnologie SQL utilizzate nel data warehousing aziendale.
- Tecnologie Spark, che si usano per i Big Data.
- Esplora dati di Azure, usato per l'analisi dei log e delle serie temporali.
- Azure Pipelines, usato per l'integrazione dei dati e i flussi di lavoro ETL ed ELT.
- Integrazione approfondita con altri servizi di Azure, ad esempio Power BI, Azure Cosmos DB e Azure Machine Learning.
SSIS è una piattaforma per la creazione di soluzioni di integrazione e trasformazione di dati a livello aziendale. È possibile usare SSIS per gestire, replicare, pulire e estrarre dati.
Azure Databricks è una piattaforma di analisi dei dati. Si basa sul sistema di elaborazione distribuito open source di Apache Spark ed è ottimizzato per la piattaforma cloud di Azure. In un flusso di lavoro di analisi, Azure Databricks legge i dati da più origini e usa Spark per fornire informazioni dettagliate.
Archiviazione di dati
database SQL fa parte della famiglia SQL di Azure e viene creata per il cloud. Questo servizio offre i vantaggi di una piattaforma distribuita come servizio (PaaS) completamente gestita e sempreverdi. Database SQL offre anche funzionalità automatizzate basate sull'intelligenza artificiale che ottimizzano le prestazioni e la durabilità. Le opzioni di calcolo serverless e di archiviazione Hyperscale ridimensionano automaticamente le risorse su richiesta.
Istanza gestita di SQL di Azure fa parte del portfolio di servizi SQL di Azure. Questo servizio di database cloud intelligente e scalabile combina la più ampia compatibilità con il motore SQL Server con tutti i vantaggi di un PaaS completamente gestito e sempreverde. Con Istanza gestita di SQL è possibile modernizzare le app esistenti su larga scala.
SQL Server in Macchine virtuali di Azure fornisce un modo per sollevare e spostare i carichi di lavoro di SQL Server sul cloud con una compatibilità del codice del 100%. Come parte della famiglia SQL di Azure, SQL Server in Azure Macchine virtuali offre prestazioni, sicurezza e analisi combinate di SQL Server con la flessibilità e la connettività ibrida di Azure. Usare SQL Server in Azure Macchine virtuali per eseguire la migrazione di app esistenti o creare nuove app. Accedere inoltre agli aggiornamenti e alle versioni più recenti di SQL Server, incluso SQL Server 2019.
Database di Azure per PostgreSQL è un servizio di database relazionale completamente gestito basato sull'edizione community del motore di database PostgreSQL open source. Usare questo servizio per concentrarsi sull'innovazione delle applicazioni anziché sulla gestione dei database. È anche possibile ridimensionare il carico di lavoro in modo rapido e semplice.
Azure Cosmos DB è un database multimodello distribuito a livello globale. Azure Cosmos DB garantisce la scalabilità elastica e indipendente della velocità effettiva e dello spazio di archiviazione tra un numero qualsiasi di aree geografiche di Azure. Si tratta di un servizio di database NoSQL completamente gestito che garantisce latenze di pochi millisecondi al 99° percentile in qualsiasi parte del mondo.
Un archivio data lake è un repository che contiene una grande quantità di dati nel relativo formato nativo non elaborato. Gli archivi data lake sono ottimizzati per la scalabilità fino a terabyte e petabyte di dati. I dati provengono generalmente da più origini eterogenee e possono essere strutturati, semistrutturati o non strutturati. Azure Data Lake Storage Gen2 combina le funzionalità di Azure Data Lake Storage Gen1 con l'archiviazione BLOB. Questa soluzione di data lake di nuova generazione fornisce semantica del file system, sicurezza a livello di file e scalabilità. Offre anche l'archiviazione a più livelli, la disponibilità elevata e le funzionalità di ripristino di emergenza di Archiviazione BLOB.
Database di Azure per MySQL è un servizio di database relazionale completamente gestito basato sull'edizione community del motore di database MySQL open source.
Archiviazione BLOB fornisce l'archiviazione ottimizzata di oggetti cloud che gestisce grandi quantità di dati non strutturati.
Dettagli dello scenario
La disponibilità e l'integrità dei dati sono essenziali per la modernizzazione del mainframe e del midrange. Le strategie data-first consentono di mantenere intatti e disponibili i dati durante la migrazione ad Azure. Per evitare interruzioni durante la modernizzazione, a volte è necessario replicare i dati rapidamente o mantenere sincronizzati i dati locali con i database di Azure.
In particolare, questa soluzione illustra quanto segue:
- Estrazione: connessione ed estrazione da un database di origine.
- trasformazione:
- Staging: archivia temporaneamente i dati nel formato originale e prepararli per la trasformazione.
- Preparazione: trasformazione e modifica dei dati usando regole di mapping che soddisfano i requisiti del database di destinazione.
- Caricamento: inserimento di dati in un database di destinazione.
Potenziali casi d'uso
Gli scenari di replica e sincronizzazione dei dati che possono trarre vantaggio da questa soluzione includono:
- Architetture CQRS (Command Query Responsibility Segregation) che usano Azure per gestire tutti i canali di richiesta.
- Ambienti che testano le applicazioni locali e le applicazioni rehosting o re-engineered in parallelo.
- Sistemi locali con applicazioni strettamente associate che richiedono correzioni o modernizzazione in più fasi.
Consigli
Quando si usa Data Factory per estrarre i dati, seguire questa procedura per ottimizzare le prestazioni dell'attività di copia.
Considerazioni
Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di principi guida che possono essere usati per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Microsoft Azure Well-Architected Framework.
Tenere presenti questi punti quando si considera questa architettura.
Affidabilità
L'affidabilità garantisce che l'applicazione possa soddisfare gli impegni che l'utente ha preso con i clienti. Per altre informazioni, vedere Panoramica del pilastro dell'affidabilità.
La gestione dell'infrastruttura, inclusa la disponibilità, è automatizzata nei database di Azure.
Per informazioni sulla protezione del failover DRDA, vedere Pooling e failover .
È possibile raggruppare il gateway dati locale e il runtime di integrazione (IR) per offrire garanzie di disponibilità più elevate.
Sicurezza
La sicurezza offre garanzie contro attacchi intenzionali e l'abuso di dati e sistemi preziosi. Per altre informazioni, vedere Panoramica del pilastro della sicurezza.
Usare i gruppi di sicurezza di rete per limitare l'accesso solo a ciò che ogni servizio deve funzionare.
Usare endpoint privati per i servizi PaaS. Usare firewall del servizio raggiungibili e non raggiungibili tramite Internet per integrare la sicurezza per i servizi.
Usare le identità gestite per i flussi di dati da componente a componente.
Per informazioni sui tipi di connessioni client supportate da Microsoft Service per DRDA, vedere Planning and architecting solutions by using Microsoft Service for DRDA (Pianificazione e progettazione di soluzioni tramite Il servizio Microsoft per DRDA ). Le connessioni client influiscono sulla natura delle transazioni, del pooling, del failover, dell'autenticazione e della crittografia nella rete.
Ottimizzazione dei costi
L'ottimizzazione dei costi riguarda l'analisi dei modi per ridurre le spese non necessarie e migliorare l'efficienza operativa. Per maggiori informazioni, consultare la sezione Panoramica del pilastro di ottimizzazione dei costi.
I modelli di determinazione dei prezzi variano tra i servizi dei componenti. Esaminare i modelli di determinazione dei prezzi dei servizi componenti disponibili per assicurarsi che siano adatti al budget.
Per stimare il costo di implementazione di questa soluzione, usare il calcolatore dei prezzi di Azure.
Eccellenza operativa
L'eccellenza operativa copre i processi operativi che distribuiscono un'applicazione e la mantengono in esecuzione nell'ambiente di produzione. Per altre informazioni, vedere Panoramica del pilastro dell'eccellenza operativa.
La gestione dell'infrastruttura, inclusa la scalabilità, è automatizzata nei database di Azure.
In termini di disponibilità elevata e scalabilità è possibile aumentare il numero di istanze per il runtime di integrazione self-hosted associando l'istanza logica a più computer locali in modalità attivo-attivo.
Efficienza prestazionale
L'efficienza delle prestazioni è la capacità di dimensionare il carico di lavoro per soddisfare in modo efficiente le richieste poste dagli utenti. Per altre informazioni, vedere Panoramica del pilastro dell'efficienza delle prestazioni.
Azure ExpressRoute supporta la scalabilità elevata per le implementazioni che usano una larghezza di banda significativa, sia per la replica iniziale che per la replica dei dati modificati in corso.
Scegliere la configurazione del runtime di integrazione per lo scenario.
Passaggi successivi
- Per altre informazioni, contattare Azure Ingegneria dei dati - Modernizzazione locale.
- Leggi la guida alla migrazione.