DataWorks, yerel sistemler veya kiracılar arası ortamlar gibi harici bir ortamdan OpenAPI işlemi çağırarak bir iş akışındaki düğümü ve onun alt akışındaki düğümleri tetiklemenizi sağlayan bir HTTP tetikleyici düğümü sunar. Bu sayede görevleri yerel sisteminizden tetikleyebilir veya kiracılar arası görev bağımlılıklarını yönetebilirsiniz.
Ürüne genel bakış
HTTP tetikleyici düğümü, DataWorks OpenAPI işlemi TriggerSchedulerTaskInstance kullanılarak bu düğümün ve alt akışındaki düğümlerin zamanlamasını tetiklemenize olanak tanıyan özel bir sanal düğümdür.
Tetikleme mekanizması
Bir HTTP tetikleyici düğümü, yalnızca üst akıştaki düğümler başarılı olduktan ve harici bir sistem bir zamanlama komutu gönderdikten sonra alt akıştaki düğümleri tetikler. HTTP tetikleyici düğümünün kullanımını gösteren bir diyagram için bkz. Kullanım diyagramı.
Kullanım diyagramı
HTTP tetikleyici düğümü genellikle harici ortamlar ile DataWorks zamanlama sistemi arasındaki iletişim için kullanılır.
Diyagram açıklaması:
Data Studio'da bir HTTP tetikleyici düğümü içeren bir iş akışı oluşturun, her düğüm için bağımlılıkları yapılandırın ve iş akışını Operation Center'a dağıtın.
Sistem, zamanlama saatine göre otomatik olarak zamanlanmış örnekler oluşturur. Bu örneklerden HTTP tetikleyici düğümünün görev kimliği ve tetikleme zamanı gibi bilgilerini edinebilirsiniz.
Bu bilgileri Java veya Python kodunda ya da API hata ayıklama sayfasında kullanarak OpenAPI işlemini çağırın ve düğümü tetikleyin. Belirli bir örneği ve sonraki iş akışını tetiklemek için
TriggerTimeparametresini sabit bir değere ayarlayabilirsiniz. Tüm örnekleri dinamik olarak tetiklemek içinTriggerTimedeğerini dinamik bir değişkene ayarlayın. HTTP tetikleyici düğümü tetikleme komutunu alıp doğruladıktan sonra alt akıştaki düğümleri sırayla yürütür.
Tetikleme koşulları
Bir HTTP tetikleyici düğümü yalnızca aşağıdaki koşullar karşılandığında tetiklenebilir:
HTTP tetikleyici düğümünün zamanlanmış bir örneği mevcut olmalıdır. Bu örneği Operation Center'daki Cycle Examples sayfasında bulabilirsiniz. Örnek, TriggerSchedulerTaskInstance API'si tarafından başarıyla tetiklenmeden önce Waiting for Trigger durumunda kalır. Alt akıştaki düğümler, HTTP tetikleyici düğümünü tetiklemek için
TriggerSchedulerTaskInstanceAPI'si başarıyla çağrılana kadar engellenmiş durumda kalır; bu noktadan sonra alt akıştaki düğümler sırayla çalışır.HTTP tetikleyici düğümünün bağımlı olduğu tüm üst akış düğümleri başarıyla çalışmıştır, yani bunların örnekleri başarılı durumdadır.
HTTP tetikleyici düğümünün zamanlanmış örneği için belirlenen zamanlanmış saat gelmiştir.
HTTP tetikleyici düğümü tarafından kullanılan zamanlama kaynak grubunun tetikleme anında yeterli kaynağı bulunmaktadır.
HTTP tetikleyici düğümü dondurulmuş durumda değildir.
Yalnızca Waiting for Trigger durumundaki HTTP tetikleyici düğümü örnekleri tetiklenebilir. Zaten başarıyla tetiklenmiş örnekler tekrar tetiklenemez.
Yaygın senaryolar
Harici dosya tabanlı zamanlama: Harici bir betik (Python gibi) kullanarak Excel veya CSV dosyaları gibi dosyalardan tarih veya koşul bilgilerini okuyun. Tetikleme koşulları karşılandığında, DataWorks OpenAPI işlemi TriggerSchedulerTaskInstance çağrılarak HTTP tetikleyici düğümü tetiklenir ve harici verilere dayalı otomatik zamanlama uygulanır.
Kiracılar arası görev bağımlılığı: Farklı kiracılara ait DataWorks örnekleri arasında görev bağımlılıkları olduğunda, kiracılar arasında görevleri tetiklemek için HTTP tetikleyici düğümünü kullanabilirsiniz. Daha fazla bilgi için bkz. Kiracılar arasında düğüm yürütmeyi tetiklemek için HTTP tetikleyici düğümünü kullanma.
DataWorks Professional Edition veya daha üst bir sürümü kullanıyorsanız, benzer harici koşul kontrolleri uygulamak için Check node özelliğini de kullanabilirsiniz.
Notlar
Bir HTTP tetikleyici düğümü, yalnızca üst akıştaki düğümler başarıyla çalıştıktan ve harici ortam bir zamanlama komutu gönderdikten sonra alt akıştaki düğümleri tetikler.
-
Harici ortam, üst akıştaki düğümler çalışmayı bitirmeden önce bir zamanlama komutu gönderirse HTTP tetikleyici düğümü alt akıştaki düğümleri tetiklemez. Sistem, harici ortamdan gelen zamanlama komutunu saklar ve üst akıştaki düğümler çalışmayı bitirdikten sonra HTTP tetikleyici düğümü aracılığıyla alt akıştaki düğümleri tetikler.
NotHarici ortamdan gelen tetikleme komutu yalnızca 24 saat boyunca saklanır. Üst akıştaki düğümler 24 saat içinde çalışmayı tamamlamazsa tetikleme komutu kaybolur ve harici ortam tarafından gönderilen zamanlama komutu geçersiz hale gelir.
Geçerli HTTP tetikleyici düğümü örneği başarıyla tetiklendikten sonra tekrar tetiklenemez.
Önkoşullar
-
Kullanmak istediğiniz RAM kullanıcısı çalışma alanınıza eklenmiştir.
Görevleri geliştirmek için bir RAM kullanıcısı kullanmak istiyorsanız, RAM kullanıcısını üye olarak çalışma alanınıza eklemeli ve ona Develop veya Workspace Administrator rolünü atamalısınız. Workspace Administrator rolü gerekli olandan daha fazla izne sahiptir. Bu rolü atarken dikkatli olun. Bir üyeyi nasıl ekleyeceğinize ve rol atayacağınıza ilişkin daha fazla bilgi için bkz. Çalışma alanına üye ekleme.
Sunucusuz bir kaynak grubu çalışma alanınızla ilişkilendirilmiştir. Daha fazla bilgi için Sunucusuz kaynak gruplarını kullanma dizinindeki konulara bakın.
Bir HTTP tetikleyici düğümü geliştirmeden önce ilgili HTTP tetikleyici düğümünü oluşturmanız gerekir. Daha fazla bilgi için bkz. HTTP tetikleyici düğümü oluşturma.
Sınırlamalar
HTTP tetikleyici düğümü özelliği yalnızca Dataworks Enterprise Edition ve daha üst sürümlerde kullanılabilir. DataWorks sürümleri hakkında daha fazla bilgi için bkz. DataWorks sürümleri.
HTTP tetikleyici düğümü yalnızca görevleri tetiklemek için kullanılır ve bir hesaplama görevi olarak kullanılamaz. Çalıştırmak istediğiniz görev düğümlerini, görevleri tetiklemek ve yürütmek için HTTP tetikleyici düğümünün alt akış düğümleri olarak ayarlamanız gerekir.
HTTP tetikleyici düğümü oluşturma
HTTP tetikleyici düğümü oluşturma
Bir düğümün nasıl oluşturulacağı hakkında bilgi için bkz. HTTP tetikleyici düğümü oluşturma.
HTTP tetikleyici düğümünü yapılandırma
Bir HTTP tetikleyici düğümü oluşturduktan sonra, düğüm düzenleme sayfasının sağ tarafındaki Scheduling Settings bölümünde aşağıdaki parametreleri yapılandırın. Diğer parametreler hakkında daha fazla bilgi için bkz. Zamanlama ayarları.
|
|
|
|
|
|
|
|
T +1 generated next day veya Instant generation after publishing seçeneklerinden birini seçebilirsiniz. |
HTTP tetikleyici düğümü sıfır yük taşıyan bir düğümdür. Herhangi bir düğüm içeriği yazmanıza gerek yoktur.
HTTP tetikleyici düğümünün herhangi bir üst akış düğümü yoksa, iş akışının kök düğümü varsayılan üst akış düğümü olarak kullanılır.
HTTP tetikleyici düğümünü dağıtma
Zamanlama ayarlarını tamamladıktan sonra HTTP tetikleyici düğümünü gönderin ve üretim ortamına dağıtın. Daha fazla bilgi için bkz. Düğümleri dağıtma.
Bir görev dağıtıldıktan sonra zamanlama ayarlarınıza göre periyodik olarak çalışır. Dağıtılan zamanlanmış görevleri yolundan görüntüleyebilir ve görevler üzerinde bakım işlemleri gerçekleştirebilirsiniz. Daha fazla bilgi için bkz. Zamanlanmış görevleri yönetme.
Harici zamanlama ortamlarında tetikleme yapılandırması
Harici bir zamanlama ortamında tetikleme ayarlarını yapılandırırken, daha önce elde ettiğiniz HTTP tetikleyici düğümü örnek parametrelerini aşağıdaki yöntemlerden biriyle yapılandırmanız ve HTTP tetikleyici düğümünü tetiklemek için TriggerSchedulerTaskInstance işlemini çağırmanız gerekir.
HTTP tetikleyici düğümü örnek parametrelerini edinme
HTTP tetikleyici düğümünü yapılandırdığınızda seçtiğiniz örnek oluşturma yöntemine bağlı olarak, Operation Center'da HTTP tetikleyici düğümü örnek parametrelerini görüntüleyin ve kaydedin.
Ertesi gün T+1 oluşturma: HTTP örnek parametrelerini görüntülemek ve kaydetmek için ertesi gün Operation Center'a gitmeniz gerekir.
Dağıtımdan hemen sonra anlık oluşturma: HTTP örnek parametrelerini görüntülemek ve kaydetmek için hemen Operation Center'a gidebilirsiniz.
-
DataWorks konsoluna giriş yapın. Hedef bölgede sol gezinme bölmesinden seçeneğine tıklayın. Açılan listeden bir çalışma alanı seçin ve Go to Operation Center seçeneğine tıklayın.
Sol gezinme bölmesinde seçeneğine tıklayarak Cycle Examples sayfasına gidin.
-
Listede oluşturduğunuz HTTP tetikleyici düğümü örneğini bulun ve örneğin Task ID ile Scheduled Time değerlerini kaydedin.
NotÖrneğin Task ID değerini görüntülemek için HTTP tetikleyici düğümü örneğinin adının üzerine gelin.
Yöntem 1: Java
Yöntem 2: Python
Yöntem 3: API hata ayıklama aracı
Referans
DataWorks, kiracılar arası senaryolarda görevleri tetiklemek ve yürütmek için HTTP tetikleyici düğümü özelliğini sağlar. Daha fazla bilgi için bkz. Kiracılar arasında düğüm yürütmeyi tetiklemek için HTTP tetikleyici düğümünü kullanma.