Apache Storm'a Genel Bakış: Nedir, Mimari ve Kullanım Nedenleri

Yayınlanan: 2020-03-23

Veri her yerde mevcuttur ve artan dijitalleşmeyle birlikte, verilerin yönetimi ve işlenmesiyle ilgili olarak her gün yeni zorluklar ortaya çıkmaktadır.

Gerçek zamanlı verilere erişim "olması güzel" bir özellik gibi görünebilir, ancak dijital alanda önemli yatırımları olan bir kuruluş için bu neredeyse bir zorunluluktur.

İçindekiler

Hangi Sektör Liderleri Apache Storm Kullanıyor?

Genellikle, belirli bir zamanda analiz edilmeyen veriler, yakında şirketler için gereksiz hale gelebilir. Şirkete avantaj sağlayabilecek kalıpları bulmak için verileri analiz etmek bir gerekliliktir. Kalıpların uzun bir süre boyunca çıkarılmasına gerek yoktur; sadece gerçek zamanlı, güncel eğilimleri belirleyen ilgili veriler çıkarılmalıdır.

Gerçek zamanlı verileri analiz etmenin ihtiyaçları ve getirileri göz önüne alındığında, kuruluşlar çeşitli analitik araçları ortaya çıkardı. Böyle bir araç Apache Storm'dur.

Apache Fırtınası nedir?

Twitter tarafından piyasaya sürülen Apache Storm, çeşitli kaynaklardan büyük miktarda veri işleyen dağıtılmış, açık kaynaklı bir ağdır. Araç onu analiz eder ve sonuçları herhangi bir veri depolamadan bir kullanıcı arayüzüne veya belirlenmiş başka bir hedefe günceller. Apache Fırtınası hakkında daha fazlasını okuyun.

Apache Storm, Hadoop'un veri grupları için işleme modeline benzer şekilde, sınırsız veri parçaları için gerçek zamanlı işleme yapar.

Aslen Nathan Marz tarafından bir sosyal analiz şirketi olan Black Type'da yaratıldı, daha sonra Twitter tarafından satın alındı ​​ve açık kaynaklı. Java ve Clojure dilinde yazılmış olup, endüstride gerçek zamanlı veri işleme için standart olmaya devam etmektedir.

Apache Fırtına Mimarisi

1. Nimbus (Ana Düğüm)

Nimbus bir arka plan programıdır, yani etkileşimli bir kullanıcının kontrolü olmadan arka planda çalışan bir programdır. Hadoop'taki İş izleyicinin çalışmasına benzer şekilde Apache Storm için çalışır. İşlevi, makinelere kodlar ve görevler atamasını ve hatta performanslarını izlemesini gerektirir.

2. Süpervizör Hizmeti (İşçi Düğümü)

Storm'daki çalışan düğümler, Supervisor adlı bir hizmeti çalıştırır. Bu düğümler, Nimbus tarafından bu makinelere atanan işi almaktan sorumludur. Nimbus tarafından atanan tüm işleri ele almanın yanı sıra ihtiyaca göre süreci başlatır veya durdurur.

Süpervizörler tarafından yapılan bu süreçlerin her biri, topolojiyi tamamlamak için sürecin bir bölümünün yürütülmesine yardımcı olur.

3. Topoloji

Storm Topology, musluk ve cıvatalardan oluşan bir ağdır. Sistemdeki her düğüm, mantıkları ve bağlantıları işlemek ve verilerin geçeceği yolları göstermek için mevcuttur.

Storm'a bir topoloji sunulduğunda, Nimbus, çalışan düğümleri hakkında Süpervizörlere danışır.

4. Akış

Akışlar, paralel olarak dağıtılmış bir şekilde oluşturulan ve işlenen bir demet dizisidir. Ama tuple nedir? Storm'daki ana veri yapılarıdır. Tamsayılar, baytlar, kayan noktalar, bayt dizileri vb. gibi çeşitli değerlerin listeleri olarak adlandırılırlar.

5. Emzik

Spout, demetlerdeki tüm veriler için bir giriş yoludur. Gerçek veri kaynağı ile temasa geçmek, verileri sürekli olarak almak, tuple'lara dönüştürmek ve son olarak işlenmek üzere cıvatalara göndermekten sorumludur.

6. Cıvatalar

Cıvatalar, Storm'daki tüm mantıksal işlemlerin merkezinde yer alır. Bu nedenle, topolojinin tüm işlemlerini gerçekleştirirler. Cıvatalar, filtreleme, işlevler, toplamalar ve hatta veritabanlarına bağlanma dahil olmak üzere çeşitli işlevler için kullanılabilir.

Şunlar hakkında bilgi edinin: Apache Spark Mimarisi

Neden Apaçi Fırtınası?

Apache Storm'un çalışmaları Hadoop'unkine oldukça benzer. Her ikisi de Büyük Verileri işlemek için kullanılan dağıtılmış ağlardır. Ölçeklenebilirlik sunarlar ve iş zekası amaçları için yaygın olarak kullanılırlar. Peki neden Storm ve neden bu kadar farklı?

Storm'u seçmeniz için temel nedenler şunlardır:

  • Storm, gerçek zamanlı akış işlemeyi gerçekleştirirken, Hadoop çoğunlukla toplu işleme yapar.
  • Storm topolojisi, kullanıcı tarafından kapatılana kadar çalışır. Hadoop süreçleri sonunda sırayla tamamlanır.
  • Storm süreçleri, bir kümedeki binlerce veriye saniyeler içinde erişebilir. Hadoop Dağıtılmış sistemi, dakikalar veya saatler sürecek çok sayıda çerçeve oluşturmak için MapReduce çerçevesini kullanır.

Apache Storm kullanan kuruluşlar

Bir kez konuşlandırıldığında, Storm yalnızca kullanımı kolay olmakla kalmaz, aynı zamanda verileri saniyeler içinde işleyebilir. Storm'un geniş faydalarını göz önünde bulundurarak, birçok kuruluş onu kullanmaya başladı.

1. Twitter

Apache Storm, Twitter'da bir dizi işlevi destekler. Storm, Cassandra, Memcached, Mesos gibi veritabanı sistemlerine, mesajlaşma altyapısına, izleme ve uyarı sistemlerine sahip Twitter altyapısının geri kalanıyla iyi bir şekilde bütünleşir.

2. Bilgi şempanzeleri

Infochimps, bulut veri hizmetlerinden biri olan Veri Teslim Hizmetleri için bir kaynak olarak Storm'u kullanır. Bulut hizmetlerinin doğrusal olarak genişletilebilir bir veri toplama, taşıma ve karmaşık akış içi işlemesini sağlamak için Storm'u kullanır.

3. Spotify

Şüphesiz müzik akışı platformlarında liderdir. Dünya çapında 50 milyon kullanıcısı ve 10 milyon abonesi ile müzik önerileri, analizler, reklam kreasyonları vb. gibi çok sayıda gerçek zamanlı içerik sunar. Apache Storm, Spotify'ın bu özellikleri doğru bir şekilde sunmasına yardımcı olur.

Ayrıca, şirketin düşük gecikmeli, hataya dayanıklı dağıtım sistemlerini kolayca sunmasını sağladı.

4. RoketYakıt

RocketFuel, dijital medyada pazarlama yatırım getirisini artırmak için Yapay Zekanın gücünden yararlanan bir şirkettir. Storm'da gösterimleri, tıklamaları, teklif isteklerini vb. gerçek zamanlı olarak izleyebilecek bir platform oluşturmak istiyorlar. Bu platformun, Hadoop tabanlı ETL ardışık düzeninin kritik iş akışlarını klonlayarak çalışması gerekiyor.

5. Flipboard

Flipboard, ilginizi çeken tüm haberlere göz atmak ve bunları kaydetmek için tek durak noktasıdır. Flipboard'da Apache Storm, son derece genişletilebilir platformlar oluşturmak için Hadoop, ElasticSearch, HBase ve HDFS gibi sistemlerle entegre edilmiştir.

Burada içerik arama, gerçek zamanlı analiz, özel dergi beslemesi vb. hizmetlerin tümü Apache Storm'un yardımıyla sağlanır.

6. Wego

Wego, Singapur kökenli bir seyahat meta arama motorudur. Burada, veriler dünyanın her yerinden farklı zamanlamalarda gelir. Wego, Storm'un yardımıyla gerçek zamanlı verileri arayabilir, birlikte var olan sorunları çözebilir ve son kullanıcıya en iyi sonuçları sağlayabilir.

Ayrıca Okuyun: Büyük Veride Apache Kıvılcımının Rolü.

Çözüm

Storm yazılmadan önce, kuyruklar ve çalışan iş parçacığı yaklaşımları kullanılarak gerçek zamanlı veriler işlendi. Bazı kuyruklar sürekli olarak veri yazarken, diğerleri sürekli olarak okuyor ve işliyor olacaktır. Bu çerçeve sadece son derece kırılgan değil, aynı zamanda zaman açısından da ağırdı. Gerçek işi yapmak yerine veri kaybıyla ilgilenmek, tüm çerçeveyi korumak, mesajları seri hale getirmek/seri hale getirmek için çok zaman harcanacaktır.

Apache Storm, verileri yalnızca Spout ve Bolt olarak ve geri kalan işlemleri Topology olarak göndermenin akıllıca bir yoludur.

Apache Storm, verilerin gerçek zamanlı analizi için yaygın, açık kaynaklı ve akış işleme hesaplama çerçevesidir. Birçok kuruluş bunu zaten kullanıyor; aslında, bazıları onunla daha iyi ve yararlı yazılımlar geliştiriyor.

Büyük Veri hakkında daha fazla bilgi edinmek istiyorsanız, çalışan profesyoneller için tasarlanmış ve 7+ vaka çalışması ve proje sağlayan, 14 programlama dili ve aracını kapsayan, pratik uygulamalı Büyük Veride Yazılım Geliştirme Uzmanlığı programında PG Diplomamıza göz atın çalıştaylar, en iyi firmalarla 400 saatten fazla titiz öğrenim ve işe yerleştirme yardımı.

Dünyanın En İyi Üniversitelerinden Online Yazılım Geliştirme Kursları öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

Veriye Dayalı Teknolojik Devrime Öncülük Edin

400+ Saat Öğrenme. 14 Diller ve Araçlar. IIIT-B Mezun Durumu.
IIIT Bangalore'den Büyük Veride Gelişmiş Sertifika Programı