Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Ein Apache Airflow-Auftrag wird von Apache Airflow unterstützt.
Fabric Data Factory bietet einen leistungsstarken Satz von APIs, mit denen Sie Ihre Apache Airflow-Aufträge einfach automatisieren und verwalten können. Sie können eine Verbindung mit verschiedenen Datenquellen und Diensten herstellen und Ihre Workflows mit nur wenigen Codezeilen erstellen, aktualisieren oder überwachen. Die APIs decken alles ab, von der Erstellung und Bearbeitung von Apache Airflow-Aufträgen bis hin zur Nachverfolgung – sodass Sie Ihre Daten reibungslos fließen lassen können, ohne den Aufwand zu vermeiden.
API-Anwendungsfälle für Apache Airflow-Aufträge
Die APIs für Apache Airflow-Aufträge in Fabric Data Factory können in verschiedenen Szenarien verwendet werden:
- Automatisierte Bereitstellung: Automatisieren Sie die Bereitstellung von Apache Airflow Jobs in verschiedenen Umgebungen (Entwicklung, Test, Produktion) mithilfe von CI/CD-Praktiken.
- Überwachung und Warnungen: Richten Sie automatisierte Überwachungs- und Alarmsysteme ein, um den Status von Apache Airflow-Aufträgen nachzuverfolgen und Benachrichtigungen zu erhalten, wenn Fehler oder Leistungsprobleme auftreten.
- Fehlerbehandlung: Implementieren Sie benutzerdefinierte Fehlerbehandlungs- und Wiederholungsmechanismen, um sicherzustellen, dass Apache Airflow-Aufträge reibungslos ausgeführt und von Fehlern wiederhergestellt werden.
Grundlegendes zu APIs
Um die APIs für Apache Airflow Jobs in Fabric Data Factory effektiv zu nutzen, ist es wichtig, die wichtigsten Konzepte und Komponenten zu verstehen:
- Endpunkte: Die API-Endpunkte bieten Zugriff auf verschiedene Apache Airflow Job-Vorgänge, z. B. Erstellen, Aktualisieren und Löschen von Apache Airflow-Aufträgen.
- Authentifizierung: Sicherer Zugriff auf die APIs mithilfe von Authentifizierungsmechanismen wie OAuth oder API-Schlüsseln.
- Anforderungen und Antworten: Grundlegendes zur Struktur von API-Anforderungen und -Antworten, einschließlich der erforderlichen Parameter und der erwarteten Ausgabe.
- Rate limits: Seien Sie sich der Beschränkungen bewusst, die auf die Nutzung der API auferlegt werden, um zu vermeiden, dass die erlaubte Anzahl von Anfragen überschritten wird.
CRUD-Unterstützung
CRUD steht für Create, Read, Update und Delete, bei denen es sich um die vier grundlegenden Vorgänge handelt, die für Daten ausgeführt werden können. In Fabric Data Factory werden die CRUD-Vorgänge über die Fabric-API für Data Factory unterstützt. Mit diesen APIs können Benutzer ihre Apache Airflow-Aufträge programmgesteuert verwalten. Hier sind einige wichtige Punkte zur CRUD-Unterstützung:
- Erstellen: Erstellen Sie neue Apache Airflow-Jobs mit der API.
- Lesen: Abrufen von Informationen zu vorhandenen Apache Airflow-Aufträgen.
- Update: Aktualisieren vorhandener Apache Airflow-Aufträge.
- Löschen: Apache Airflow-Aufträge löschen, die nicht mehr benötigt werden.
Die primäre Online-Referenzdokumentation für Microsoft Fabric-REST-APIs finden Sie in Microsoft Fabric-REST-API-Referenzen .
Zusätzliche APIs, die in Apache Airflow-Aufträgen angeboten werden
Zusätzlich zu CRUD-APIs gibt es eine Reihe zusätzlicher betrieblicher APIs, die für Apache Airflow Jobs angeboten werden:
- Dateiverwaltungs-APIs
- Poolverwaltungs-APIs
- Arbeitsbereichseinstellungen-APIs
Erste Schritte mit REST-APIs für Apache Airflow-Aufträge
In den folgenden Dokumentationen wird beschrieben, wie Sie Apache Airflow-Aufträge und betriebsbereite Anwendungsfälle mithilfe der Fabric Data Factory-APIs erstellen, aktualisieren und verwalten.
Ein Autorisierungstoken holen
Bevor Sie die anderen REST-APIs verwenden, müssen Sie über das Bearertoken verfügen.
Von Bedeutung
Stellen Sie in den folgenden Beispielen sicher, dass das Wort "Bearer" (mit einem Leerzeichen) vor dem Zugriffstoken selbst steht. Wenn Sie einen API-Client verwenden und "Bearer-Token" als Authentifizierungstyp auswählen, wird "Bearer" automatisch für Sie eingefügt und erfordert nur die Bereitstellung des Zugriffstokens.
Option 1: Mithilfe von MSAL.Net
Im Abschnitt Get Token der Fabric-API-Schnellstartanleitung finden Sie ein Beispiel zum Abrufen des MSAL-Autorisierungstokens.
Verwenden Sie MSAL.Net, um ein Microsoft Entra ID-Token für den Fabric-Dienst mit den folgenden Bereichen abzurufen: Workspace.ReadWrite.All, Item.ReadWrite.All. Weitere Informationen zum Tokenerwerb mithilfe von MSAL.Net finden Sie unter Tokenerwerb – Microsoft Authentication Library für .NET.
Kopieren Sie das Token aus der AccessToken-Eigenschaft , und ersetzen Sie den <Zugriffstokenplatzhalter> in den folgenden Beispielen durch das Token.
Option 2: Verwenden des Fabric-Portals
Melden Sie sich beim Fabric-Portal für den Mandanten an, auf dem Sie testen möchten, und drücken Sie F12, um den Entwicklermodus des Browsers einzugeben. Führen Sie in der Konsole dort Folgendes aus:
powerBIAccessToken
Kopieren Sie das Token, und ersetzen Sie den <Zugriffstokenplatzhalter> in den folgenden Beispielen durch das Token.
Erstellen eines Apache Airflow-Auftrags
Erstellen Sie einen Apache Airflow-Auftrag in einem angegebenen Arbeitsbereich.
Beispiel für eine Anforderung:
URI: POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items
Header:
{
"Authorization": "Bearer <access-token>",
"Content-Type": "application/json"
}
Nutzdaten:
{
"displayName": "My Apache Airflow Job",
"description": "My Apache Airflow Job description",
"type": "ApacheAirflowJob"
}
Beispielantwort:
{
"id": "<artifactId>",
"type": "ApacheAirflowJob",
"displayName": "My Apache Airflow Job",
"description": "My Apache Airflow Job description",
"workspaceId": "<workspaceId>"
}
Erstellen eines Apache Airflow-Auftrags mit Definition
Erstellen Sie einen Apache Airflow-Auftrag mit einer öffentlichen Definition in einem angegebenen Arbeitsbereich. Weitere Details zum Erstellen eines Apache Airflow-Auftrags mit Definition finden Sie unter Microsoft Fabric REST API.
Beispiel für eine Anforderung:
URI: POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items
Header:
{
"Authorization": "Bearer <access-token>",
"Content-Type": "application/json"
}
Nutzdaten:
{
"displayName": " My Apache Airflow Job",
"description": "My Apache Airflow Job description",
"type": "ApacheAirflowJob",
"definition": {
"parts": [
{
"path": "ApacheAirflowJob.json",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
},
{
"path": ".platform",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
}
]
}
}
Beispielantwort:
{
"id": "<Your artifactId>",
"type": "ApacheAirflowJob",
"displayName": "My Apache Airflow Job",
"description": "My Apache Airflow Job description",
"workspaceId": "<Your workspaceId>"
}
Apache Airflow-Auftrag abrufen
Gibt Eigenschaften des angegebenen Apache Airflow-Auftrags zurück.
Beispiel für eine Anforderung:
URI: GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}
Header:
{
"Authorization": "Bearer <access-token>"
}
Beispielantwort:
{
"id": "<Your artifactId>",
"type": "ApacheAirflowJob",
"displayName": "My Apache Airflow Job",
"description": "My Apache Airflow Job description",
"workspaceId": "<Your workspaceId>"
}
Apache Airflow-Auftrag mit Definition abrufen
Gibt die Elementdefinition des Apache Airflow-Auftrags zurück. Weitere Details zum Abrufen eines Apache Airflow-Auftrags mit Definition finden Sie in der Microsoft Fabric-REST-API.
Beispiel für eine Anforderung:
URI: POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/getDefinition
Header:
{
"Authorization": "Bearer <access-token>"
}
Beispielantwort:
{
"definition": {
"parts": [
{
"path": "ApacheAirflowJob.json",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
},
{
"path": ".platform",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
}
]
}
}
Apache Airflow-Auftrag aktualisieren
Aktualisiert die Eigenschaften des Apache Airflow-Auftrags.
Beispiel für eine Anforderung:
URI: PATCH https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}
Header:
{
"Authorization": "Bearer <access-token>",
"Content-Type": "application/json"
}
Nutzdaten:
{
"displayName": "My Apache Airflow Job updated",
"description": "My Apache Airflow Job description updated",
"type": "ApacheAirflowJob"
}
Beispielantwort:
{
"id": "<Your artifactId>",
"type": "ApacheAirflowJob",
"displayName": "My Apache Airflow Job updated",
"description": "My Apache Airflow Job description updated",
"workspaceId": "<Your workspaceId>"
}
Apache Airflow-Auftrag mit Definition aktualisieren
Aktualisiert die Elementdefinition des Apache Airflow-Auftrags. Weitere Details zum Aktualisieren eines Apache Airflow-Auftrags mit Definition finden Sie in der Microsoft Fabric-REST-API.
Beispiel für eine Anforderung:
URI: POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/updateDefinition
Header:
{
"Authorization": "Bearer <access-token>",
"Content-Type": "application/json"
}
Nutzdaten:
{
"displayName": "My Apache Airflow Job",
"type": "ApacheAirflowJob",
"definition": {
"parts": [
{
"path": "ApacheAirflowJob.json",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
},
{
"path": ".platform",
"payload": "{apacheAirflowJobPayload}",
"payloadType": "InlineBase64"
}
]
}
}
Beispielantwort:
200 OK
Apache Airflow-Auftrag löschen
Löscht den angegebenen Apache Airflow-Auftrag.
Beispiel für eine Anforderung:
URI: DELETE https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}
Header:
{
"Authorization": "Bearer <access-token>"
}
Beispielantwort:
200 OK
Dateiverwaltungs-APIs
Apache Airflow-Auftragsdatei abrufen
Gibt die Job-Datei von Apache Airflow nach Pfad zurück.
Anforderungs-URI: GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/apacheairflowjobs/{apacheAirflowJobId}/files/{filePath}?preview=true
Beispielergebnisse:
200 OK
Erstellen/Aktualisieren der Apache Airflow-Auftragsdatei
Erstellt oder aktualisiert eine Apache Airflow Job-Datei.
Anforderungs-URI: PUT https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/apacheairflowjobs/{apacheAirflowJobId}/files/{filePath}?preview=true
Anforderungsnutzlast:
PYTHON files (DAGs), should be UTF-8 encoded
Beispielergebnisse:
200 OK
Apache Airflow-Auftragsdatei löschen
Löscht die angegebene Apache Airflow Job-Datei.
Anforderungs-URI: DELETE https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/apacheairflowjobs/{apacheAirflowJobId}/files/{filePath}?preview=true
Beispielergebnisse:
200 OK
Apache Airflow-Auftragsdateien auflisten
Listet die Dateien auf, die in der angegebenen Apache Airflow Job-Datei enthalten sind.
Anforderungs-URI: GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/apacheairflowjobs/{apacheAirflowJobId}/files?rootPath=”my_folder”&continuationToken={token}?preview=true
Beachten Sie, dass rootPath und continutationToken optional sind.
Beispielergebnisse:
{
"files": [
{ filePath:string, sizeInBytes: int },
],
"continuationToken": "LDEsMTAwMDAwLDA%3D "
"continuationUri": "https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/apacheairflowjobs/{apacheAirflowJobId}/files?continuationToken='LDEsMTAwMDAwLDA%3D'"
}
Unterstützung des Dienstprinzipalnamens (Service Principal Name, SPN)
Der Dienstprinzipalname (SERVICE Principal Name, SPN) wird für Apache Airflow-Aufträge in Fabric Data Factory unterstützt.
- Authentifizierung: Airflow verwendet einen Dienstprinzipal zum Authentifizieren ausgehender API-Aufrufe (z. B. für Azure-Dienste oder andere gesicherte Endpunkte). Dadurch können DAGs unbeaufsichtigt ausgeführt werden, während sichergestellt wird, dass nur genehmigte Identitäten auf downstream-Ressourcen zugreifen können.
- Konfiguration: Um einen SPN mit Airflow zu verwenden, erstellen Sie einen Dienstprinzipal in Azure Active Directory, und erteilen Sie ihm die erforderlichen Berechtigungen für den Zieldienst. Wenn Ihr Airflow-DAG beispielsweise von Azure Data Lake Storage liest oder darin schreibt, muss dem Service Principal die entsprechenden Speicherrollen zugewiesen werden (z. B. Storage Blob Data Reader oder Beitragender).
- Verbindung: Beim Konfigurieren von Airflow-Verbindungen in Fabric Data Factory können Sie auf einen Dienstprinzipal verweisen, indem Sie die Mandanten-ID, die Client-ID und den geheimen Clientschlüssel angeben. Diese Anmeldeinformationen werden dann von Airflow-Operatoren und Hooks verwendet, wenn authentifizierte API-Aufrufe getätigt werden.
- Sicherheit: Die Verwendung von SPNs verhindert das direkte Einbetten von Benutzeranmeldeinformationen in DAG-Code- oder Konfigurationsdateien. Außerdem vereinfacht es die Rotation von Anmeldeinformationen, die Zugriffsüberwachung und den Zugriffsentzug, ohne dass Änderungen an der Airflow-DAG-Logik erforderlich sind.
Ausführlichere Informationen zum Einrichten und Verwenden von SPNs in Fabric Data Factory finden Sie unter SPN-Unterstützung in Data Factory.
Verwandte Inhalte
Weitere Informationen zu APIs in Apache Airflow-Aufträgen in Fabric Data Factory finden Sie in den folgenden Inhalten: