Sincronizzare i dati tra ambienti Dataverse con Power Platform

Questa architettura di riferimento illustra come sincronizzare i dati master tra due ambienti Dataverse usando Power Automate e flussi di dati in Power Platform. Illustra un modello di sincronizzazione uno-a-uno in cui un ambiente funge da origine autorevole e un altro riceve i dati.

Tip

Questo articolo fornisce uno scenario di esempio e un'architettura di esempio generalizzata per illustrare come gestire i dati master in un ambiente Dataverse e sincronizzarsi con un altro. L'esempio di architettura può essere modificato per molti scenari e settori diversi.

Diagramma dell'architettura

Diagramma della sincronizzazione dati master da un ambiente primario a un ambiente dataverse secondario usando flussi cloud Power Automate e flussi di dati di Power Platform.

Flusso di lavoro

I passaggi seguenti descrivono il flusso di lavoro illustrato nel diagramma dell'architettura di esempio:

  1. sincronizzazione guidata da Event tramite Power Automate

    • Le operazioni CRUD (create, read, update, delete) nell'ambiente Dataverse primario attivano i flussi di Power Automate.

    • La sincronizzazione guidata dagli eventi usa una catena di flussi in due passaggi:

      1. Un flusso cloud invia un POST HTTP a un endpoint pubblicato.
      2. Un processo cloud abbonato si attiva tramite webhook, elabora il payload e applica l'aggiornamento nell'ambiente Dataverse secondario in tempo quasi reale.
    • Gli endpoint sono parametrizzati per la gestione del ciclo di vita delle applicazioni e i gruppi di sicurezza gestiscono l'accesso.

  2. Sincronizzazione in blocco tramite flussi di dati

    • L'ambiente Dataverse secondario contiene i flussi di dati.

    • Ogni flusso di dati si connette all'ambiente Dataverse primario come origine dati.

    • I flussi di dati vengono eseguiti in base a una pianificazione fissa ( ad esempio, notte o dopo l'esecuzione di un altro flusso di dati) o su richiesta (ad esempio, per l'installazione iniziale).

    • Le operazioni di upsert vengono eseguite utilizzando una chiave alternativa per evitare duplicati. Questo metodo aggiorna i dati esistenti e inserisce nuovi record quando non esiste alcuna corrispondenza.

    • I campi di stato vengono gestiti tramite una colonna dedicata "stato di sincronizzazione". Un flusso Power Automate aggiorna di conseguenza il campo di stato effettivo. Questo flusso viene eseguito dopo il flusso di dati ed è necessario perché un flusso di dati non può modificare lo stato delle righe o eliminare record rimossi (assenti) nell'ambiente Dataverse primario.

  3. Gestione degli errori e riconciliazione

    • I flussi di dati notturni nell'ambiente secondario correggeno eventuali aggiornamenti non riusciti o non riusciti basati su eventi.

    • L'intervento manuale potrebbe essere necessario per problemi di qualità dei dati (ad esempio, chiavi mancanti).

Componenti

  • Microsoft Dataverse: supporta il requisito di due ambienti.

  • Flussi di dati per Power Platform: ideale per le operazioni bulk, ad esempio il popolamento dei dati iniziale e la sincronizzazione. Utilizzare l'estrazione su larga scala, la trasformazione dei dati e il caricamento (ETL) per la sincronizzazione programmata, configurata nell'ecosistema secondario.

  • Flussi cloud di Power Automate: forniscono aggiornamenti rapidi e specifici per i record e compensano le limitazioni dei flussi di dati. I flussi cloud possono attivare un flusso di dati quando un altro flusso di dati viene completato correttamente( ad esempio quando una tabella contiene un campo di ricerca a un altro e tale record a cui si fa riferimento deve esistere già nell'ambiente Dataverse secondario), inviare un messaggio di errore quando un flusso di dati ha esito negativo, aggiornare gli stati dei record ed eliminare i record.

  • Gruppi di sicurezza e account di servizio: fornire la gestione e la proprietà degli accessi.

Dettagli dello scenario

Questa architettura è progettata per una relazione uno-a-uno: un singolo ambiente di gestione dei dati master (MDM) collegato a un altro ambiente singolo. Gli scenari in cui un ambiente master deve essere sincronizzato con più ambienti richiede una soluzione più scalabile o distribuita.

Problema aziendale

Questa soluzione risolve la sfida di sincronizzare più tabelle tra due ambienti Dataverse distinti. L'ambiente primario funge da origine autorevole, mentre l'ambiente secondario contiene tabelle esistenti che è necessario popolare e aggiornare con i dati master.

L'uso di tabelle virtuali non è fattibile quando le tabelle del sistema secondario esistono già e richiedono la sicurezza a livello di riga.

Esempio di caso d'uso

Un'organizzazione per il tempo libero e l'ospitalità gestisce i propri principali dati master, ad esempio gli inventari di hotel e sale, in un ambiente Dataverse dedicato. L'ambiente primario include un'app basata su modello usata dal team di gestione dei dati master esclusivamente per mantenere informazioni operative accurate e up-to-date.

Un reparto separato all'interno della stessa organizzazione è responsabile di diversi processi finanziari e di riconciliazione. Per semplificare questi processi, il reparto vuole creare una propria app basata su modello in un ambiente Dataverse isolato. Tuttavia, l'applicazione richiede comunque l'accesso ai dati master di base, ad esempio i dettagli dell'hotel e della camera.

Il team ha rifiutato le tabelle virtuali perché il team finanziario aveva bisogno di arricchire i record con attributi specifici del reparto regolati da una rigorosa sicurezza a livello di riga.

L'incorporamento dell'app finanziaria all'interno dell'ambiente MDM primario non è una delle due opzioni. Consentire l'esposizione di connettori, soluzioni, autorizzazioni API e dati sensibili nell'ambiente MDM a responsabili finanziari o amministratori espone informazioni che devono rimanere accessibili esclusivamente al team di sviluppo MDM.

Questi requisiti hanno portato l'organizzazione ad adottare l'architettura di sincronizzazione descritta in questo articolo.

Valore creato

Questa architettura offre una soluzione affidabile e gestibile per sincronizzare i dati master tra due ambienti Dataverse quando le tabelle virtuali non sono un'opzione. Popolare e aggiornare direttamente le tabelle esistenti nell'ambiente secondario garantisce la coerenza dei dati e l'affidabilità operativa.

L'approccio usa solo componenti di Power Platform, ad esempio flussi di dati e Power Automate, ottenendo una soluzione semplice da distribuire, facile da gestire ed evitare complessità non necessarie.

Poiché l'architettura è personalizzata per una relazione di ambiente uno-a-uno, riduce al minimo il sovraccarico e ottimizza la trasparenza. È ideale per le organizzazioni che necessitano di una sincronizzazione dei dati master semplice e affidabile senza gestione multi-ambiente su larga scala.

Considerazioni

Queste considerazioni implementano i pilastri di Power Platform Well-Architected, un insieme di principi guida che migliorano la qualità di un carico di lavoro. Per altre informazioni, vedere Microsoft Power Platform Well-Architected.

Reliability

  • I flussi di dati notturni garantiscono la coerenza.

  • I flussi basati su eventi offrono aggiornamenti rapidi.

  • Il monitoraggio manuale rileva problemi di qualità dei dati.

Sicurezza

  • Account di servizio e gruppi di sicurezza per il controllo di accesso. Quando si usano flussi di dati, non è possibile assegnare le entità servizio come proprietari.

  • Endpoint HTTP con parametri per la compatibilità con ALM.

  • Flussi di dati in soluzioni isolate per evitare operazioni manuali non necessarie. Esiste un motivo specifico per isolare i flussi di dati in una soluzione dedicata: dopo ogni distribuzione, è necessario ristabilire manualmente la connessione al flusso di dati. Inserendo i flussi di dati in una soluzione separata distribuita solo quando si modificano i flussi di dati, si evitano operazioni manuali non necessarie durante la distribuzione di altri componenti della soluzione principale.

Eccellenza operativa

  • Pianificazione e orchestrazione automatizzati dei flussi di dati.

  • Monitoraggio e avviso per le sincronizzazioni non riuscite.

Efficienza prestazionale

  • Flussi di dati ottimizzati per le operazioni bulk.

  • I flussi di Power Automate basati su eventi riducono al minimo la latenza per gli aggiornamenti critici a livello di record. Quando si progettano flussi basati su eventi, assicurarsi che il volume di azioni e la concorrenza rimangano entro i limiti del servizio Power Automate. L'attività CRUD ad alta frequenza può causare l'applicazione di restrizioni sulla frequenza delle richieste, soprattutto negli scenari in cui i flussi eseguono decine di migliaia di azioni al giorno. Per le integrazioni con velocità effettiva elevata o critiche per l'azienda, applicare licenze Power Automate appropriate per aumentare i limiti di velocità effettiva e evitare limitazioni impreviste. Questo approccio riduce i rischi di escalation e garantisce prestazioni prevedibili.

Ottimizzazione dell'esperienza

  • Richiede un intervento manuale minimo.

  • Separa chiaramente le sincronizzazioni di massa e guidate dagli eventi.

Collaboratori

Microsoft gestisce questo articolo. I seguenti collaboratori hanno scritto questo articolo.

Autori principali: