Kafka mimarisi

Apache Kafka'ya Giriş

Mike Metzger

Data Engineering Consultant

Kafka bileşenleri

  • Kafka sunucusu
    • Bir veya daha çok bilgisayardan oluşan küme
    • Veriyi depolar
    • İletişimi yönetir
    • Diğer sistemlerle de entegre olabilir (veritabanları, loglar vb.)
  • Kafka istemcileri
    • Kafka consumer ile okur
    • Kafka producer ile yazar
    • Gerektiği gibi veriyi işler
Apache Kafka'ya Giriş

Kafka sunucusu

  • Depolama, diğer adıyla Kafka Broker
    • Üreticilerin yazdığı veri konularla depolanır ve düzenlenir
    • Konular bölümlenir, ayrı parçalarda tutulur
    • İletiler/olaylar, olay kimliğine göre bir bölümde saklanır
    • İletiler yazıldığı sırayla alınır

Kafka depolama ve bölümler

1 Görsel kaynağı: https://kafka.apache.org/intro
Apache Kafka'ya Giriş

Bölümler ve çoğaltma

  • Kafka hata toleranslıdır
  • Bir sistem çevrimdışı olursa, diğerleri istenen veriyi sağlayabilir
  • Maks. arıza sayısı + 1 == çoğaltma faktörü
  • Maks. çoğaltma faktörü == sunucu sayısı
  • Çoğaltma, bölümlerin kopyalanmasıyla yapılır

Kafka kümesi, broker'lar ve konular.png

Apache Kafka'ya Giriş

Örnek

Kafka kümesi, broker'lar ve konular.png

  • 3 broker'lı Kafka kümesi
  • 3 konu tanımlı
  • 2x çoğaltma == 1 sistem kaybı tolere edilir
  • Broker 1'de Konu 1 ve Konu 2 kopyaları var
  • Broker 2'de Konu 2 ve Konu 3 kopyaları var
  • Broker 3'te Konu 1 ve Konu 3 kopyaları var
  • Her konu kümede 2 broker arasında paylaştırılmıştır
Apache Kafka'ya Giriş

1 arıza ile örnek

Kafka kümesi, broker'lar ve konular - 1 arızalı broker.png

  • Broker 2 arızalanır
  • Çoğaltma faktörü 2x
    • 2 - 1 == 1 arızayı kaldırır
  • Her konunun kümede en az bir kopyası hâlâ var
Apache Kafka'ya Giriş

2 arıza ile örnek

Kafka kümesi, broker'lar ve konular - 2 arızalı broker.png

  • 2 arızalı broker
  • Çoğaltma faktörü 2x
  • Desteklenenden fazla arıza (1 sistem)
  • Konu 2 artık kümede yok
    • Konu 1 ve 3 hâlâ var, yani tam kapatma değil
Apache Kafka'ya Giriş

Hadi pratik yapalım!

Apache Kafka'ya Giriş

Preparing Video For Download...