Size atıfta bulunduğunuz proje this Jira ticket ile ilgili olabilir.
Şu anda JobControl class oldukça çıplak ve kullanıcının hayatını kolaylaştıracak bir dizi işlevsellik eksik. Şu anda sadece JobControl.run
diyoruz ve bu kadar, ama bir şey benim işim değişiklikleri zaman haberdar olsun eğer uygulamada ilginç olabilir: iş durumunu değiştirdiğinde bildirim almak için
- Yetenek: Örneğin.
- Hatalı işler yeniden gönderilirse:/veya başarısız olursa bir işi yeniden göndermek için bir tesis uygulayabilirsiniz; örneğin,
ControlledJob
sınıfında maksimum yeniden deneme sayısı parametresi olabilir ve bu noktaya kadar bir bildirim göndermeden önce bu noktaya kadar yeniden deneme yapabilirsiniz. başarısız oldu.
- Haftalık, günlük, saatlik, düzenli olarak bir çok iş çalıştırılır ... Bu genellikle crontab yoluyla yapılır, bu nedenle Hadoop'a gömülü bu özelliğe sahip olmak ilginç olabilir, örneğin kullanıcılar bir bir süre belirterek yinelenen iş ve JobControl bu düzenli aralıklarla çalıştırırdı.
- Belki de iş akışınızı ve her işin bağımlılıklarını görselleştirmek için bir kullanıcı arabiriminiz var, hangi adımlar daha önce tamamlandı ve ne yapılmadı.
- Yalnızca Map/Reduce işlerini başlatmanın yanı sıra, örneğin Hive, Pig'ı da kullanma kabiliyetine sahip olmak ilginç olabilir, böylece kullanıcılar her türlü işi gönderebilecekleri ve sorunsuz bir şekilde monitore edebilecekleri genel bir arabirim sağlayabilirsiniz.
Sonunda tamamen yeni bir çerçeve yeniden yapılandırmanız gerektiğini düşünmüyorum, JobControl
sınıfı zaten iyi bir başlangıç noktası sağlıyor. Kullanıcının bakış açısıyla düşünmeye çalışın, işleri daha kolay ve daha kısa sürede yapmak ve yönetmek için ne yapabilirsiniz? Buradaki ve biletteki fikirler sadece bir örnektir, kendi fikirlerinizle gelmekte özgürsünüz.
Oozie ile ilgili olarak, bir iş akışını denetlemek için daha yüksek bir soyutlama sağlar, ancak kurulum için daha karmaşıktır ve daha karmaşık işler için ayrılmalıdır. Bazı insanların Oozie'yi kullanmakta tereddüt ettiklerini biliyorum çünkü uygulamalarınıza ek yük getiriyor. Büyük fark aynı zamanda Oozie bir sunucudur, JobControl
ise sadece ek makine olan istemci makinede çalışır.Yukarıda bahsedilen özelliklerin bir kısmı Oozie'da 1 şekilde veya diğer şekilde mevcut iken, Oozie gibi ekstra çalışmaya gerek kalmadan istemci makinede basit ve kesintisiz çalışabilme yeteneği benim düşünceme göre projenizin anahtarıdır.
Emin değilim. Ama sonra yinelemeli harita küçültme, stratosfer ve Mesos'a bir göz atın. Bu, bunların bir kombinasyonu gibi görünüyor. – debarshi