Eingehende Datenintegration
Die eingehende Datenintegration bezieht sich auf das Integrieren externer Daten in Microsoft Dataverse, damit sie für Apps und Cloud-Flows verfügbar sind.
API
Microsoft Dataverse bietet zwei Webdienste für die Arbeit mit Daten und Metadaten: die Web-API und den Organisationsdienst.
Die Dataverse-Web-API unterstützt die plattformübergreifende Entwicklung mit RESTful-Methoden und folgt dem OData-Standard (Open Data Protocol) 4.0. Dank dieses offenen Standards ist die Durchführung einer nahtlosen Integration über unterschiedliche Programmiersprachen, Plattformen und Geräte möglich.
Alle Datenvorgänge über die Dataverse-APIs werden in Nachrichten übersetzt, die vom Ereignisframework der Plattform verarbeitet werden. Dies unterstützt Automatisierungsszenarien mit Power Automate-Cloud-Flows oder klassischen Workflows und ermöglicht es Entwicklern, Plug-Ins zur Validierung oder für benutzerdefinierte Geschäftslogik hinzuzufügen.
Ereignis im Vergleich zu Batch
Lösungsarchitekten sollten eingehende Daten als ereignisgesteuert oder batchverarbeitet einstufen, um die passenden Integrationsmuster festlegen zu können. Das folgende Diagramm vergleicht diese beiden Ansätze:
Push-Muster
Legen Sie bei der Integration mit Dataverse fest, ob Daten von externen Systemen übertragen oder bei Bedarf von Dataverse abgerufen werden.
Beim Push-Muster sendet ein externes System Daten direkt mithilfe der Web-API an Dataverse. Dazu muss das externe System sowohl das Datenmodell von Dataverse als auch die zugrunde liegende Geschäftslogik verstehen.
Erstellen Sie eine Abstraktionsebene, um den externen Zugriff auf Dataverse-Tabellen zu verwalten. Dieser Ansatz schirmt externe Systeme von internen Änderungen ab und unterstützt dabei die folgenden Methoden:
- Ereignisbasierte Verarbeitung – Power Automate oder Microsoft Azure Logic Apps kann einzelne Transaktionen verarbeiten, die durch Ereignisse in Quellsystemen ausgelöst werden.
- Batchverarbeitung – Verwenden Sie Tools wie KingswaySoft oder Azure Data Factory, um große Datenübertragungen in Batches abzuwickeln.
- Microsoft Azure-Funktionen – Abstrahiert Geschäftslogik in wiederverwendbare Azure-Funktionen für die Integration.
- Benutzerdefinierte API – Erstellen Sie eine benutzerdefinierte API, mit der externe Systeme interagieren können.
Hinweis
Power Automate wird oft verwendet, um Daten zwischen Dataverse-Umgebungen zu synchronisieren.
Berücksichtigen Sie bei der Erstellung von Integrationen den Einsatz von Multithreading, um die Latenz zu reduzieren und Servicelimits effizient zu steuern.
Pull-Muster
Setzen Sie das Pull-Muster ein, wenn Daten situativ abgerufen werden müssen – etwa in Szenarien zur Echtzeit-Datenerweiterung. Bei diesem Ansatz werden Daten bei Bedarf aus externen Systemen abgerufen, sobald in Dataverse auf entsprechende Datensätze zugegriffen wird.
Virtuelle Entitäten sind ideal für Pull-Szenarien, bei denen in Echtzeit auf externe Daten zugegriffen werden muss, ohne diese dauerhaft in Dataverse zu speichern.
Alternativschlüssel
In Dataverse werden Zeilen mithilfe einer GUID eindeutig identifiziert. Externe Systeme sind oft darauf angewiesen, diese GUID zu speichern oder bei Bedarf abzurufen, was unter Umständen für Ineffizienzen sorgen kann.
Mit Alternativschlüsseln können externe Systeme Daten lesen oder schreiben, ohne dass die Dataverse-GUID erforderlich ist, was eine effizientere Integration ermöglicht. Verwendet ein externes Buchhaltungssystem z. B. eine eindeutige alphanumerische Kontonummer, lässt sich dieses Feld in Dataverse als alternativer Schlüssel festlegen. Dadurch wird ein direkter Zugriff auf Datensätze mit der Kennung des externen Systems möglich.
Upsert
Nutzen Sie die Upsert-Nachricht, um die Integrationslogik zu vereinfachen, insbesondere wenn nicht eindeutig ist, ob ein Datensatz in Dataverse bereits existiert.
Anstatt zuerst eine Abfrage durchzuführen und dann zwischen Erstellen oder Aktualisieren auszuwählen, können Sie eine Upsert-Nachricht senden. Bei Verwendung mit einem Alternativschlüssel wird automatisch ermittelt, ob Dataverse eine neue Zeile erstellt oder eine vorhandene aktualisiert werden soll.
Benutzerdefinierte APIs
Benutzerdefinierte APIs ermöglichen es, gebündelte Vorgänge für externe Systeme festzulegen und bereitzustellen, sodass sie über eine einzige aufrufbare Schnittstelle genutzt werden können.
Erstellen Sie einen benutzerdefinierten API-Datensatz in Dataverse, um die Struktur zu definieren. Eine benutzerdefinierte API kann eine Funktion (für Lesevorgänge) oder eine Aktion (für Schreibvorgänge) sein. Plug-Ins können verwendet werden, um die API-Logik zu implementieren.
Hinweis
Weitere Informationen finden Sie unter Benutzerdefinierte APIs erstellen und verwenden.
Azure Functions
Azure Functions bietet Entwicklern die Möglichkeit, komplexe benutzerdefinierte Logik zu implementieren, die systemübergreifend verwendbar und wiederverwendbar ist. Sie lassen sich per Webhook auslösen, in benutzerdefinierte Konnektoren einbinden und über externe Anwendungen oder Dienste aufrufen.
Verwenden Sie Azure Functions zum Übertragen oder Abrufen von Daten in Dataverse zum Erstellen von APIs mit benutzerdefinierter serverseitiger Logik. Diese APIs können sicher über das Microsoft Azure API Management verfügbar gemacht werden.