RadarGitHub Radarai üretimi

GitHub Radar — TigerBeetle

Zig ile yazılmış, statik bellek tahsisi, Direct I/O ve deterministik simülasyon testiyle çalışan yüksek güvenlikli finansal işlem veritabanı.

TigerBeetle, geleneksel ilişkisel veritabanlarının karmaşık mimarilerini geride bırakarak doğrudan finansal defter tutma (double-entry bookkeeping) ve transfer işlemlerini mikrosaniye seviyesinde işlemek üzere tasarlanmış, sıfır çalışma zamanı tahsisatına sahip dağıtık bir işlem veritabanıdır 1. Standart ilişkisel veritabanlarının (OLTP) genel amaçlı ACID mimarisi, yüksek çekişmeli bakiye güncellemelerinde kilitlenme (lock contention), bellek parçalanması ve disk eşzamanlama gecikmeleriyle boğuşurken; TigerBeetle, donanımla mekanik sempati (mechanical sympathy) kuran radikal sistem mimarisiyle saniyede yüz binlerce finansal işlemi mutlak veri güvenliği garantisiyle sonuçlandırır 2.

Finansal altyapılar ve düşük seviyeli sistem mühendisliği çevrelerinde 17 bin yıldız ve son commit 2 gün önce düzeyinde derin bir güven inşa eden repo, titiz bir kalite filtresiyle yönetilen 87 açık issue ve yüksek sürüm disiplinini gösteren son sürüm v0.17.9 (Temmuz 2026) metrikleriyle üretim standartlarını korumaktadır.

Mimari Deep-Dive: TigerBeetle

TigerBeetle’ın sistem tasarımı, modern yazılım dünyasında kabul görmüş birçok soyutlamayı ve işletim sistemi varsayımını bilinçli olarak reddeden devrimci mühendislik kararları üzerine oturur. Projenin programlama dili olarak Zig seçilmiştir 1. Rust yerine Zig’in tercih edilmesinin temel nedeni; bellek üzerinde tam, çıplak donanım seviyesinde kontrol sağlamak, dilin gizli kontrol akışı veya örtük bellek ayırıcıları barındırmaması ve güvenli derlemelerde dahi varsayılan olarak sunulan taşma denetimli aritmetik (checked arithmetic) kabiliyetidir.

İlk ve en radikal mimari karar statik bellek tahsisidir (static memory allocation). TigerBeetle düğümü ayağa kalktığında ihtiyaç duyacağı tüm belleği önceden tek parça halinde işletim sisteminden talep eder; sürecin çalışması boyunca hiçbir şekilde malloc, free veya dinamik bellek havuzu kullanılmaz 2. Çalışma zamanında bellek tahsisinin olmaması, bellek parçalanması (fragmentation) riskini, çöp toplayıcı (GC) duraklamalarını ve beklenmedik bellek yetersizliği (OOM) kaynaklı sunucu çöküşlerini matematiksel olarak imkansız kılar.

İkinci kritik sütun doğrudan G/Ç (Direct I/O) ve çekirdek sayfa önbelleğinin (page cache) devre dışı bırakılmasıdır. TigerBeetle, O_DIRECT bayrağı ile işletim sisteminin sayfa önbelleğini tamamen atlar ve depolama katmanıyla doğrudan konuşur. Araştırmaların açıkça gösterdiği üzere Linux çekirdeğinin fsync hata yönetimi güvenilmezdir ve kirli sayfaların arka planda diske yazılması öngörülemez gecikme dalgalanmalarına (tail latency spikes) yol açar. TigerBeetle, modern NVMe SSD bloklarıyla doğrudan sektör seviyesinde hizalanmış arabellekler üzerinden haberleşir; Linux platformunda io_uring arayüzü sayesinde sistem çağrısı (syscall) maliyetlerini sıfırlayarak asenkron disk yazımlarını donanım hızında gerçekleştirir.

Üçüncü sütun ise iki fazlı yürütme mimarisidir: ayrık ön yükleme (prefetch) ve senkron commit döngüsü. Bir transfer paketi geldiğinde sistem önce hangi hesapların diskten okunması gerektiğini tespit ederek tüm G/Ç operasyonlarını paralel olarak yürütür. Veriler belleğe ulaştıktan sonra commit aşaması tek bir işlemci çekirdeğinde, son derece sıkı bir döngüde ve sıfır disk okumasıyla tamamen senkron olarak işletilir. Dağıtık konsensüs katmanında ise Paxos yerine daha katı ve deterministik lider geçişleri sunan Viewstamped Replication (VSR) protokolü kullanılır 2. Tüm bu mimari, NASA’nın Power of Ten kurallarından esinlenen ve fonksiyonların 70 satırı geçmesini engelleyen katı TigerStyle felsefesiyle ve sistemi yüz binlerce rastgele hata senaryosu altında tek çekirdekte hızlandırılmış olarak test eden VOPR (Viewstamped Operation Processing Replica) simülasyon fuzzer’ı ile doğrulanır 3 4.

Kod ve Topluluk Sağlığı

TigerBeetle, kurucusu Joran Dirk Greef liderliğinde TigerBeetle Inc. bünyesinde tam zamanlı sistem programcılarından oluşan çekirdek bir mühendislik kadrosu tarafından geliştirilmektedir 1. Proje, kurumsal finansal sponsorluklar ve risk sermayesi desteğiyle finanse edilen, uzun vadeli altyapı istikrarına odaklanmış profesyonel bir ekibin kontrolündedir.

Depodaki 87 açık issue sayısı, projenin topluluk tarafından açılan her türlü soru veya öneriyi titizlikle inceleyip triyajdan geçirdiğini ve gereksiz talepleri hızla ayıkladığını gösteren örnek bir metriktir. Dışarıdan gelen katkılar doğrudan kabul edilmez; her PR, projenin sıfır harici bağımlılık politikasını ve katı TigerStyle kurallarını karşılamak zorundadır 4. CI/CD boru hatlarında binlerce saatlik deterministik simülasyon testi (DST), çekirdek seviyesinde hata enjeksiyonu ve Antithesis test platformu çalıştırılır 3. Jepsen testlerinden de başarıyla geçen veritabanı, veri bütünlüğü açısından endüstride nadir görülen bir sağlamlık seviyesine ulaşmıştır. Sürümleme süreci haftalık ve aylık düzenli semantik etiketlerle kararlı bir çizgide ilerlemektedir 5. health_score bu bölümden türer: issue kapanma hızı, sürüm düzeni, bakımcı ekibi. Ajanın tahminidir; künyede öyle yazılır. Projenin bağımsız kurumsal gücü, eşsiz deterministik doğrulama altyapısı ve kusursuz issue hijyeni göz önüne alınarak health_score: 9.1 takdir edilmiştir.

Production Riski: Gerçekten Kullanılır mı?

TigerBeetle’ı üretim mimarilerine dahil etmeyi değerlendiren sistem mimarları için yasal ve lisanslama açısından herhangi bir engel bulunmamaktadır; proje Apache 2.0 lisansı ile dağıtılmakta olup CLA (Katkıcı Lisans Sözleşmesi) dayatması içermez ve tescilli bulut ortamlarında tam ticari kullanım özgürlüğü sunar 6.

TigerBeetle’ın üretim ortamlarında hayat kurtardığı senaryolar oldukça berraktır: Bankacılık ana defterleri (core ledger), kripto para borsaları, e-ticaret hediye kartı ve bakiye sistemleri veya telekomünikasyon faturalandırma motorları gibi saniyede yüz binlerce transferin mutlak çift taraflı tutarlılıkla kaydedilmesi gereken kritik iş yükleri. Geleneksel Postgres veya MySQL kümelerinde tabloları kilitleyen bakiye güncelleme yarışmalarını ortadan kaldırır ve donanım kaynaklarını %90’a varan oranda boşa çıkarır.

Buna karşın, dikkate alınması gereken radikal operasyonel kısıtlar vardır. TigerBeetle genel amaçlı bir veritabanı değildir; üzerinde serbest SQL sorguları çalıştıramaz, rastgele ikincil indeksler tanımlayamaz veya ilişkisel veri modelleri kurgulayamazsınız. Sistem yalnızca hesaplar (accounts) ve transferler (transfers) temel veri yapılarını kabul eden uzmanlaşmış bir durum makinesidir. Ayrıca Zig dilinin henüz 1.0 sürümüne ulaşmamış olması ve ekosistemdeki istemcilerin C ABI üzerinden bağlanması, hata ayıklama ve operasyonel izleme süreçlerinde uzman sistem mühendisliği gerektirir. Kullanım amacı doğru sınırlandırıldığında TigerBeetle, kurumsal finansal altyapılar için dünyadaki en sağlam ve en hızlı işlem motorudur.

Kaynaklar

  1. TigerBeetle GitHub Ana Deposu
  2. TigerBeetle Mimari Dokümantasyonu
  3. TigerBeetle Blog: Deterministik Simülasyon Testi ve VOPR
  4. TigerStyle Kodlama Prensipleri ve Standartları
  5. TigerBeetle Sürüm Notları ve Değişiklik Günlüğü
  6. TigerBeetle Apache 2.0 Lisans Metni