Synkroniser data på tværs af Dataverse-miljøer ved hjælp af Power Platform

Denne referencearkitektur viser, hvordan du synkroniserer masterdata mellem to Dataverse-miljøer ved hjælp af Power Automate og dataflow i Power Platform. Det viser et en til en-synkroniseringsmønster, hvor ét miljø fungerer som den autoritative kilde, og et andet modtager data.

Tip!

Denne artikel indeholder et eksempelscenarie og en generel eksempelarkitektur, der illustrerer, hvordan du vedligeholder masterdata i ét Dataverse-miljø og synkroniserer med et andet. Arkitektureksemplet kan ændres til mange forskellige scenarier og brancher.

Arkitekturdiagram

Diagram over masterdatasynkronisering fra et primært til et sekundært Dataverse-miljø ved hjælp af Power Automate cloudflows og Power Platform-dataflows.

Workflow

I følgende trin beskrives den arbejdsproces, der vises i eksempelarkitekturdiagrammet:

  1. Begivenhedsdrevet synkronisering via Power Automate

    • CRUD-handlinger (create, read, update, delete) i den primære Dataverse-miljøudløser Power Automate flow.

    • Hændelsesbaseret synkronisering bruger en flowkæde med to trin:

      1. Et cloudflow sender en HTTP POST til et publiceret slutpunkt.
      2. Et cloudflow for abonnenter udløses af webhooket, behandler nyttedataene og anvender opdateringen i det sekundære Dataverse-miljø i næsten realtid.
    • Slutpunkter parameteriseres for ALM (Application Lifecycle Management), og sikkerhedsgrupper administrerer adgang.

  2. Massesynkronisering via dataflow

    • Det sekundære Dataverse-miljø indeholder dataflowene.

    • Hvert dataflow opretter forbindelse til det primære Dataverse-miljø som datakilde.

    • Dataflow kører efter en fast tidsplan (f.eks. om natten eller efter et andet dataflow kører korrekt) eller efter behov (f.eks. til indledende konfiguration).

    • Upserts udføres ved hjælp af en alternativ nøgle for at undgå dubletter. Denne metode opdaterer eksisterende data og indsætter nye poster, når der ikke findes et match.

    • Statusfelter administreres via en dedikeret kolonne med "synkroniseringsstatus". Et Power Automate flow opdaterer det faktiske statusfelt i overensstemmelse hermed. Dette flow kører efter dataflowet og er påkrævet, fordi et dataflow ikke kan ændre rækkestatussen eller slette poster, der er fjernet (fraværende) i det primære Dataverse-miljø.

  3. Fejlhåndtering og afstemning

    • Natlige dataflow i det sekundære miljø retter eventuelle mistede eller mislykkede hændelsesdrevne opdateringer.

    • Manuel indgriben kan være påkrævet i forbindelse med problemer med datakvaliteten (f.eks. manglende nøgler).

Komponenter

  • Microsoft Dataverse: Understøtter kravet om to miljøer.

  • Dataflow til Power Platform: Ideel til massehandlinger, f.eks. indledende datapopulation og synkronisering. Brug masseudtrækning, transformering og indlæsning (ETL) til planlagt synkronisering, der er konfigureret i det sekundære miljø.

  • Power Automate cloudflow: Angiv hurtige, postspecifikke opdateringer, og kompensere for begrænsningerne i dataflow. Cloudflow kan udløse et dataflow, når et andet dataflow fuldføres (f.eks. når en tabel indeholder et opslagsfelt til en anden, og den refererede post allerede skal findes i det sekundære Dataverse-miljø), sende en fejlmeddelelse, når et dataflow mislykkes, opdatere poststatusser og slette poster.

  • Sikkerhedsgrupper og tjenestekonti: Angiv adgangsstyring og ejerskab.

Scenariedetaljer

Denne arkitektur er designet til en en til en-relation: et enkelt MDM-miljø (Master Data Management), der er knyttet til et andet enkelt miljø. Scenarier, hvor ét mastermiljø skal synkroniseres med flere andre miljøer, kræver en mere skalerbar eller distribueret løsning.

Forretningsproblem

Denne løsning løser udfordringen med at synkronisere flere tabeller mellem to forskellige Dataverse-miljøer. Det primære miljø fungerer som den autoritative kilde, mens det sekundære miljø indeholder eksisterende tabeller, som du skal udfylde og opdatere med masterdata.

Det er ikke muligt at bruge virtuelle tabeller, når det sekundære systems tabeller allerede findes og kræver sikkerhed på rækkeniveau.

Eksempel på use case

En fritids- og gæstfrihedsorganisation administrerer sine kernemasterdata, f.eks. hoteller og værelsesoversigter, i et dedikeret Dataverse-miljø. Det primære miljø indeholder en modeldreven app, som masterdataadministrationsteamet udelukkende bruger til at opretholde nøjagtige og up-to-dato driftsoplysninger.

En separat afdeling i samme organisation er ansvarlig for flere økonomiske processer og afstemningsprocesser. For at strømline disse processer ønsker afdelingen at bygge sin egen modeldrevne app i et isoleret Dataverse-miljø. Deres program kræver dog stadig adgang til grundlæggende masterdata, f.eks. hotel- og værelsesoplysninger.

Teamet afviste virtuelle tabeller, fordi det økonomiske team skulle forbedre poster med afdelingsspecifikke attributter, der er underlagt streng sikkerhed på rækkeniveau.

Det er heller ikke muligt at integrere den økonomiske app i det primære MDM-miljø. Hvis du giver finansielle udviklere eller administratorer adgang til MDM-miljøet, vises connectors, løsninger, API-tilladelser og følsomme data, der skal forblive begrænset til MDM-udviklingsteamet.

Disse krav fik organisationen til at anvende den synkroniseringsarkitektur, der er beskrevet i denne artikel.

Værdi oprettet

Denne arkitektur leverer en robust løsning, der kan vedligeholdes, til synkronisering af masterdata mellem to Dataverse-miljøer, når virtuelle tabeller ikke er en mulighed. Hvis du udfylder og opdaterer eksisterende tabeller direkte i det sekundære miljø, sikrer du ensartede data og driftssikkerhed.

Tilgangen bruger kun Power Platform-komponenter, f.eks. dataflow og Power Automate, hvilket resulterer i en løsning, der er nem at udrulle, nem at administrere og undgår unødvendig kompleksitet.

Da arkitekturen er skræddersyet til en en til en-miljørelation, minimerer den omkostningerne og maksimerer gennemsigtigheden. Den er ideel til organisationer, der har brug for enkel og pålidelig synkronisering af masterdata uden administration af flere miljøer i stor skala.

Overvejelser

Disse overvejelser implementerer søjlerne i Power Platform Well-Architected, et sæt vejledende principper, der forbedrer kvaliteten af en arbejdsbyrde. Få mere at vide i Microsoft Power Platform Well-Architected.

Pålidelighed

  • Natlige dataflow sikrer ensartethed.

  • Hændelsesdrevne flow leverer hurtige opdateringer.

  • Manuel overvågning registrerer problemer med datakvaliteten.

Sikkerhed

  • Tjenestekonti og sikkerhedsgrupper til adgangskontrol. Når du bruger dataflow, kan du ikke tildele tjenesteprincipaler som ejere.

  • Parameteriserede HTTP-slutpunkter for ALM-kompatibilitet.

  • Dataflow i isolerede løsninger for at undgå unødvendigt manuelt arbejde. Der er en specifik grund til at isolere dataflow i en dedikeret løsning: Efter hver udrulning skal du manuelt genoprette dataflowforbindelsen. Ved at placere dataflow i en separat løsning, som du kun udruller, når du ændrer dataflowene, undgår du unødvendigt manuelt arbejde, når du udruller andre komponenter i hovedløsningen.

Driftsmæssig ekspertise

  • Automatiseret planlægning og orkestrering af dataflow.

  • Overvågning og besked om mislykkede synkroniseringer.

Ydeevneeffektivitet

  • Dataflow, der er optimeret til massehandlinger.

  • Hændelsesbaserede Power Automate flow minimerer ventetiden for kritiske opdateringer på postniveau. Når du designer hændelsesdrevne flow, skal du sikre, at handlingsvolumen og samtidighed forbliver inden for Power Automate tjenestegrænser. Højfrekvent CRUD-aktivitet kan udløse begrænsning, især i scenarier, hvor flow udfører titusinder handlinger pr. dag. I forbindelse med virksomhedskritiske integrationer eller integrationer med høj dataoverførselshastighed skal du anvende passende Power Automate-licenser for at øge gennemstrømningsgrænserne og undgå uventet begrænsning. Denne fremgangsmåde reducerer eskaleringsrisici og sikrer forudsigelig ydeevne.

Optimering af oplevelse

  • Kræver minimal manuel indgriben.

  • Adskiller tydeligt masse- og hændelsesbaserede synkroniseringer.

Bidragydere

Microsoft vedligeholder denne artikel. Følgende bidragydere skrev denne artikel.

Hovedforfattere: