GitHub Radar — SurrealDB
Rust ile geliştirilmiş, hesaplama ile depolamayı ayıran ve ilişkisel, doküman, grafik ile vektör modellerini tek bir SurrealKV LSM motorunda birleştiren çok modelli veritabanı.
SurrealDB, modern yazılım mimarilerinde ilişkisel tablolar, esnek JSON dokümanları, yönlü grafik ağları ve yapay zeka vektör gömmeleri için ayrı ayrı veritabanları kurma zorunluluğunu (poliglot persistence) ortadan kaldırmak amacıyla saf Rust ile sıfırdan geliştirilmiş çok modelli (multi-model) bir veritabanı sistemidir 1. PostgreSQL, MongoDB, Neo4j ve Redis gibi dört farklı teknolojiyi entegre etmeye çalışırken ortaya çıkan ağ gecikmelerine, veri tutarsızlıklarına ve karmaşık API ağ geçitlerine karşı SurrealDB; hesaplama ile depolamayı birbirinden ayıran katmanlı mimarisi, yerel SurrealKV depolama motoru ve WebSocket tabanlı canlı sorgu (Live Queries) altyapısıyla tüm uygulama durumunu tek bir ACID işlem sınırında yöneten devrimci bir sistem katmanıdır 2.
Geliştirici üretkenliği, yerel-öncelikli (local-first) yazılımlar ve modern web altyapıları çevrelerinde 33 bin yıldız ve son commit 12 saat önce düzeyinde küresel bir ilgi odağına dönüşen depo, titizlikle takip edilen 614 açık issue ve kurumsal olgunluğu kanıtlayan son sürüm v3.3.0 (Eylül 2026) metrikleriyle canlılığını korumaktadır.
Mimari Deep-Dive: SurrealDB
SurrealDB’nin mühendislik çekirdeğindeki temel sıçrama, farklı veri modellerini sonradan eklenmiş uyumluluk katmanları olarak değil, tek bir birleşik veri yapısı (unified data structure) üzerinden doğrudan yürütmesidir. Proje bütünüyle saf Rust diliyle geliştirilmiştir 1. Rust seçimi; C++ bellek taşması ve segmentasyon hatalarını derleme aşamasında engellemek, Tokio asenkron çalışma zamanı ile binlerce eşzamanlı WebSocket bağlantısını yönetmek ve WebAssembly (Wasm) derlemesiyle tarayıcı içinde yerel olarak çalışabilen hafif istemciler sunabilmek amacıyla yapılmıştır.
İlk temel mimari karar hesaplama ile depolamanın tam olarak ayrıştırılmasıdır (compute-storage separation) 2. SurrealDB’nin sorgu ayrıştırma, planlama, yürütme ve kayıt düzeyinde erişim (Record-Level Access / RLA) izin denetimi yapan katmanı tamamen durumsuzdur (stateless). Depolama katmanında ise tak-çıkar sürücüler kullanılır. Tek düğümlü ve gömülü kullanım senaryoları için ekibin Rust ile sıfırdan yazdığı LSM (Log-Structured Merge-tree) tabanlı yerel motor SurrealKV devreye girer 3. SurrealKV, veritabanı seviyesinde zaman yolculuğu (time-travel) sorgularını destekler; VERSION ifadesiyle geçmişteki herhangi bir anın verisi sayfa seviyesinde anında okunabilir. Büyük kurumsal üretim ortamlarında ise dağıtık Raft konsensüsüyle çalışan TiKV motoruna bağlanarak petabaytlarca veri üzerinde yatayda ölçeklenebilen kümelere dönüşür 4.
İkinci kritik sütun birleşik veri modelleme yeteneğidir. Tek bir SurrealQL sorgusu içinde ilişkisel bir tablodan seçim yapabilir, JSON nesnesinin iç içe geçmiş alanlarını filtreleyebilir, ->satın_aldı->ürün sözdizimiyle graf ilişkilerini işaretçiler üzerinden indeks gerektirmeden tarayabilir ve HNSW vektör indeksi üzerinden anlamsal benzerlik araması yapabilirsiniz. Bu modellerin tamamı aynı depolama katmanını paylaştığından, bir dokümanın güncellenmesi, graf kenarının eklenmesi ve vektörünün yenilenmesi tek bir atomik ACID işleminde diske yazılır.
Üçüncü sütun ise olay güdümlü canlı sorgulardır (Live Queries). İstemciler LIVE SELECT sorgusuyla belirli bir veri kümesine abone olur; veritabanında bu şarta uyan bir değişiklik gerçekleştiğinde, motor WebSocket üzerinden istemcilere anlık JSON farklarını (diff) iletir. Harici Redis Pub/Sub veya Kafka kuyrukları kurma gereksinimi tamamen ortadan kalkar.
Kod ve Topluluk Sağlığı
SurrealDB, Tobie Morgan Hitchcock ve Jaime Morgan Hitchcock kardeşler liderliğinde Londra merkezli SurrealDB Ltd bünyesinde tam zamanlı sistem programcıları tarafından geliştirilmektedir 1. Aldığı 44 milyon dolarlık kurumsal girişim sermayesi yatırımıyla desteklenen proje, açık kaynak topluluğuyla sıkı bağlar kurarak hızla büyüyen profesyonel bir ekibin kontrolündedir.
Depodaki 614 açık issue sayısı, projenin JavaScript, Python, Go, Rust, Java, C ve .NET gibi geniş istemci SDK ekosisteminden ve çok modelli motorun getirdiği geniş yüzey alanından kaynaklanmaktadır. Bakımcı grubu gelen hata bildirimlerini organize GitHub Projects panoları üzerinden önceliklendirmekte, özellikle veri tutarlılığı ve bellek optimizasyonu konularındaki yamaları hızla yayımlamaktadır. Çekirdek depoya sunulan her PR; dağıtık TiKV küme testlerinden, karmaşık grafik sorgu doğrulama senaryolarından ve katı Clippy denetimlerinden geçer 5. Sürümleme disiplini semantik versiyonlama kurallarına tam uyum göstermekte; düzenli yama ve ana sürümler kararlı şekilde kullanıcılara sunulmaktadır. 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 arkasındaki kurumsal mühendislik gücü, şeffaf yol haritası ve dinamik topluluk katılımı dikkate alınarak health_score: 9.2 takdir edilmiştir.
Production Riski: Gerçekten Kullanılır mı?
SurrealDB’yi kurumsal üretim mimarilerine dahil etmeyi değerlendiren sistem mimarları için en kritik inceleme lisanslama modelidir; proje Business Source License 1.1 (BSL 1.1) ile dağıtılmakta olup her sürüm yayımlandıktan 4 yıl sonra otomatik olarak Apache 2.0 lisansına dönüşmektedir 6. Kendi iç altyapınızda veya geliştirdiğiniz ticari SaaS ürünlerinde veritabanı olarak kullanmak tamamen ücretsizdir; tek kısıtlama SurrealDB’yi doğrudan üçüncü taraflara ticari bir veritabanı bulut hizmeti (DBaaS) olarak satamamaktır.
SurrealDB’nin üretimde hayat kurtardığı senaryolar oldukça belirgindir: Çoklu veritabanı katmanlarını yönetmekten yorulmuş modern full-stack ekipler, gerçek zamanlı işbirliği gerektiren çok kullanıcılı uygulamalar, ve yapay zeka ajanlarının hafıza katmanında hem bilgi grafı (knowledge graph) hem de vektör aramasını bir arada yürütmek isteyen yeni nesil platformlar. Kayıt düzeyinde yetkilendirme (RLA) sayesinde backend API yazma ihtiyacını dramatik biçimde azaltır.
Buna karşın, operasyonel olarak yönetilmesi gereken sınırlar mevcuttur. Çok modelli bir motor, yalnızca tek bir modele odaklanmış hiper-özelleşmiş motorlara kıyasla (örneğin saf bir ClickHouse OLAP kümesi veya devasa bir Neo4j graf kümesi) aşırı uç senaryolarda ek bellek ve işlem maliyeti yaratabilir. Ayrıca yeni geliştirilen SurrealKV motoru olgunlaşma aşamasında olduğundan, muhafazakar üretim ortamlarında arka uç olarak RocksDB veya TiKV tercih edilmelidir. Doğru senaryoda SurrealDB, modern yazılım altyapılarında mimari karmaşıklığı en radikal biçimde sadeleştiren öncü veritabanıdır.