Veri Sözleşmelerinde Güvenli Değişiklik & Sürüm Yönetimi
Schema Registry sözdizimi kontrollerini (BACKWARD) başarıyla geçen ancak iş anlamını ve downstream analitik hatlarını bozan semantik kırılmaları engelleyen çok katmanlı doğrulama mimarisi ve koşullu, aşamalı (phased) üretici-tüketici geçiş protokolü.
Avro alan eklemelerinde default zorunluluğu, tip koruması ve tüm geçmiş sürümleri denetleyen katı BACKWARD_TRANSITIVE politikası.
Birim ölçeği (sent vs dolar), minimum 0.01 pozitiflik ve saat kayması iş kuralları.
Önce tüketiciyi iki şemayı da okuyacak şekilde güncelle, sonra üreticiyi kes.
Expand and Contract Modeli: Kademeli Güvenli Geçiş
Kafka olay akışlarında veya veritabanı şemalarında üretici (Producer) ve tüketici (Consumer) sistemleri aynı anda güncellenemez. Güvenli geçiş için bağımsız dağıtım (Independent Deployability) kuralı işletilmelidir.
Yeni alan (örn. discount_code) için ODCS draft kontratı açılır. Downstream tüketicilerle semantik birimler, para birimi ve olası null durumları mutabakata bağlanır.
PR pipeline aşamasında Confluent Schema Registry BACKWARD_TRANSITIVE uyumluluğu test edilir. Default değeri olmayan yeni alanlar veya tip kırılmaları otomatik engellenir.
BACKWARD uyumluluk kuralı (yeni okuyucu eski yazıcıyı okuyabilir) gereğince dağıtım sırası kesin olarak Tüketici-Önce olmalıdır. Tüketici servisleri (Spark, Flink, Fatura API) v2 şemayı okuyabilecek ve henüz üreticide bulunmayan yeni alanlar için varsayılan değerlerle çalışacak şekilde canlıya alınır.
Tüm aktif tüketicilerin v2 uyumlu olduğu ve metriklerle doğrulandığı teyit edildikten sonra, üretici mikroservis yeni alanları içeren v2 payload’ları Kafka konusuna yazmaya başlar (Canary / aşamalı geçiş).
Senaryoya özgü önerilen gözlem süresi boyunca (örn. günlük trafik döngüsünü kapsayan 24 saat) Consumer lag, SerDe istisnaları, DLQ hacmi ve veri tazeliği SLO panelleri takip edilir.
Belirlenen deprecation takvimi (örn. 30 gün) sonunda v1 şema Schema Registry üzerinde DEPRECATED olarak işaretlenir ve arşivlenir.
Yerel ve CI Doğrulama Paketi
• Tekrarlanabilir Runtime: CI iş akışı .github/workflows/contract-compatibility-ci.yml üzerinde Node.js 20.18.0 LTS sürümüne kesin sabitlenmiştir (.nvmrc, .node-version). Yerel doğrulamalar geliştirme makinesindeki Node.js v24.19.0 üzerinde 36/36 PASS ile tamamlanmıştır.
• GitHub Actions CI Durumu: Uzak GitHub Actions çalıştırması hesap spending limit (bütçe/dakika sınırı) nedeniyle tetiklenmemiştir. Bu durum bir kod veya test hatası olmayıp, uzakta çalıştırılmamış CI bilerek başarılı olarak gösterilmemekte; yerel doğrulama kanıtlarıyla şeffaf biçimde ayrıştırılmaktadır.
Üçlü Yayın (Triad) Ekosistem Bağlantıları
Data Contracts Kataloğu
Tüm kurumsal veri sözleşmelerini, SLA metriklerini ve ODCS spesifikasyonlarını inceleyin.
Kafka Schema Registry CI Blueprint
GitHub Actions üzerinde Avro ve JSON şemalarını otomatik doğrulayan CI kod şablonu.
Schema Registry & Contract Araçları
Confluent Schema Registry, Aiven, Buf ve Great Expectations araç karşılaştırması.