4.3. Hibrit Mimariler ve Log Soyutlaması
Commit log, batch/stream ayrımını ortadan kaldıran soyutlamadır: bir batch işinin ve bir stream işlemcisinin ikisinin de tüketebileceği, yalnızca ekleme yapılan, yeniden oynatılabilir bir kayıt dizisi. Log’u gerçeğin kaynağı olarak gördüğünüzde, Lambda mimarisi (ayrı batch ve hız katmanlarını sürdürmek) kazara oluşan bir karmaşıklık olarak açığa çıkar ve Kappa (her şey bir akıştır, yeniden oynatarak yeniden işle) sadeleştirme haline gelir. Bu bölüm, bu ilerlemeyi, log compaction’ı ve veritabanlarından akış dünyasına köprü olarak Change Data Capture’ı kapsar.
İncelenen Konular
Section titled “İncelenen Konular”- 4.3.1. Commit Log Soyutlaması: Kafka/Pulsar’ın Temel Fikri: Yalnızca ekleme yapılan commit log’u, Kafka ve Pulsar’ın arkasındaki birleştirici soyutlama olarak kurar.
- 4.3.2. Lambda Mimarisi: Batch + Hız Katmanlarının Karmaşıklığı: Lambda mimarisini ve ayrı batch ve hız katmanlarını sürdürmenin kazara oluşan karmaşıklığını analiz eder.
- 4.3.3. Kappa Mimarisi: Her Şey Bir Akıştır: Her şeyi bir akış olarak ele alan ve log’u yeniden oynatarak yeniden işleyen Kappa mimarisini açıklar.
- 4.3.4. Log Compaction: Kafka Compacted Topic’ler ve Tombstone’lar: Kafka log compaction’ı, tombstone’ları ve anahtar başına yalnızca en son değeri tutan cleaner thread’i kapsar.
- 4.3.5. Değişiklik Verisi Yakalama (CDC): Gerçek Zamanlı Senkronizasyon: Bir veritabanının değişikliklerini işlem log’undan gerçek zamanlı akıtan Change Data Capture’ı açıklar.
- 4.3.6. Debezium: Pratik Veritabanı CDC Uygulaması: Debezium’un pratik CDC uygulamasını, önce-snapshot-sonra-stream koordinasyonunu ve sıralama garantilerini kapsar.