HITL ऑपरेटर

Python में Apache Airflow परिचय

Mike Metzger

Data Engineer

Human-In-The-Loop?

  • हमारे सभी मौजूदा वर्कफ़्लो शुरू से अंत तक ऑटोमैटिक चलते हैं
  • कुछ समस्याएँ (फेल्योर, नोटिफिकेशन, आदि) हम मौजूदा विकल्पों से संभाल सकते हैं
  • चिंताजनक स्थितियों या बेहद अहम विवरणों को "डबल-चेक" नहीं कर सकते
  • Human-In-The-Loop ऑपरेटर रनिंग वर्कफ़्लो में मानव इंटरैक्शन जोड़ने देते हैं

कंप्यूटर पर कोड लिखते व्यक्ति की फोटो

Python में Apache Airflow परिचय

अलग-अलग ऑपरेटर

  • HITL ऑपरेटर की एक श्रेणी है
  • अलग-अलग ऑपरेटर अलग तरह की इंटरैक्शन देते हैं
  • HITL ऑपरेटर के 4 प्रकार
Python में Apache Airflow परिचय

HITL ऑपरेटर

  • HITLOperator: सभी HITL ऑपरेटर का बेस क्लास। यह टास्क को डिफर्ड स्टेट में डालता है और रिस्पॉन्स का इंतज़ार करते हुए वर्कर स्लॉट्स रिलीज़ करता है।
  • HITLBranchOperator: मैनुअल निर्णय के लिए, जो तय करता है कि Dag किस डाउनस्ट्रीम पथ पर जाए।
  • HITLEntryOperator: यूज़र को TriggerForm से स्ट्रक्चर्ड इनपुट देने देता है, जिसे वैलिडेट कर XCom में अगली टास्क के लिए सेव किया जाता है।
  • ApprovalOperator: एक स्पेशल ऑपरेटर जो यूज़र को सरल "Approve" या "Reject" का विकल्प देता है।
Python में Apache Airflow परिचय

ApprovalOperator

  • from airflow.providers.standard.operators.hitl import ApprovalOperator
  • Attributes:
    • subject - अप्रूवल का विषय/शीर्षक
    • body - संदेश की सामग्री
    • execution_timeout - रिस्पॉन्स के लिए कितनी देर इंतज़ार करना है (timedelta)
    • defaults - टाइमआउट पर डिफॉल्ट approve या reject क्या हो
    • assigned_users - जिन यूज़र्स को संदेश भेजना है उनकी सूची
Python में Apache Airflow परिचय

ApprovalOperator उदाहरण

approve_gate = ApprovalOperator(
        task_id="approve_data_import",
        subject="Data import - Approval Required",
        body=(
            "Please review the data produced by the *extract_info* task."
            "Approve to write data to the database, or Reject to halt the run."
        ),
    )
Python में Apache Airflow परिचय

Airflow UI में ApprovalOperator

Dag रन व्यू में, यदि कोई टास्क Approval का इंतज़ार कर रहा हो तो RequiredActions व्यू दिखता है।

Airflow Dag रन व्यू जिसमें Approval required स्टेटस वाला टास्क दिख रहा है

Python में Apache Airflow परिचय

ApprovalOperator होम पेज

Airflow होम पेज में Required Actions सेक्शन दिख रहा है

Python में Apache Airflow परिचय

Airflow UI में ApprovalOperator संदेश

Airflow UI में Approve और Reject विकल्पों वाला अप्रूवल संदेश

Python में Apache Airflow परिचय

अभ्यास करते हैं!

Python में Apache Airflow परिचय

Preparing Video For Download...