airflow-dag-patterns
Apache Airflow DAGs mit Produktionsmustern erstellen
Également disponible depuis: wshobson
Das Erstellen produktionsreifer Airflow DAGs erfordert das Verständnis von Operatoren, Sensoren und Fehlerbehandlungsmustern. Diese Skill bietet erprobte Vorlagen und Best Practices für die Datenpipeline-Orchestrierung.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "airflow-dag-patterns". Erstellen Sie einen täglichen ETL-DAG mit Extract-, Transform- und Load-Tasks
Résultat attendu:
- DAG erstellt mit Zeitplan '0 6 * * *' (täglich um 6 Uhr)
- Drei PythonOperator-Tasks: extract_data, transform_data, load_data
- Task-Abhängigkeiten: extract >> transform >> load
- Wiederholungskonfiguration: 3 Wiederholungen mit exponentiellem Backoff von 5 Minuten
- E-Mail-Benachrichtigungen für Task-Fehler konfiguriert
Utilisation de "airflow-dag-patterns". Fügen Sie einen Sensor hinzu, der auf S3-Dateien vor der Verarbeitung wartet
Résultat attendu:
- S3KeySensor hinzugefügt mit 2-Stunden-Timeout und 5-Minuten-Poke-Intervall
- Sensor konfiguriert mit mode='reschedule', um Worker-Slots freizugeben
- Verarbeitungs-Task als Downstream-Abhängigkeit des Sensors gesetzt
- DAG wartet jetzt auf Dateiverfügbarkeit vor der Ausführung
Audit de sécurité
SûrStatic analysis detected 41 patterns but all are false positives. Backtick characters are markdown formatting for code blocks, not shell execution. globals() usage is standard Airflow pattern for dynamic DAG generation. URLs are documentation references. This is educational documentation with no executable security risks.
Score de qualité
Ce que vous pouvez construire
Data-Engineering-Teams, die ETL-Pipelines erstellen
Erstellen Sie geplante Daten-Pipelines, die Daten aus Quellen extrahieren, transformieren und in Warehouses laden, mit korrekter Fehlerbehandlung und Überwachung.
Analytics-Teams, die Berichtserstellung orchestrieren
Planen Sie automatisierte Berichtserstellungs-Tasks mit Abhängigkeiten von Datenverfügbarkeit und dem Abschluss vorgelagerter Verarbeitung.
ML-Ingenieure, die Modelle planmäßig trainieren
Orchestrieren Sie Machine-Learning-Training-Pipelines mit Datenvalidierung, Modelstraining und Bereitstellungsstufen.
Essayez ces prompts
Erstellen Sie einen Airflow DAG, der täglich um 6 Uhr morgens läuft, um Daten aus einer CSV-Datei zu extrahieren, zu transformieren und in eine Datenbank zu laden. Fügen Sie grundlegende Fehlerbehandlung mit Wiederholungen hinzu.
Generieren Sie mehrere ähnliche DAGs aus einer Konfigurationsliste zur Verarbeitung verschiedener Datenquellen. Jeder DAG sollte die gleiche Struktur haben, aber unterschiedliche Zeitpläne und Quellpfade.
Erstellen Sie einen DAG, der Datenqualitätsmetriken prüft und basierend auf der Qualitätsbewertung zu verschiedenen Verarbeitungspfaden verzweigt. Fügen Sie nach der Verzweigung korrekte Join-Logik hinzu.
Erstellen Sie einen DAG, der auf das Eintreffen von Dateien in S3 wartet, von einem anderen DAG abhängt und einen API-Gesundheitsendpunkt überwacht, bevor die Verarbeitung beginnt. Verwenden Sie den Reschedule-Modus für Sensoren.
Bonnes pratiques
- Verwenden Sie die TaskFlow API für saubereren Code und automatische XCom-Übergabe zwischen Tasks
- Gestalten Sie alle Tasks als idempotent, sodass Wiederholungen keine Datenduplikation verursachen
- Setzen Sie geeignete Timeouts auf Tasks und verwenden Sie den Reschedule-Modus für Sensoren, um Worker-Ressourcen freizugeben
Éviter
- Verwendung von depends_on_past=True, das unnötige Engpässe erzeugt und parallele Ausführung blockiert
- Festcodierung von Daten oder Werten anstelle der Verwendung von Airflow-Makros wie {{ ds }} für Ausführungsdaten
- Platzierung schwerer Geschäftslogik direkt in DAG-Dateien anstatt des Imports aus separaten Modulen