Her mühendislik ekibi eninde sonunda şuna benzer bir runbook yazar: "Hata durumunda en son bilinen iyi snapshot'a geri dön ve yeniden oynat." Bu, modern felaket kurtarmanın temel varsayımıdır. Veritabanı point-in-time restore, replay ile event sourcing, geri alma destekli mavi/yeşil dağıtımlar — hepsi aynı önermeye dayanır: dünün durumu kurtarılabilir ve dünya, bugünün ondan yeniden türetilmesine tahammül edecektir.
Emeklilik ve sigorta boru hatlarında bu önerme yanlıştır. Kısmen yanlış değil. Yapısal olarak yanlış.
Önceki Durum Çoktan Binayı Terk Etti
Bir BES (Bireysel Emeklilik Sistemi) katkı pay batch'i işlendiğinde, ortaya çıkan pozisyon veri ambarınızın içinde kalan özel bir gerçek değildir. Saatler, bazen dakikalar içinde o durum:
- Günlük mutabakat dosyasının parçası olarak EGM (Emeklilik Gözetim Merkezi)'ye iletilir
- %30 devlet katkısı hak edişini hesaplamak için devlet katkısı motoru tarafından kullanılır
- Katılımcının mobil uygulamasında yasal olarak bağlayıcı bir bakiye olarak yansıtılır
- Komisyon tahakkuku için aracı dağıtım kanalları tarafından referans alınır
- Fonun ilgili değerleme tarihindeki NAV hesaplamasında yer alır
Saat 14:00'te, saat 09:00 batch'inin 4.000 katılımcı için bir transfer girişini çift saydığını fark ederseniz, geleneksel oyun kitabı şöyle der: 08:55 snapshot'ını geri yükle, hatayı düzelt, yeniden oynat. Bu oyun kitabı, ara durumun tüm tüketicilerini sizin kontrol ettiğinizi varsayar. Etmiyorsunuz. Devlet katkısı talebi çoktan kuyruğa girmiş. NAV çoktan yayınlanmış. Katılımcı yanlış rakamı çoktan görmüş, hatta belki ekran görüntüsünü almış.
E-ticaret anlamında geri alma, artık geri çekme yetkinizde olmayan gerçekleri geri çekmek anlamına gelirdi.
Düzenleme Altında "Geri Alma" Aslında Ne Demektir?
Düzenleyiciler geri alma kavramını tanımaz. Düzeltmeyi tanırlar. Bu ayrım semantik değildir.
Geri alma şöyle der: "Bu hiç yaşanmadı." Düzeltme ise şöyle der: "Bu yaşandı, olması gereken şuydu, işte düzeltici kayıt, işte ikisini birbirine bağlayan denetim izi." TFRS 17 kapsamındaki sigorta muhasebesi ve EGM çerçevesi altındaki emeklilik mevzuatı, ikinci modele dayanır. Bir downstream sisteme görünür hale gelmiş her durum, kendi soy bilgisi bozulmadan, üzerine yenisi geldikten sonra bile yeniden inşa edilebilir kalmak zorundadır.
Bunun, boru hatlarının nasıl tasarlanması gerektiği üzerinde somut sonuçları vardır:
- Raporlanmış pozisyonlar üzerinde yıkıcı güncelleme yok. Bir bakiye EGM'ye gönderildikten veya bir devlet katkısı hesabında kullanıldıktan sonra o satır değişmezdir. Düzeltmeler, kendi yürürlük ve kayıt tarihleri olan ofset kayıtlar üzerinden yapılır.
- Bitemporal depolama opsiyonel değildir. Hem iş tarihine (ekonomik olayın gerçekleştiği zaman) hem de sistem tarihine (sizin bundan haberdar olduğunuz zaman) ihtiyacınız var. Mevcut satırın üzerine yazan standart bir CDC pipeline'ı, mevzuat açısından bir yükümlülüktür.
- Replay, mühendislerin varsaydığı şekilde idempotent değildir. Bir düzeltmeden sonra katkı pay batch'ini yeniden oynatmak aynı downstream etkileri üretmez, çünkü bu etkilerin bazıları (devlet katkısı talepleri, komisyon ödemeleri) çoktan tüketilmiştir.
Ekiplerin İçine Düştüğünü Gördüğüm Hata Modları
Birkaç desen, emeklilik ve hayat sigortası kuruluşlarında tekrarlanır:
"Temiz replay" tuzağı. Bir ekip kötü bir batch tespit eder, platformu offline alır, snapshot'tan geri yükler, ETL'i düzeltir ve yeniden oynatır. Katılımcı bakiyeleri artık düzeltilmiş gerçekle uyumludur — ancak kötü çalışmadan gelen EGM gönderimi hâlâ kayıtlıdır ve günlük mutabakat artık ekibin açıklayamadığı bir uyumsuzluk gösterir, çünkü orijinal olarak ne gönderdiklerinin kanıtını sildiler.
Geriye dönük NAV problemi. Fon muhasebesi, üç değerleme tarihi önceki bir fiyatlama hatasını keşfeder. İçgüdü, o tarihten itibaren NAV'ı yeniden hesaplamak ve birim sayılarını güncellemektir. Ancak hata tarihi ile keşif tarihi arasında çıkış yapan katılımcılar yanlış NAV üzerinden işlem yapmıştır ve nakit ödemeleri kesinleşmiştir. "Doğru" geçmiş uygulanabilir değildir; uygulanabilir olan şey, bugün kaydedilen, hatalı değerlemeye net bir referansı olan bir telafi kaydıdır.
Uyumu bozan dağıtım geri alımı. Yeni bir fiyatlama motoru versiyonu canlıya alınır, bir günlük prim işler ve bir kusur bulunur. Dağıtımı geri almak önemsizdir. Yeni versiyonun hesaplamalarıyla düzenlenmiş poliçeleri — çoktan bağıtlanmış, çoktan düzenleyicinin ürün siciline girmiş — geri almak değildir. Dağıtım artefaktı ile veri artefaktı farklı geri alma semantiklerine sahiptir ve ikisini aynı şekilde ele almak, yasal olarak iptal edemeyeceğiniz poliçeler düzenlemenize yol açar.
Gerçekten İşe Yarayan Şey
Denetimden sağ çıkan boru hatları farklı bir zihinsel modele dayanır:
- Varsayılan olarak append-only. Düzeltmeler, eskilerinin mutasyonları değil, yeni olaylardır. Tüm işlem günlüğü gerçeğin kaynağıdır, onun en son snapshot'ı değil.
- Dahili ve dışsallaştırılmış durum arasında net bir sınır. EGM'ye, devlet katkısı motoruna, katılımcıya dönük kanala veya fon muhasebesi NAV'ına sınırı geçmiş olan her şey gerçek olarak ele alınır. Dahili staging durumu yeniden inşa edilebilir; dışsallaştırılmış durum yalnızca düzeltilebilir.
- Birinci sınıf vatandaş olarak telafi iş akışları. Her batch sürecinin, silme değil ofset kayıt üreten belgelenmiş bir tersine çevirme prosedürüne ihtiyacı vardır. Bu, muhasebenin her zaman çalıştığı şekle, veri mühendisliğinin genelde düşündüğünden daha yakındır.
- Replay, dışsallaştırılmış tüketicilere karşı test edilmiş olmalı. Bir batch'i yeniden oynatmadan önce, downstream sistemlerin replay'i düzeltme olarak mı yoksa kopya olarak mı kabul edeceğini doğrulayın. Özellikle EGM'nin kullanılması gereken belirli ters kayıt tipleri vardır; eskisini iptal etmek için yeni bir pozitif gönderim yapmak aynı şey değildir.
Rahatsız Edici Sonuç
Bugün kuruluşlara satılan kurtarma araçlarının çoğu — snapshot tabanlı DR, point-in-time restore, GitOps tarzı dağıtım geri alma — veritabanının kayıt sistemi olduğu ve dışarıdan kimsenin onun ara durumlarına göre hareket etmediği sistemler için inşa edildi. Emeklilik ve sigorta verileri böyle çalışmaz. Kayıt sistemi; düzenleyici, katılımcı ve birkaç aracı ile ortaklaşa tutulur ve onlar çoktan hareket etmiştir.
Bir emeklilik boru hattını geri alabilecekmişsiniz gibi tasarlamak teknik bir kestirme değildir. Aslında hiçbir zaman kurtarmaya ihtiyaç duymayacağınıza dair bir uyum bahsidir. O bahis sonunda kaybeder ve temizlik o noktada bir mühendislik problemi değildir — bir hukuk problemidir.