Gerçek zamanlı işleme

Gerçek zamanlı olarak yakalanan ve gerçek zamanlı (veya neredeyse gerçek zamanlı) raporlar ya da otomatik yanıtlar oluşturmak için en az gecikme süresiyle işlenen veri akışları ile gerçek zamanlı işleme anlaşmalar. Örneğin, gerçek zamanlı bir trafik izleme çözümü, yüksek trafikli birimleri algılamak için algılayıcı verileri kullanabilir. Bu veriler, tıkanıklığı göstermek için bir Haritayı dinamik olarak güncelleştirmek ya da yüksek doluluk yolları veya diğer trafik yönetimi sistemlerini otomatik olarak başlatmak için kullanılabilir.

Gerçek zamanlı işleme işlem hattının diyagramı

Gerçek zamanlı işleme, işlenmek üzere çok kısa gecikme süresi ile, milisaniye veya saniye cinsinden ölçülen giriş verilerinin sınırsız akışının işlenmesi olarak tanımlanır. Bu gelen veriler genellikle JSON gibi yapılandırılmamış veya yarı yapılandırılmış bir biçime ulaşır ve toplu işlemeile aynı işleme gereksinimlerine sahiptir, ancak gerçek zamanlı tüketimi desteklemeye yönelik daha kısa bir süre içinde daha kısa bir işlem sağlar.

İşlenen veriler genellikle analiz ve görselleştirme için en iyi duruma getirilmiş analitik veri deposuna yazılır. Ayrıca, işlenen veriler analiz, iş zekası ve gerçek zamanlı Pano görselleştirmesi için doğrudan analiz ve raporlama katmanına da eklenebilir.

Zorluklar

Gerçek zamanlı işleme çözümlerinin büyük güçlüklerinden biri, özellikle de yüksek birimlerde iletileri gerçek zamanlı olarak alma, işleme ve depolama sürecleridir. İşleme, alma işlem hattını engellemez şekilde yapılmalıdır. Veri deposunun yüksek hacimli yazmaları desteklemesi gerekir. Başka bir zorluk ise verileri hızlı bir şekilde, gerçek zamanlı olarak uyarı oluşturma veya verileri gerçek zamanlı (veya neredeyse gerçek zamanlı) bir panoda sunma gibi hızla işlem yapabiliyor.

Mimari

Gerçek zamanlı işleme mimarisinin aşağıdaki mantıksal bileşenleri vardır.

  • Gerçek zamanlı ileti alımı. Mimari, bir akış işleme tüketicisi tarafından tüketilen gerçek zamanlı iletileri yakalamak ve depolamak için bir yol içermelidir. Basit durumlarda bu hizmet, yeni iletilerin bir klasöre yatıralındığı basit bir veri deposu olarak uygulanabilir. Ancak çözüm, genellikle iletiler için bir arabellek görevi gören Azure Event Hubs gibi bir ileti Aracısı gerektirir. İleti Aracısı, genişleme işlemeyi ve güvenilir teslimi desteklemelidir.

  • Akış işleme. Çözümün, gerçek zamanlı iletileri yakaladıktan sonra filtreleme, toplama ve diğer verileri analize hazırlama işlemleriyle bu iletileri işlemesi gerekir.

  • Analitik veri deposu. Birçok büyük veri çözümü, verileri Analize hazırlamak ve sonra işlenen verileri analitik araçlar kullanılarak sorgulanabilen yapılandırılmış bir biçimde sunacak şekilde tasarlanmıştır.

  • Analiz ve raporlama. Büyük veri çözümlerinin çoğunun amacı analiz ve raporlama aracılığıyla veriler hakkında öngörüler sağlamaktır.

Teknoloji seçimleri

Aşağıdaki teknolojiler, Azure 'daki gerçek zamanlı işleme çözümleri için önerilen seçimlerdir.

Gerçek zamanlı ileti alımı

  • Azure Event Hubs. Azure Event Hubs, saniye başına milyonlarca olay iletisini almak için bir mesajlaşma çözümüdür. Yakalanan olay verileri birden çok tüketici tarafından paralel olarak işlenebilir. Event Hubs yerel olarak AMQP 'yi (Gelişmiş İleti Sıraya Alma Protokolü 1,0) desteklese de, uygulama değişikliği olmadan Event Hubs kullanarak olayları işlemek için Kafka protokolünü kullanan uygulamaların (Kafka 1,0 ve üzeri) kullanılmasına izin veren bir ikili uyumluluk katmanı da sağlar.
  • Azure IoT Hub. Azure IoT Hub, Internet 'e bağlı cihazlar arasında çift yönlü iletişim sağlar ve aynı anda milyonlarca bağlı cihazı işleyebilen ölçeklenebilir bir ileti kuyruğu sağlar.
  • Apache Kafka. Kafka, bir saniyede milyonlarca iletiyi birden çok ileti üreticileri tarafından işlemek için ölçeklenebilen ve bunları birden çok tüketiciye yönlendiren açık kaynaklı bir İleti Kuyruklama ve akış işleme uygulamasıdır. Kafka, Azure 'da HDInsight kümesi türü olarak, Kafka için Azure olaylarıyla birlikte kullanılabilir ve ayrıca, confemme ile ortaklarımız aracılığıyla ConfluentCloud aracılığıyla da kullanılabilir.

Daha fazla bilgi için bkz. gerçek zamanlı iletialma.

Veri depolama

  • Azure Depolama Blobu kapsayıcılar veya Azure Data Lake Store. Gelen gerçek zamanlı veriler genellikle bir ileti aracısıdır (yukarıya bakın), ancak bazı senaryolarda, bir klasörü yeni dosyalar için izlemek ve bunları oluşturuldukları veya güncelleştirdikleri sırada işlemek mantıklı olabilir. Ayrıca, birçok gerçek zamanlı işleme çözümü, akış verilerini bir dosya deposunda depolanabilecek statik başvuru verileriyle birleştirir. Son olarak, dosya depolama, arşivleme için yakalanan gerçek zamanlı veriler için ya da bir lambda mimarisindedaha fazla toplu işlem için çıkış hedefi olarak kullanılabilir.

Daha fazla bilgi için bkz. veri depolama.

Akış işleme

  • Azure Stream Analytics. Azure Stream Analytics, sınırsız bir veri akışına karşı kalıcı sorgular çalıştırabilir. Bu sorgular, depolama veya ileti aracılarından veri akışlarını kullanır, zamana bağlı pencereler temelinde verileri filtreleyip toplar ve sonuçları depolama, veritabanları veya doğrudan Power BI raporlarına yazar. Stream Analytics, zamana bağlı ve jeo-uzamsal yapıları destekleyen ve JavaScript kullanılarak genişletilebilen SQL tabanlı bir sorgu dili kullanır.
  • Fırtınası. Apache Storm, gerçek zamanlı akış veri kaynaklarından sonuçları tüketmek, işlemek ve çıktısını almak için Spog 'ler ve cıvatların topolojisini kullanan akış işleme için açık kaynaklı bir çerçevedir. Bir Azure HDInsight kümesinde fırtınası sağlayabilir ve Java ya da C# ' de bir topoloji uygulayabilirsiniz.
  • Spark akışı. Apache Spark, genel veri işlemeye yönelik açık kaynaklı bir dağıtılmış platformdur. Spark, Java, Scala ve Python dahil olmak üzere desteklenen Spark dilinde kod yazabileceğiniz Spark akış API 'sini sağlar. Spark 2,0, daha basit ve daha tutarlı bir programlama modeli sağlayan Spark yapılandırılmış akış API 'sini kullanıma sunmuştur. Spark 2,0, bir Azure HDInsight kümesinde bulunabilir.

Daha fazla bilgi için bkz. akış işleme.

Analitik veri deposu

  • Azure SYNAPSE Analytics, Azure Veri Gezgini, HBase, Sparkveya Hive. İşlenen gerçek zamanlı veriler, SYNAPSE Analytics, Azure Veri Gezgini, HBase gibi bir NoSQL Mağazası veya Spark veya Hive tablolarının tanımlanabileceği ve sorgulanabileceği dağıtılmış depolamada bulunan dosyalar gibi bir ilişkisel veritabanında depolanabilir.

Daha fazla bilgi için bkz. analitik veri depoları.

Analiz ve raporlama

  • Azure Analysis Services, Power BIve Microsoft Excel. Bir analitik veri deposunda depolanan gerçek zamanlı veriler, geçmiş raporlama ve analiz için, toplu işlenen verilerle aynı şekilde kullanılabilir. ayrıca, Power BI gecikme süresi yeterince düşük veya bazı durumlarda doğrudan akış işleme çıktısından gerçek zamanlı (veya neredeyse gerçek zamanlı) raporlar ve görselleştirmeler yayımlamak için kullanılabilir.

Daha fazla bilgi için bkz. analiz ve raporlama.

Tamamen gerçek zamanlı bir çözümde, işlem düzenleme işleminin çoğu ileti alma ve akış işleme bileşenleriyle yönetilir. Ancak, toplu işleme ve gerçek zamanlı işlemeyi birleştiren bir lambda mimarisinde, yakalanan gerçek zamanlı veriler için Batch iş akışlarını yönetmek üzere Azure Data Factory veya Apache Oozie ve Sqoop gibi bir düzenleme çerçevesi kullanmanız gerekebilir.

Sonraki adımlar

Aşağıdaki başvuru mimarisi, uçtan uca bir akış işleme ardışık düzenini gösterir: