Verarbeiten und Erstellen von Azure Cosmos DB-Dokumenten mithilfe Azure Logic Apps

Gilt für: Azure Logic Apps (Verbrauch + Standard)

In Ihrem Workflow in Azure Logic Apps können Sie eine Verbindung mit Azure Cosmos DB herstellen und mit Dokumenten arbeiten, indem Sie den Azure Cosmos DB-Connector verwenden. Dieser Connector bietet Trigger und Aktionen, die Ihr Workflow für Azure Cosmos DB-Vorgänge verwenden kann. Aktionen umfassen beispielsweise das Erstellen oder Aktualisieren, Lesen, Abfragen und Löschen von Dokumenten.

Sie können eine Verbindung mit Azure Cosmos DB über die beiden Ressourcentypen Logik-App (Verbrauch) und Logik-App (Standard) herstellen, indem Sie die Vorgänge verwalteter Connector verwenden. Für Logik-App (Standard)bietet Azure Cosmos DB auch integrierte Vorgänge, die sich derzeit im Preview befinden und verschiedene Funktionen, die eine bessere Leistung und einen höheren Durchsatz bieten. Wenn Sie beispielsweise mit dem Ressourcentyp Logik-App (Standard) arbeiten, können Sie den integrierten Trigger verwenden, um auf Änderungen in einem Azure Cosmos DB-Container zu reagieren. Sie können Azure Cosmos DB-Vorgänge mit anderen Aktionen und Triggern in Ihren Logik-App-Workflows kombinieren, um Szenarien wie Ereignis-Sourcing und allgemeine Datenverarbeitung zu ermöglichen.

Begrenzungen

  • Derzeit können nur zustandsbehaftete Workflows in der Ressource Logik-App (Standard) sowohl verwaltete Connector-Vorgänge als auch integrierte Vorgänge verwenden. Zustandslose Workflows können nur integrierte Vorgänge verwenden.

  • Der Azure Cosmos DB-Connector unterstützt nur Azure Cosmos DB-Konten, die mit der Azure Cosmos DB for NoSQL erstellt wurden.

Voraussetzungen

Azure Cosmos DB-Trigger hinzufügen

In Azure Logic Apps muss jeder Workflow mit einem Trigger beginnen, der ausgelöst wird, wenn ein bestimmtes Ereignis eintritt oder eine bestimmte Bedingung erfüllt wird.

Wenn Sie mit dem Ressourcentyp Logik-App (Standard) arbeiten, ist der integrierte Trigger mit dem Namen , sobald ein Element erstellt oder geändert wird (Vorschau), verfügbar und basiert auf dem Azure Cosmos DB-Änderungsfeed-Muster. Dieser Trigger ist für den Ressourcentyp Logik-App (Verbrauch) nicht verfügbar.

Es sind keine Azure Cosmos DB-Trigger für den Ressourcentyp Logik-App (Verbrauch) verfügbar.

Azure Cosmos DB-Aktion hinzufügen

In Azure Logic Apps handelt es sich bei einer Aktion um einen Schritt in Ihrem Workflow, der einem Trigger oder einer anderen Aktion folgt. Der Azure Cosmos DB-Connector bietet Aktionen für die beiden Ressourcentypen Logik-App (Verbrauch) und Logik-App (Standard). Die folgenden Beispiele für jeden Ressourcentyp zeigen, wie man eine Aktion verwendet, die ein Dokument erstellt oder aktualisiert.

Um eine Azure Cosmos DB-Aktion zu einem Logik-App-Workflow in einem Azure Logic Apps Multi-Mandanten hinzuzufügen, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie Ihren Workflow im Azure-Portal im Designer.

  2. Wenn Ihr Workflow leer ist, fügen Sie einen beliebigen Trigger hinzu.

    Dieses Beispiel beginnt mit dem Trigger Wenn eine HTTP-Anforderung empfangen wird.

  3. Wählen Sie unter dem Trigger oder der Aktion, dem bzw. der Sie die Azure Cosmos DB-Aktion hinzufügen möchten, die Option Neuer Schritt oder Aktion hinzufügen aus, falls Sie sich zwischen den Schritten befinden.

  4. Geben Sie in das Suchfeld des Designers Azure Cosmos DB ein. Wählen Sie die gewünschte Azure Cosmos DB-Aktion aus.

    In diesem Beispiel wird die Aktion mit dem Namen Dokument erstellen oder aktualisieren (V3) verwendet.

    Screenshot showing the designer for a Consumption logic app workflow with the available Azure Cosmos DB actions.

  5. Wenn Sie zur Eingabe von Verbindungsdetails aufgefordert werden, dann erstellen Sie eine Verbindung zu Ihrem Azure Cosmos DB-Konto.

  6. Geben Sie die erforderlichen Informationen für die Aktion ein.

    Eigenschaft Erforderlich Wert Beschreibung
    Der Azure Cosmos DB-Kontoname Ja Wählen Sie entweder Verbindungseinstellungen (<Azure-Cosmos-DB-Kontoname>), oder geben Sie den Namen manuell ein. Der Kontoname für Ihr Azure Cosmos DB-Konto.
    Datenbank-ID Ja <Datenbank-ID> Die Datenbank, die Sie verbinden möchten.
    Container-ID Ja <Container-ID> Der Container, den Sie abfragen möchten.
    Document Ja <JSON-Dokument> Das JSON-Dokument, das Sie erstellen möchten. In diesem Beispiel wird der Anforderungstext aus der Trigger-Ausgabe verwendet.

    Tipp: Wenn das Token Text des HTTP-Triggers nicht in der Liste mit den dynamischen Inhalten angezeigt wird, die Sie hinzufügen können, wählen Sie neben dem Trigger-Namen die Option Weitere Informationen anzeigen aus.

    Hinweis: Stellen Sie sicher, dass der Text aus wohlgeformten JSON-Code besteht und mindestens die id -Eigenschaft und die Partitionsschlüsseleigenschaft für Ihr Dokument enthält. Wenn bereits ein Dokument mit angegebenen id und Partitionsschlüssel vorhanden ist, wird das Dokument aktualisiert. Andernfalls wird ein neues Dokument erstellt.

    Die folgende Abbildung zeigt eine Beispielaktion:

    Screenshot showing the designer for a Consumption logic app workflow with the Azure Cosmos DB 'Create or update documents (V3)' action and parameters configuration.

  7. Konfigurieren Sie alle anderen Aktionseinstellungen nach Bedarf.

  8. Wählen Sie in der Symbolleiste des Designers Speichern aus.

  9. Testen Sie Ihre Logik-App, um sicherzustellen, dass Ihr Workflow ein Dokument im angegebenen Container erstellt.

Herstellen der Verbindung mit Azure Cosmos DB

Wenn Sie einen Trigger oder eine Aktion hinzufügen, der/die eine Verbindung mit einem Dienst oder System herstellt, und Sie keine bestehende oder aktive Verbindung haben, werden Sie von Azure Logic Apps aufgefordert, die Verbindungsinformationen anzugeben, die je nach Verbindungstyp variieren, z. B.:

  • Ihre Kontoanmeldeinformationen.
  • Ein für die Verbindung zu verwendender Name.
  • Der Name des Servers oder des Systems
  • Der zu verwendende Authentifizierungstyp
  • Eine Verbindungszeichenfolge.

Bevor Sie Ihren Azure Cosmos DB-Trigger oder Ihre Azure Cosmos DB-Aktion konfigurieren können, müssen Sie eine Verbindung mit einem Datenbankkonto herstellen.

In einem Logik-App (Verbrauch) Workflow, erfordert eine Azure Cosmos DB-Verbindung die folgenden Eigenschaftswerte:

Eigenschaft Erforderlich Wert BESCHREIBUNG
Verbindungsname Ja <connection-name> Der Name, der für Ihre Verbindung verwendet werden soll.
Authentifizierungstyp Ja <Verbindungstyp> Der Authentifizierungstyp, den Sie verwenden möchten. In diesem Beispiel wird Zugriffsschlüssel verwendet.

- Wenn Sie Zugriffsschlüssel auswählen, geben Sie die verbleibenden erforderlichen Eigenschaftswerte an, um die Verbindung zu erstellen.

– Wenn Sie Microsoft Entra integriert auswählen, sind keine anderen Eigenschaftswerte erforderlich, aber Sie müssen Ihre Verbindung konfigurieren, indem Sie die Schritte für die Microsoft Entra-Authentifizierung und den Azure Cosmos DB-Connector ausführen.

Zugriffsschlüssel für Ihr Azure Cosmos DB-Konto Ja <Zugriffsschlüssel> Der Zugriffsschlüssel für das Azure Cosmos DB-Konto, das für diese Verbindung verwendet werden soll. Dieser Wert ist entweder ein Lese-/Schreibschlüssel oder ein schreibgeschützter Schlüssel.

Hinweis: Um den Schlüssel zu finden, navigieren Sie zur Seite des Azure Cosmos DB-Kontos. Wählen Sie im Navigationsmenü unter Einstellungen die Option Schlüssel aus. Kopieren Sie einen der verfügbaren Schlüsselwerte.

Konto ID Ja <Konto ID> Der Name für das Azure Cosmos DB-Konto, der für diese Verbindung verwendet werden soll.

Die folgende Abbildung enthält eine Beispielverbindung:

Screenshot showing an example Azure Cosmos DB connection configuration for a Consumption logic app workflow.

Hinweis

Wenn Sie nach dem Erstellen der Verbindung über eine andere vorhandene Azure Cosmos DB-Verbindung verfügen, die Sie stattdessen verwenden möchten, wählen Sie Verbindung ändern im Editor für Trigger- oder Aktionsdetails aus.

Referenz zu Konnektoren

Referenzinformationen zu Azure Cosmos DB Vorgängen verwalteter Connector z. B. Trigger, Aktionen und Grenzwerte, finden Sie auf der Connector-Referenzseite.

Für integrierte Azure Cosmos DB-Vorgänge ist keine entsprechende Referenzseite vorhanden. Lesen Sie stattdessen die folgende Tabelle, um weitere Informationen zu erfahren:

Typ Name Parameter
Trigger Wenn eine Datei erstellt oder geändert wird - Datenbank-ID: Erforderlich. Der Name der Datenbank mit den überwachten Containern und den Lease-Containern.
- Überwachte Container-ID: Erforderlich. Der Name des überwachten Containers.
- Lease-Container-ID: Erforderlich. Der Name des Containers, der zum Speichern von Leases verwendet wird.
- Lease-Container erstellen: Erforderlich. Wenn wahr, erstellen Sie den Lease-Container, sofern er noch nicht vorhanden ist.
- Lease-Containerdurchsatz: Optional. Die Anzahl der Anforderungseinheiten, die beim Erstellen des Lease-Containers zugewiesen werden sollen.
Aktion Erstellen oder Aktualisieren eines Elements - Datenbank-ID: Erforderlich. Der Name der Datenbank.
- Container-ID: Erforderlich. Der Name des Containers,
- Element: Erforderlich. Das zu erstellende oder zu aktualisierende Element.
- Partitionsschlüssel: Optional. Der Partitionsschlüsselwert für das angeforderte Element.
- Ist Upsert: Optional. Wenn wahr, ersetzen Sie das Element, sofern vorhanden. Andernfalls erstellen Sie das Element.
Aktion Massenerstellung oder -aktualisierung vieler Elemente Diese Aktion ist für Szenarien mit hohem Durchsatz optimiert und verfügt über zusätzliche Verarbeitung, bevor die Aktion Ihre Elemente übermittelt, die im Azure Cosmos DB-Container erstellt werden sollen. Bei einer großen Anzahl von Elementen beschleunigt diese zusätzliche Verarbeitung die Gesamtanforderungszeit. Bei einer kleinen Anzahl von Elementen kann dieser zusätzliche Mehraufwand zu einer langsameren Leistung führen als die Verwendung mehrerer Aktionen zum Erstellen von Elementen.

- Datenbank-ID: Erforderlich. Der Name der Datenbank.
- Container-ID: Erforderlich. Der Name des Containers,
- Element: Optional. Ein Array von Elementen, die erstellt oder aktualisiert werden sollen.
- Ist Upsert: Optional. Wenn wahr, ersetzen Sie ein Element, sofern vorhanden. Andernfalls erstellen Sie das Element.

Aktion Lesen eines Elements - Datenbank-ID: Erforderlich. Der Name der Datenbank.
- Container-ID: Erforderlich. Der Name des Containers,
- Element-ID: Erforderlich. Der idWert für das angeforderte Element.
- Partitionsschlüssel: Erforderlich. Der Partitionsschlüsselwert für das angeforderte Element.
Aktion Löschen eines Elements - Datenbank-ID: Erforderlich. Der Name der Datenbank.
- Container-ID Erforderlich. Der Name des Containers,
- Element-ID: Erforderlich. Der idWert für das angeforderte Element.
- Partitionsschlüssel: Erforderlich. Der Partitionsschlüsselwert für das angeforderte Element.
Aktion Abfrageelemente - Datenbank-ID: Erforderlich. Der Name der Datenbank.
- Container-ID: Erforderlich. Der Name des Containers,
- SQL-Abfrage: Erforderlich. Der Azure Cosmos DB SQL Abfragetext.
- Partitionsschlüssel: Optional. Der Partitionsschlüsselwert für die Anforderung, falls vorhanden.
- Fortsetzungstoken: Optional. Das Fortsetzungstoken für diese Abfrage, das vom Azure Cosmos DB-Dienst angegeben wird, falls vorhanden.
- Maximale Elementanzahl: Optional. Die maximale Anzahl von Elementen, die von der Abfrage zurückgegeben werden sollen.

Bewährte Methoden für integrierte Azure Cosmos DB-Vorgänge

Abrufen iterierbarer Ergebnisse aus der Aktion Abfrageelemente

Die integrierte Aktion Abfrageelemente in einem Logik-App-Workflow (Standard) verfügt über viele dynamische Inhaltsausgaben, die in nachfolgenden Aktionen verwendet werden können. Um die Abfrageergebniselemente oder Elementmetadaten als iterierbares Objekt abzurufen, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie Ihren Workflow im Azure-Portal im Designer.

  2. Wenn Ihr Workflow leer ist, fügen Sie einen beliebigen Trigger hinzu.

    Dieses Beispiel beginnt mit dem Trigger Wiederholung.

  3. Wählen Sie unter dem Auslöser oder der Aktion, zu der Sie die Azure Cosmos DB-Aktion hinzufügen möchten, Neuen Schritt einfügen (+) >Aktion hinzufügen.

  4. Stellen Sie im Designer sicher, dass Vorgang hinzufügen ausgewählt ist. Wählen Sie im Bereich Aktion hinzufügen, der unter dem Suchfeld Vorgang auswählen geöffnet wird, die Option Integriert aus, um die Azure Cosmos DB Aktionen zu finden.

  5. Geben Sie im Suchfeld Azure Cosmos DBein. Wählen Sie die Aktion Abfrageelemente (Vorschau) aus.

  6. Wenn Sie zur Eingabe von Verbindungsdetails aufgefordert werden, erstellen Sie eine Verbindung zu Ihrem Azure Cosmos DB-Konto.

  7. Geben Sie die erforderlichen Informationen für die Aktion ein.

    Eigenschaften Erforderlich Wert BESCHREIBUNG
    Datenbank-ID Ja <Datenbank-ID> Die Datenbank, die Sie verbinden möchten.
    Container-ID Ja <Container-ID> Der Container, den Sie abfragen möchten.
    SQL-Abfrage Ja <SQL-Abfrage> Die SQL Abfrage für Ihre Anforderung.

    Die folgende Abbildung zeigt eine Beispielaktion:

    Screenshot showing the designer for a Standard logic app workflow with the Azure Cosmos DB 'Query items' action and parameters configuration.

  8. Konfigurieren Sie alle anderen Aktionseinstellungen nach Bedarf.

  9. Wählen Sie unter der Aktion Neuen Schritt einfügen (+) > Aktion hinzufügen. Wählen Sie im Bereich Aktion hinzufügen, der geöffnet wird, die Aktion aus, die Sie für alle Abfrageergebniselemente ausführen möchten.

In diesem Beispiel wird die integrierte Azure Cosmos DB-Aktion, genannt, Löschen eines Elements (Vorschau), verwendet.

  1. In der zuvor hinzugefügten Aktion können Sie über die Ausgabe der Abfrageaktion auf Daten zugreifen. Klicken Sie in eines der Eingabefelder in dieser Aktion, damit die Liste mit den dynamischen Inhalten angezeigt wird. Wählen Sie eines der verfügbaren Antwortelemente aus, oder wählen Weitere Informationen für weitere Optionen anzeigen aus.

In diesem Beispiel wird die Antwortelement-ID im Feld Element-ID verwendet, um IDs basierend auf den Abfrageergebnissen aufzufüllen.

Screenshot showing the designer for a Standard logic app workflow with the Azure Cosmos DB **Query items** action dynamic content outputs.

  1. Nachdem Sie ein Antwortelement ausgewählt haben, wird die Aktion Für Alle automatisch hinzugefügt, um alle Abfrageergebnisse zu durchlaufen. Die Für Alle -Schleife enthält die Aktion, die Sie zuvor hinzugefügt haben. Fügen Sie ihrem Workflow alle anderen Aktionen hinzu, die Sie möchten.

  2. Wählen Sie in der Symbolleiste des Designers Speichern aus.

  3. Testen Sie Ihre Logik-App, um sicherzustellen, dass Ihr Workflow die von Ihnen erwartete Ausgabe zurückgibt.

Nächste Schritte