Apache Storm - Giriş
Apache Storm nedir?
Apache Storm, dağıtılmış gerçek zamanlı bir büyük veri işleme sistemidir. Storm, büyük miktarda veriyi hataya dayanıklı ve yatay ölçeklenebilir bir yöntemle işlemek için tasarlanmıştır. En yüksek alım oranlarına sahip bir akış veri çerçevesidir. Storm devletsiz olmasına rağmen, dağıtılmış ortamı ve küme durumunu Apache ZooKeeper aracılığıyla yönetir. Bu basittir ve gerçek zamanlı veriler üzerinde her türlü değişikliği paralel olarak gerçekleştirebilirsiniz.
Apache Storm, gerçek zamanlı veri analizinde lider olmaya devam ediyor. Storm'un kurulumu, çalıştırılması kolaydır ve her mesajın en az bir kez topoloji aracılığıyla işleneceğini garanti eder.
Apache Storm ve Hadoop
Temel olarak Hadoop ve Storm çerçeveleri, büyük verileri analiz etmek için kullanılır. İkisi de birbirini tamamlar ve bazı açılardan farklılık gösterir. Apache Storm, kalıcılık dışındaki tüm işlemleri gerçekleştirirken, Hadoop her şeyde iyidir ancak gerçek zamanlı hesaplamada gecikir. Aşağıdaki tablo Storm ve Hadoop'un özelliklerini karşılaştırmaktadır.
Fırtına | Hadoop |
---|---|
Gerçek zamanlı akış işleme | Toplu işlem |
Vatansız | Durum bilgili |
ZooKeeper tabanlı koordinasyon ile Master / Slave mimarisi. Ana düğüm olarak adlandırılırnimbus ve köleler supervisors. | ZooKeeper tabanlı koordinasyon ile / olmadan master-slave mimarisi. Ana düğümjob tracker ve köle düğümü task tracker. |
Bir Storm akış süreci, kümede saniyede on binlerce mesaja erişebilir. | Hadoop Dağıtılmış Dosya Sistemi (HDFS), dakikalar veya saatler süren büyük miktarda veriyi işlemek için MapReduce çerçevesini kullanır. |
Fırtına topolojisi, kullanıcı tarafından kapatılıncaya veya beklenmedik kurtarılamaz bir arızaya kadar çalışır. | MapReduce işleri sıralı bir sırada yürütülür ve sonunda tamamlanır. |
Both are distributed and fault-tolerant | |
Eğer nimbus / süpervizör ölürse, yeniden başlatma, durduğu yerden devam etmesini sağlar, dolayısıyla hiçbir şey etkilenmez. | JobTracker ölürse, tüm çalışan işler kaybolur. |
Apache Storm Kullanım Durumları
Apache Storm, gerçek zamanlı büyük veri akışı işlemeyle çok ünlüdür. Bu nedenle çoğu şirket Storm'u sistemlerinin ayrılmaz bir parçası olarak kullanıyor. Bazı önemli örnekler aşağıdaki gibidir -
Twitter- Twitter, "Yayıncı Analizi ürünleri" yelpazesi için Apache Storm kullanıyor. "Yayıncı Analitiği Ürünleri", Twitter Platformundaki her bir tweet'i ve tıklamayı işler. Apache Storm, Twitter altyapısıyla derinlemesine entegredir.
NaviSite- NaviSite, Olay günlüğü izleme / denetleme sistemi için Storm kullanıyor. Sistemde oluşturulan her günlük Fırtınadan geçecek. Storm, mesajı yapılandırılmış normal ifade kümesine göre kontrol edecek ve bir eşleşme varsa, o zaman söz konusu mesaj veritabanına kaydedilecektir.
Wego- Wego, Singapur'da bulunan bir seyahat meta arama motorudur. Seyahatle ilgili veriler, dünyanın her yerinden farklı zamanlamalara sahip birçok kaynaktan gelir. Storm, Wego'nun gerçek zamanlı verileri aramasına, eşzamanlılık sorunlarını çözmesine ve son kullanıcı için en iyi eşleşmeyi bulmasına yardımcı olur.
Apache Storm Faydaları
İşte Apache Storm'un sunduğu avantajların bir listesi -
Storm açık kaynak kodlu, sağlam ve kullanıcı dostudur. Küçük şirketlerde olduğu kadar büyük şirketlerde de kullanılabilir.
Storm, hataya dayanıklı, esnek, güvenilirdir ve herhangi bir programlama dilini destekler.
Gerçek zamanlı akış işlemeye izin verir.
Fırtına inanılmaz derecede hızlı çünkü veriyi işlemede muazzam bir güce sahip.
Fırtına, kaynakları doğrusal olarak ekleyerek artan yük altında bile performansı artırabilir. Oldukça ölçeklenebilir.
Storm, veri yenilemesini gerçekleştirir ve saniyeler veya dakikalar içinde uçtan uca teslimat yanıtı soruna bağlıdır. Çok düşük gecikmeye sahiptir.
Storm'un operasyonel zekası var.
Storm, kümedeki bağlı düğümlerden herhangi biri ölse veya mesajlar kaybolsa bile garantili veri işleme sağlar.