Parçalanmış Veritabanı (Sharded Database)
Sistem Analizi
Normal Davranış
Gelen SQL sorgularını veya belge isteklerini bir sorgu yönlendirme katmanı (koordinatör / coordinator) aracılığıyla analiz eder. Bir sorgu (query) tanımlanmış parça anahtarını (shard key) içerdiğinde, yönlendirici (router) okuma veya yazma işlemini (read or write operation) özel olarak o anahtar aralığına veya karmaya (hash) sahip tek fiziksel parçaya (physical shard) yönlendirir; bu, genel veri kümesi büyüdükçe doğrusal performans ölçeklemesini (linear performance scaling) ve düşük gecikmeyi (low latency) korur.
Çöküş Davranışı
Uygun olmayan bir parça anahtarı (shard key) seçildiğinde (sürekli artan bir zaman damgası veya düşük kardinaliteli bir durum alanı gibi), tek bir düğümün tüm okuma ve yazma trafiğinin büyük çoğunluğunu emdiği bir 'sıcak parça' ('hot shard') koşulu gelişir. Bu tek parça (shard) kaynak tükenmesi altında çökerken, kalan veritabanı düğümleri neredeyse boşta kalarak tüm uygulamada darboğaz yaratır.
İş Sonuçları
Parçalı (sharded) bir veritabanında kayıp bir parça veya bozuk bir yönlendirme tablosu (routing table) gibi feci bir arıza, kısmi, rastgele veri kullanılamamasına neden olur. Müşterilerin bir alt kümesi (subset) tamamen veri kaybı yaşarken veya giriş (login) arızaları yaşarken, diğerleri etkilenmeden kalır. Kırık bir parçayı yeniden dengelemek (rebalancing) veya kurtarmak muazzam zaman alır ve dakika başı gelir kaybına neden olur.
Görsel Tezahür
"Sorgu yönlendirme (query routing) hataları, sürekli zaman aşımına uğrayan belirli kullanıcı kimlikleri (user IDs) ve tüm kümeyi (cluster) kilitleyen parçalar arası sorgular (cross-shard queries)."
Satirical Behavior
"The architectural decision to chop your data into tiny pieces across multiple servers, ensuring that when it breaks, you have absolutely no idea where anything is."
Bilinen İsimler
Teknik Terminoloji
Hata Göstergeleri
Sistem Mimarisi
FAQ
Normalde nasıl davranır?
Gelen SQL sorgularını veya belge isteklerini bir sorgu yönlendirme katmanı (koordinatör / coordinator) aracılığıyla analiz eder. Bir sorgu (query) tanımlanmış parça anahtarını (shard key) içerdiğinde, yönlendirici (router) okuma veya yazma işlemini (read or write operation) özel olarak o anahtar aralığına veya karmaya (hash) sahip tek fiziksel parçaya (physical shard) yönlendirir; bu, genel veri kümesi büyüdükçe doğrusal performans ölçeklemesini (linear performance scaling) ve düşük gecikmeyi (low latency) korur.
Nasıl çöker?
Uygun olmayan bir parça anahtarı (shard key) seçildiğinde (sürekli artan bir zaman damgası veya düşük kardinaliteli bir durum alanı gibi), tek bir düğümün tüm okuma ve yazma trafiğinin büyük çoğunluğunu emdiği bir 'sıcak parça' ('hot shard') koşulu gelişir. Bu tek parça (shard) kaynak tükenmesi altında çökerken, kalan veritabanı düğümleri neredeyse boşta kalarak tüm uygulamada darboğaz yaratır.
İş sonuçları nelerdir?
Parçalı (sharded) bir veritabanında kayıp bir parça veya bozuk bir yönlendirme tablosu (routing table) gibi feci bir arıza, kısmi, rastgele veri kullanılamamasına neden olur. Müşterilerin bir alt kümesi (subset) tamamen veri kaybı yaşarken veya giriş (login) arızaları yaşarken, diğerleri etkilenmeden kalır. Kırık bir parçayı yeniden dengelemek (rebalancing) veya kurtarmak muazzam zaman alır ve dakika başı gelir kaybına neden olur.
What architectural pitfalls cause severe hot shard hotspots in a sharded database?
Hotspots occur when the chosen shard key does not distribute read and write traffic uniformly across the cluster. For instance, sharding by creation timestamp directs all active write traffic to the single shard assigned to the current time range. Similarly, sharding multi-tenant databases by tenant ID without salting causes massive enterprise customers to overwhelm individual shards while smaller tenant shards sit underutilized.
Why do cross-shard scatter-gather queries degrade distributed database performance?
When a query does not specify the shard key in its WHERE clause, the query coordinator must broadcast the request to every shard in the cluster (scatter) and merge the individual result sets in memory (gather). This operation ties up connection pools across all nodes and causes query response times to be dictated by the slowest-performing shard in the cluster, multiplying tail latency exponentially.
Sistemi keşfet
AI özeti
Sharded Database is a DATA_AND_STORAGE system in TinyCTO.tv. Analyzes incoming SQL queries or document requests through a query routing layer (coordinator). When a query includes the defined shard key, the router directs the read or write operation exclusively to the single physical shard that owns that key range or hash, maintaining linear performance scaling and low latency as the overall dataset grows.
