Creare un'architettura di analisi moderna usando Azure Databricks

Azure Databricks
Microsoft Fabric
Power BI
Azure Data Lake Storage

Idee per soluzioni

In questo articolo viene descritta un'idea di soluzione. Il cloud architect può usare queste linee guida per visualizzare i componenti principali di un'implementazione tipica di questa architettura. Usare questo articolo come punto di partenza per il design di una soluzione ben progettata che sia in linea con i requisiti specifici del carico di lavoro.

Questa soluzione descrive i principi chiave e i componenti delle architetture di dati moderne. Azure Databricks costituisce il nucleo della soluzione. Questa piattaforma funziona perfettamente con altri servizi, ad esempio Azure Data Lake Storage, Microsoft Fabric e Power BI.

Apache e Apache® Spark™ sono marchi registrati o marchi di Apache Software Foundation nei Stati Uniti e/o in altri paesi. L'uso di questi marchi non implica alcuna approvazione da parte di Apache Software Foundation.

Architettura

Diagramma dell'architettura che mostra come un'architettura di dati moderna raccoglie, elabora, analizza e visualizza i dati.

Scaricare un file di Visio di questa architettura.

Flusso di dati

  1. Azure Databricks inserisce dati di streaming non elaborati da Hub eventi di Azure usando tabelle live Delta.

  2. Fabric Data Factory carica dati batch non elaborati in Data Lake Storage.

  3. Per l'archiviazione dei dati:

    • Data Lake Storage ospita tutti i tipi di dati, inclusi dati strutturati, non strutturati e parzialmente strutturati. Archivia anche i dati batch e di streaming.

    • Delta Lake costituisce il livello curato del data lake. Archivia i dati perfezionati in un formato open source.

    • Azure Databricks funziona bene con un'architettura medallion che organizza i dati in livelli:

      • Livello bronzo: contiene dati non elaborati.
      • Livello silver: contiene dati puliti e filtrati.
      • Livello Gold: archivia i dati aggregati utili per l'analisi aziendale.
  4. La piattaforma analitica inserisce i dati dalle origini batch e di streaming diverse. I data scientist usano questi dati per attività come:

    • Preparazione dei dati.
    • Esplorazione dei dati.
    • Preparazione del modello.
    • Training del modello.

    MLflow gestisce le esecuzioni dei parametri, delle metriche e del modello nel codice di data science. Le possibilità di codifica sono flessibili:

    • Il codice può essere in SQL, Python, R e Scala.
    • Il codice può usare librerie e framework open source più diffusi, ad esempio Koalas, Pandas e scikit-learn, preinstallati e ottimizzati.
    • Gli utenti possono ottimizzare le prestazioni e i costi usando opzioni di calcolo a nodo singolo e a più nodi.
  5. I modelli di Machine Learning sono disponibili nei formati seguenti:

    • Azure Databricks archivia informazioni sui modelli nel Registro modelli MLflow. Il Registro di sistema rende disponibili i modelli tramite batch, streaming e API REST.
    • La soluzione può anche distribuire modelli in servizi Web di Azure Machine Learning o servizio Azure Kubernetes (servizio Azure Kubernetes).
  6. I servizi che funzionano con i dati si connettono a una singola origine dati sottostante per garantire la coerenza. Ad esempio, è possibile eseguire query SQL nel data lake usando Azure Databricks SQL Warehouses. Questo servizio:

    • Fornisce un editor di query e un catalogo, la cronologia delle query, il dashboard di base e gli avvisi.
    • Usa la sicurezza integrata che include autorizzazioni a livello di riga e autorizzazioni a livello di colonna.
    • Usa un motore Delta con tecnologia Photon per migliorare le prestazioni.
  7. È possibile eseguire il mirroring dei set di dati gold dal catalogo Unity di Azure Databricks in Fabric. Usare mirroring di Azure Databricks in Fabric per eseguire facilmente l'integrazione senza la necessità di spostare o replicare i dati.

  8. Power BI genera report analitici e cronologici e dashboard dalla piattaforma dati unificata. Questo servizio usa le funzionalità seguenti quando funziona con Azure Databricks:

    • Connettore predefinito di Azure Databricks per la visualizzazione dei dati sottostanti.
    • Connettività di database Java ottimizzata e driver open database connectivity.
    • È possibile usare Direct Lake con il mirroring di Azure Databricks in Fabric per caricare i modelli semantici di Power BI per query con prestazioni più elevate.
  9. La soluzione usa il catalogo Unity e i servizi di Azure per la collaborazione, le prestazioni, l'affidabilità, la governance e la sicurezza:

    • Azure Databricks Unity Catalog offre funzionalità centralizzate di controllo di accesso, controllo, derivazione e individuazione dei dati nelle aree di lavoro di Azure Databricks.

    • Microsoft Purview offre servizi di individuazione dei dati, classificazione dei dati sensibili e informazioni dettagliate sulla governance nel patrimonio di dati.

    • Azure DevOps offre integrazione continua e distribuzione continua (CI/CD) e altre funzionalità di controllo della versione integrate.

    • Azure Key Vault consente di gestire in modo sicuro segreti, chiavi e certificati.

    • L'ID Microsoft Entra e il provisioning di System for Cross-domain Identity Management (SCIM) forniscono l'accesso Single Sign-On per utenti e gruppi di Azure Databricks. Azure Databricks supporta il provisioning utenti automatizzato con Microsoft Entra ID per:

      • Creare nuovi utenti e gruppi.
      • Assegnare a ogni utente un livello di accesso.
      • Rimuovere gli utenti e negare loro l'accesso.
    • Monitoraggio di Azure raccoglie e analizza i dati di telemetria delle risorse di Azure. Identificando in modo proattivo i problemi, questo servizio ottimizza le prestazioni e l'affidabilità.

    • Gestione costi Microsoft offre servizi di governance finanziaria per i carichi di lavoro di Azure.

Componenti

Questa soluzione usa i componenti seguenti.

Componenti principali

  • azure Databricks è una piattaforma di analisi dei dati che usa cluster Spark per elaborare flussi di dati di grandi dimensioni. Pulisce e trasforma i dati non strutturati e lo combina con i dati strutturati. Può anche eseguire il training e distribuire modelli di Machine Learning. In questa architettura, Azure Databricks funge da strumento centrale per l'inserimento, l'elaborazione e la gestione dei dati. Fornisce un ambiente unificato per la gestione dell'intero ciclo di vita dei dati.

  • azure Databricks SQL Warehouse sono risorse di calcolo che è possibile usare per eseguire query ed esplorare i dati in Azure Databricks. In questa architettura è possibile usare gli endpoint SQL per connettersi direttamente ai dati da Power BI.

  • azure Databricks Delta Live Tables è un framework dichiarativo per la creazione di pipeline di elaborazione dati affidabili, gestibili e testabili. In questa architettura, le tabelle live Delta consentono di definire le trasformazioni da eseguire sui dati. Consente inoltre di gestire l'orchestrazione delle attività, la gestione dei cluster, il monitoraggio, la qualità dei dati e la gestione degli errori in Azure Databricks.

  • Microsoft Fabric è una piattaforma di dati e analisi end-to-end per le organizzazioni che necessitano di una soluzione unificata. La piattaforma offre servizi come Data Engineering, Data Factory, Data Science, Real-Time Intelligence, Data Warehouse e Database. Questa architettura rispecchia le tabelle del catalogo Unity in Fabric e usa Direct Lake in Power BI per ottenere prestazioni migliori.

  • Data Factory in Microsoft Fabric è una piattaforma di integrazione dei dati moderna che è possibile usare per inserire, preparare e trasformare i dati da un set completo di origini dati in Fabric. Questa architettura usa connettori predefiniti per diverse origini dati per l'inserimento rapido in Data Lake Storage o OneLake. Azure Databricks recupera e trasforma ulteriormente i dati batch.

  • hub eventi è una piattaforma di streaming big data completamente gestita. Come piattaforma distribuita come servizio, offre funzionalità di inserimento di eventi. Questa architettura usa Hub eventi per lo streaming dei dati. Azure Databricks può connettersi a questi dati ed elaborarli usando Spark Streaming o Delta Live Tables.

  • Data Lake Storage è un data lake scalabile e sicuro per l'analisi ad alte prestazioni. Gestisce più petabyte di dati e supporta centinaia di gigabit di velocità effettiva. Data Lake Storage può archiviare dati strutturati, parzialmente strutturati e non strutturati. Questa architettura usa Data Lake Storage per archiviare dati batch e di streaming.

  • Machine Learning è un ambiente basato sul cloud che consente di compilare, distribuire e gestire soluzioni di analisi predittiva. Usando questi modelli, è possibile prevedere il comportamento, i risultati e le tendenze. In questa architettura Machine Learning usa i dati trasformati da Azure Databricks per il training e l'inferenza di modelli.

  • Il servizio Azure Kubernetes è un servizio Kubernetes a disponibilità elevata, sicuro e completamente gestito. Il servizio Azure Kubernetes semplifica la distribuzione e la gestione delle applicazioni in contenitori. In questa architettura il servizio Azure Kubernetes ospita modelli di Machine Learning in un ambiente in contenitori per l'inferenza scalabile.

  • Delta Lake è un livello di archiviazione che usa un formato di file aperto. Questo livello viene eseguito su soluzioni di archiviazione cloud come Data Lake Storage. Delta Lake supporta il controllo delle versioni dei dati, il rollback e le transazioni per l'aggiornamento, l'eliminazione e l'unione dei dati. In questa architettura Delta Lake funziona come formato di file principale per la scrittura e la lettura di dati da Data Lake Storage.

  • MLflow è una piattaforma open source per la gestione del ciclo di vita di Machine Learning. I componenti monitorano i modelli di Machine Learning durante il training e l'operazione. In questa architettura, analogamente a Machine Learning, è possibile usare MLflow in Azure Databricks per gestire il ciclo di vita di Machine Learning. Eseguire il training e dedurre i modelli usando i dati di Unity Catalog trasformati in Azure Databricks.

Creazione di report e gestione dei componenti

  • azure Databricks Unity Catalog offre funzionalità centralizzate di controllo di accesso, controllo, derivazione e individuazione dei dati nelle aree di lavoro di Azure Databricks. In questa architettura, Unity Catalog funziona come strumento principale all'interno di Azure Databricks per gestire e proteggere l'accesso ai dati.

  • Power BI è una raccolta di app e servizi software. Questi servizi creano e condividono report che si connettono e visualizzano origini dati non correlate. Insieme ad Azure Databricks, Power BI può fornire la determinazione della causa radice e l'analisi dei dati non elaborati. Questa architettura usa Power BI per creare dashboard e report che forniscono informazioni dettagliate sui dati elaborati da Azure Databricks e Fabric.

  • Microsoft Purview gestisce i dati SaaS (Software as a Service) locali, multicloud e software. Questo servizio di governance gestisce le mappe orizzontale dei dati. Le sue funzionalità includono l'individuazione automatica dei dati, la classificazione dei dati sensibili e la derivazione dei dati. Questa architettura usa Microsoft Purview per analizzare e tenere traccia dei dati inseriti in Unity Catalog, Fabric, Power BI e Data Lake Storage.

  • Azure DevOps è una piattaforma di orchestrazione DevOps . Questo SaaS fornisce strumenti e ambienti per compilare, distribuire e collaborare alle applicazioni. Questa architettura usa Azure DevOps per automatizzare la distribuzione dell'infrastruttura di Azure. È anche possibile usare GitHub per l'automazione e il controllo della versione del codice di Azure Databricks per migliorare la collaborazione, il rilevamento delle modifiche e l'integrazione con le pipeline CI/CD.

  • Key Vault archivia e controlla l'accesso ai segreti, ad esempio token, password e chiavi API. Key Vault crea e controlla anche le chiavi di crittografia e gestisce i certificati di sicurezza. Questa architettura usa Key Vault per archiviare le chiavi di firma di accesso condiviso da Data Lake Storage. Queste chiavi vengono quindi usate in Azure Databricks e in altri servizi per l'autenticazione.

  • Microsoft Entra ID offre servizi di gestione delle identità e degli accessi basati sul cloud. Queste funzionalità consentono agli utenti di accedere e accedere alle risorse. Questa architettura usa Microsoft Entra ID per autenticare e autorizzare utenti e servizi in Azure.

  • SCIM consente di configurare il provisioning nell'account Azure Databricks usando Microsoft Entra ID. Questa architettura usa SCIM per gestire gli utenti che accedono alle aree di lavoro di Azure Databricks.

  • monitoraggio di Azure raccoglie e analizza i dati in ambienti e risorse di Azure. Questi dati includono i dati di telemetria delle app, ad esempio le metriche delle prestazioni e i log attività. Questa architettura usa Monitoraggio di Azure per monitorare l'integrità delle risorse di calcolo in Azure Databricks e Machine Learning e altri componenti che inviano log a Monitoraggio di Azure.

  • gestione costi consente di gestire la spesa cloud. Usando budget e raccomandazioni, questo servizio organizza le spese e illustra come ridurre i costi. Questa architettura usa Gestione costi per monitorare e controllare il costo dell'intera soluzione.

Dettagli dello scenario

Architetture moderne dei dati:

  • Unificare i carichi di lavoro di dati, analisi e intelligenza artificiale.
  • L'esecuzione viene eseguita in modo efficiente e affidabile su qualsiasi scala.
  • Fornire informazioni dettagliate tramite dashboard di analisi, report operativi o analisi avanzate.

Questa soluzione descrive un'architettura dei dati moderna che raggiunge questi obiettivi. Azure Databricks costituisce il nucleo della soluzione. Questa piattaforma funziona perfettamente con altri servizi. Insieme, questi servizi offrono una soluzione che è:

  • Semplice: l'analisi unificata, l'analisi scientifica dei dati e l'apprendimento automatico semplificano l'architettura dei dati.
  • Open: la soluzione supporta codice open source, standard aperti e framework aperti. Funziona anche con i più diffusi ambienti di sviluppo integrato (IDE), librerie e linguaggi di programmazione. Tramite connettori nativi e API, la soluzione funziona anche con un'ampia gamma di altri servizi.
  • Collaborazione: i data engineer, i data scientist e gli analisti collaborano con questa soluzione. Possono usare notebook collaborativi, IDE, dashboard e altri strumenti per accedere e analizzare i dati sottostanti comuni.

Potenziali casi d'uso

Il sistema che Swiss Re Group ha costruito per la sua divisione Property & Casualty Trustworthy ha ispirato questa soluzione. Oltre al settore assicurativo, qualsiasi area che funziona con Big Data o Machine Learning può anche trarre vantaggio da questa soluzione. Alcuni esempi:

  • Il settore energetico.
  • Vendita al dettaglio ed e-commerce.
  • Banche e finanze.
  • Medicina e sanità.

Passaggi successivi

Per informazioni sulle soluzioni correlate, vedere le guide e le architetture seguenti.