Azure Event Hubs: Yerel Apache Kafka desteğine sahip gerçek zamanlı bir veri akışı platformu

Azure Event Hubs, bulutta, herhangi bir kaynaktan herhangi bir hedefe düşük gecikme süresiyle saniyede milyonlarca olay akışı sağlayan yerel bir veri akışı hizmetidir. Event Hubs, Apache Kafka ile uyumludur. Kod değişikliği yapmadan mevcut Kafka iş yüklerini çalıştırmanızı sağlar.

İşletmeler akış verilerini almak ve depolamak için Event Hubs'ı kullanabilir. İşletmeler akış verilerini kullanarak değerli içgörüler elde edebilir, gerçek zamanlı analiz gerçekleştirebilir ve olaylar gerçekleştiğinde olaylara yanıt verebilir. Genel verimliliklerini ve müşteri deneyimlerini geliştirmek için bu verileri kullanabilirler.

Azure Event Hubs'ın bir olay akış platformuna nasıl uyum gösterdiğini gösteren diyagram.

Event Hubs, Azure üzerinde oluşturduğunuz herhangi bir olay akışı çözümünün tercih edilen olay alımı katmanıdır. Aşağıdaki kullanım örneklerine hizmet vermek üzere eksiksiz bir veri akışı işlem hattı oluşturmak için Azure içindeki ve dışındaki veri ve analiz hizmetleriyle tümleştirilir:

Önemli özellikler

Aşağıdaki bölümlerde Azure Event Hubs'ın temel özellikleri hakkında bilgi edinin.

Azure Event Hubs üzerinde Apache Kafka

Event Hubs, Gelişmiş Message Queuing Protokolü (AMQP), Apache Kafka ve HTTPS protokollerini yerel olarak destekleyen çok protokollü bir olay akış altyapısıdır. Apache Kafka'yı desteklediği için kod değişikliği yapmadan Kafka iş yüklerini Event Hubs'a getirebilirsiniz. Kendi Kafka kümelerinizi ayarlamanız, yapılandırmanız veya yönetmeniz veya Azure'da yerel olmayan bir hizmet olarak Kafka teklifi kullanmanız gerekmez.

Event Hubs, buluta özel aracı altyapısı olarak derlenir. Bu nedenle Kafka iş yüklerini daha iyi performans, daha iyi maliyet verimliliği ve operasyonel ek yük olmadan çalıştırabilirsiniz.

Daha fazla bilgi için bkz . Apache Kafka için Azure Event Hubs.

Event Hubs'da Şema Kayıt Defteri

Event Hubs'daki Azure Schema Registry, olay akış uygulamalarının şemalarını yönetmek için merkezi bir depo sağlar. Schema Registry, her Event Hubs ad alanında ücretsiz olarak sunulur. Kafka uygulamalarınızla veya Event Hubs SDK tabanlı uygulamalarınızla tümleştirilir.

Schema Registry ve Event Hubs tümleştirmesi gösteren diyagram.

Schema Registry, olay üreticileri ve tüketicileri arasında veri uyumluluğu ve tutarlılığı sağlar. Şema evrimi, doğrulaması ve idaresi sağlar ve verimli veri değişimini ve birlikte çalışabilirliği teşvik eder.

Schema Registry, mevcut Kafka uygulamalarınızla tümleştirilir ve Avro ve JSON şemaları dahil olmak üzere birden çok şema biçimlerini destekler.

Daha fazla bilgi için bkz . Event Hubs'da Azure Schema Registry.

Stream Analytics ile akış olaylarının gerçek zamanlı işlenmesi

Event Hubs, gerçek zamanlı akış işlemeyi etkinleştirmek için Azure Stream Analytics ile tümleşir. Yerleşik kodsuz düzenleyici ile hiçbir kod yazmadan sürükle ve bırak işlevini kullanarak bir Stream Analytics işi geliştirebilirsiniz.

Olaylardan gerçek zamanlı içgörüleri etkinleştir kutucuğuyla verileri işleme sayfasını gösteren ekran görüntüsü.

Alternatif olarak, geliştiriciler gerçek zamanlı akış işleme gerçekleştirmek ve akış verilerini analiz etmek için çok çeşitli işlevlerden yararlanmak için SQL tabanlı Stream Analytics sorgu dilini kullanabilir.

Daha fazla bilgi için içindekiler tablosunun Azure Stream Analytics tümleştirmesi bölümündeki makalelere bakın.

Azure Veri Gezgini ile akış verilerini keşfetme

Azure Veri Gezgini, yüksek performans sunan ve büyük hacimli verilerin neredeyse gerçek zamanlı olarak analiz edilmesini sağlayan tam olarak yönetilen bir büyük veri analizi platformudur. Event Hubs'ı Azure Veri Gezgini ile tümleştirerek neredeyse gerçek zamanlı analiz gerçekleştirebilir ve akış verilerinin keşfini gerçekleştirebilirsiniz.

Azure Veri Gezgini sorgusunu ve çıkışını gösteren diyagram.

Daha fazla bilgi için bkz. Bir olay hub'ından Azure Veri Gezgini'a veri alma.

Azure işlevleri, SDK'lar ve Kafka ekosistemi

Event Hubs ile, eyleme dönüştürülebilir içgörüler elde etmek için akışınızı gerçek zamanlı olarak alabilir, arabelleğe alabilir, depolayabilir ve işleyebilirsiniz. Event Hubs bölümlenmiş bir tüketici modeli kullanır. Birden çok uygulamanın akışı eşzamanlı olarak işlemesine olanak tanır ve işleme hızını denetlemenize olanak tanır. Event Hubs, sunucusuz mimariler için Azure İşlevleri ile de tümleşir.

Endüstri standardı AMQP 1.0 protokolü için geniş bir ekosistem mevcuttur. SDK'lar .NET, Java, Python ve JavaScript gibi dillerde kullanılabilir, böylece akışlarınızı Event Hubs'dan işlemeye başlayabilirsiniz. Desteklenen tüm istemci dilleri, düşük düzeyde tümleştirme sağlar.

Ekosistem ayrıca Azure İşlevleri, Azure Spring Apps, Kafka Bağlayıcıları ve Apache Spark ve Apache Flink gibi diğer veri analizi platformları ve teknolojileriyle tümleştirmenizi sağlar.

Esnek ve uygun maliyetli olay akışı

Event Hubs için Standart, Premium veya Ayrılmış katmanlar aracılığıyla esnek ve uygun maliyetli olay akışı deneyimi yaşayabilirsiniz. Bu seçenekler, birkaç MB/sn ile birkaç GB/sn arasında değişen veri akışı gereksinimlerini karşılar. Gereksinimlerinize uygun eşleşmeyi seçebilirsiniz.

Ölçeklenebilir

Event Hubs ile megabayt cinsinden veri akışlarıyla başlayabilir ve gigabayt veya terabayt olarak büyüyebilirsiniz. Otomatik şişirme özelliği, kullanım gereksinimlerinizi karşılayacak aktarım hızı birimi veya işleme birimi sayısını ölçeklendirmek için kullanılabilen seçeneklerden biridir.

Büyük iletilerin akışını destekler

Çoğu akış senaryosunda veriler basit, genellikle 1 MB'tan küçük ve yüksek aktarım hızına sahip olma ile karakterize edilir. İletilerin daha küçük segmentlere bölünemiyorsa örnekler de vardır. Event Hubs, ek ücret ödemeden self servis ölçeklenebilir ayrılmış kümelerle 20 MB'a kadar olayları barındırabilir. Bu özellik, Event Hubs'ın kesintisiz iş operasyonları sağlamak için çok çeşitli ileti boyutlarını işlemesine olanak tanır. Daha fazla bilgi için bkz . Azure Event Hubs ile büyük iletiler gönderme ve alma.

Uzun süreli saklama ve toplu iş analizi için akış verilerini yakalama

Uzun süreli saklama veya mikro toplu işlem için verilerinizi Azure Blob Depolama veya Azure Data Lake Storage'da neredeyse gerçek zamanlı olarak yakalayın. Bu davranışı gerçek zamanlı analiz türetmek için kullandığınız akışta gerçekleştirebilirsiniz. Olay verilerinin yakalanması hızlı bir şekilde ayarlanır.

Yönetilen Kimlik kullanarak Event Hubs verilerini Azure Depolama veya Azure Data Lake Storage'a yakalamayı gösteren diyagram.

Nasıl çalışır?

Event Hubs, olay üreticilerini olay tüketicilerinden ayırarak zaman saklama arabelleğine sahip birleşik bir olay akışı platformu sağlar. Üretici ve tüketici uygulamaları birden çok protokol aracılığıyla büyük ölçekli veri alımı gerçekleştirebilir.

Aşağıdaki diyagramda Event Hubs mimarisinin ana bileşenleri gösterilmektedir.

Event Hubs'ın ana bileşenlerini gösteren diyagram.

Event Hubs'ın temel işlevsel bileşenleri şunlardır:

  • Üretici uygulamaları: Bu uygulamalar Event Hubs SDK'larını veya herhangi bir Kafka üretici istemcisini kullanarak bir olay hub'ına veri alabilir.
  • Ad Alanı: Bir veya daha fazla olay hub'ı veya Kafka konusu için yönetim kapsayıcısı. Akış kapasitesini ayırma, ağ güvenliğini yapılandırma ve coğrafi olağanüstü durum kurtarmayı etkinleştirme gibi yönetim görevleri ad alanı düzeyinde işlenir.
  • Event Hubs/Kafka konusu: Event Hubs'da olayları bir olay hub'ında veya Kafka konusunda düzenleyebilirsiniz. Bir veya daha fazla bölüm oluşturabilen yalnızca ekleme dağıtılmış bir günlük.
  • Bölümler: Bir olay hub'ına ölçeklendirmek için kullanılır. Otobandaki şeritler gibiler. Daha fazla akış aktarım hızına ihtiyacınız varsa, daha fazla bölüm ekleyebilirsiniz.
  • Tüketici uygulamaları: Bu uygulamalar, olay günlüğü aracılığıyla arama yaparak ve tüketici uzaklığını koruyarak verileri kullanabilir. Tüketiciler Kafka tüketici istemcileri veya Event Hubs SDK istemcileri olabilir.
  • Tüketici grubu: Bu mantıksal tüketici örnekleri grubu, bir olay hub'ından veya Kafka konusundan verileri okur. Birden çok tüketicinin bir olay hub'ında aynı akış verilerini kendi hızlarında ve kendi uzaklıklarıyla bağımsız olarak okumasına olanak tanır.

Event Hubs'ı kullanmaya başlamak için aşağıdaki hızlı başlangıçlara bakın.

Event Hubs SDK'sını (AMQP) kullanarak veri akışı yapın

SDK'ları kullanarak Event Hubs'a veri akışı yapmak için aşağıdaki örneklerden herhangi birini kullanabilirsiniz.

Apache Kafka kullanarak veri akışı

Kafka uygulamalarınızdan Event Hubs'a veri akışı yapmak için aşağıdaki örnekleri kullanabilirsiniz.

Şema Kayıt Defteri ile şema doğrulama

Olay akış uygulamalarınız için şema doğrulaması gerçekleştirmek için Event Hubs Şema Kayıt Defteri'ni kullanabilirsiniz.