Görev bağımlılıklarını yapılandırma
Bağımlılıkları çalıştır alanı, diğer görevlerin başarısına, başarısızlığına veya tamamlanmasına bağlı olarak görevlere denetim akışı mantığı eklemenize olanak tanır.
Bağımlılıklar iş DAG'sinde görevler arasında satırlar olarak görsel olarak gösterilir.
Azure Databricks, aşağı akış görevlerini çalıştırmadan önce yukarı akış görevlerini çalıştırır ve bunların mümkün olduğunca çoğunu paralel olarak çalıştırır.
Not
Bağlı olan yalnızca iş birden çok görevden oluşuyorsa görünür.
Databricks ayrıca denetim akışı ve koşullulaştırma için aşağıdaki işlevlere sahiptir:
- If/else koşulu görevi, boole ifadesinin sonuçlarına göre iş DAG'sinin bir bölümünü çalıştırmak için kullanılır. Bu
If/else condition
görev, işinize dallanma mantığı eklemenize olanak tanır. Örneğin, dönüştürme görevlerini yalnızca yukarı akış alma görevi yeni veri ekliyorsa çalıştırın. Bkz. If/else göreviyle işe dallanma mantığı ekleme. - Her koşul için görevi, giriş dizisini temel alan başka bir göreve döngü mantığı ekler. Giriş dizileri el ile belirtilebilir veya dinamik olarak oluşturulabilir. Bkz. Döngüde parametreli Azure Databricks iş görevi çalıştırma.
- İşi Çalıştır görevi, çalışma alanınızda başka bir işi tetiklemenize olanak tanır. İşler için bkz. İşi Çalıştır görevi.
Göreve bir Çalıştırma if koşulu ekleme
Yeni bir görev oluşturduğunuzda DAG'nizde seçili bir göreviniz varsa, yeni göreviniz varsayılan olarak bu görevde yapılandırılmış bir bağımlılığına sahiptir.
Koşulları düzenlemek veya eklemek için aşağıdakileri yapın:
- Bir görev seçin.
- Bağımlı alanında, bir görevi kaldırmak için X işaretine tıklayın veya açılan menüden eklenecek görevleri seçin.
- Bağımlılıkları çalıştır alanındaki koşullu seçeneklerden birini seçin.
- Görevi kaydet'e tıklayın.
Run if
koşul seçenekleri
Göreve aşağıdaki Run if
koşulları ekleyebilirsiniz:
- Tümü başarılı: Tüm bağımlılıklar çalıştırıldı ve başarılı oldu. Bu varsayılan ayardır. Görev, koşul karşılanmamış gibi
Upstream failed
işaretlenir. - En az bir bağımlılık başarılı oldu: En az bir bağımlılık başarılı oldu. Görev, koşul karşılanmamış gibi
Upstream failed
işaretlenir. - Hiçbiri başarısız olmadı: Bağımlılıkların hiçbiri başarısız olmadı ve en az bir bağımlılık çalıştırıldı. Görev, koşul karşılanmamış gibi
Upstream failed
işaretlenir. - Tümü tamamlandı: Görev, bağımlı çalıştırmaların durumundan bağımsız olarak tüm bağımlılıkları çalıştırıldıktan sonra çalıştırılır. Bu koşul, bağımlı görevlerinin sonucuna bağlı olmadan çalıştırılacak bir görev tanımlamanızı sağlar.
- En az biri başarısız oldu: En az bir bağımlılık başarısız oldu. Görev, koşul karşılanmamış gibi
Excluded
işaretlenir. - Tümü başarısız oldu: Tüm bağımlılıklar başarısız oldu. Görev, koşul karşılanmamış gibi
Excluded
işaretlenir.
Not
- Hataları işlemek için yapılandırılan görevler, koşulları karşılanmamış gibi
Excluded
Run if
işaretlenir. Dışlanan görevler atlanır ve başarılı olarak kabul edilir. - Tüm görev bağımlılıkları dışlanırsa, koşulu ne olursa olsun
Run if
görev de dışlanır. - Bir görev çalıştırmasını iptal ederseniz, iptal aşağı akış görevlerine yayılır ve hataları işleyen bir
Run if
koşula sahip görevler çalıştırılır. Örneğin, bir görev çalıştırması iptal edildiğinde temizleme görevinin çalıştığını doğrulayın.
Görev bağımlılıkları olan örnek iş
Görev bağımlılıklarını yapılandırmak, iş zamanlayıcılarında yürütme sırasını temsil etmenin yaygın bir yolu olan, görev yürütmesinin Yönlendirilmiş Bir Döngüsel Grafını (DAG) oluşturur. Örneğin, dört görevden oluşan aşağıdaki işi göz önünde bulundurun:
- 1. Görev kök görevdir ve başka hiçbir göreve bağımlı değildir.
- Görev 2 ve Görev 3, önce 1. Görevin tamamlanmasına bağlıdır.
- Son olarak, Görev 4, Görev 2 ve Görev 3'in başarıyla tamamlanmasına bağlıdır.
Aşağıdaki diyagramda bu görevler için işleme sırası gösterilmektedir: