NoSQL: ScyllaDB, Google'ın çoğaltma mimarisiyle esnek bir şekilde ölçeklenir
Scylla, NoSQL veritabanı ScyllaDB'nin 6.0 sürümünü yayınladı. Kurulduğu günden bu yana yüksek performans için tasarlanan açık kaynak veritabanı, güncel sürümle birlikte yeni bir replikasyon mimarisini öğreniyor.
Reklamcılık
Bu sürüm aynı zamanda kesinlikle tutarlı topoloji güncellemeleri ve tutarlı erişim kontrolü güncellemeleriyle ilgili iyileştirmeler de getiriyor.
Cassandra mimarisi yerine Google ile replikasyon
ScyllaDB 6.0, kümedeki veri dağıtımı için tabletlere güvenir. Google, dağıtılmış veritabanı sistemi Bigtable konseptini ilk kez tanıttı ve bunu halefi Spanner'da kullandı. Tabletler tabloların birkaç satırını içerir. Bigtable düğümleri verileri içermez, yalnızca tabletlere yönelik işaretçileri içerir.
![](https://Haberler.cloudimg.io/width/696/q50.png-lossy-50.webp-lossy-50.foil1/_Haber_/imgs/18/4/6/1/8/7/7/9/tablets-cluster-ea21a068a204a625.png)
Veritabanı, tabloları tabletlere böler ve bunları kümedeki birden fazla düğüme dağıtır.
(Resim: Scylla)
Esnek dağıtım
Yük dengeleyici, verileri dinamik olarak dağıtır ve boyutu gerektiği gibi değiştirebilir, yani daha büyük tabletleri bölebilir veya daha küçük olanları birleştirebilir. Yük dengeleyici, bölünmüş tabletleri birbirinden bağımsız olarak farklı düğümlere dağıtır.
Bu şekilde sistem, isteklerdeki, içerikteki veya mevcut düğümlerdeki değişikliklere esnek bir şekilde tepki verebilir.
![](https://Haberler.cloudimg.io/width/509/q50.png-lossy-50.webp-lossy-50.foil1/_Haber_/imgs/18/4/6/1/8/7/7/9/tablets-load-balancing-0fbf65147f6f8879.png)
Yeni bir düğüm eklendiğinde, ağır yüklü düğümlerden tabletleri devralır.
(Resim: Scylla)
Tablet mimarisi, ScyllaDB'nin Cassandra'dan uyarladığı ve 5.4 sürümüne kadar kullanılan sanal düğüm çoğaltma konseptinden daha esnektir.
ScyllaDB'nin mevcut sürümü varsayılan olarak tablet mimarisini kullanır. Mimarinin hafif işlemlere izin vermemesi nedeniyle devre dışı bırakmak istiyorsanız ilgili anahtar alanını bayrakla ayarlamanız gerekir. tablets = { 'enabled': false } yaratmak.
Topolojide tutarlılık
İkinci büyük yenilik ise kesinlikle tutarlı topoloji güncellemeleridir. Scylla, Raft algoritmasına güveniyor; veritabanı, rol modeli Cassandra'ya ve Paxos algoritmasına 2023'te zaten veda etmişti.
ScyllaDB 6.0, varsayılan olarak yeni kümeler için Raft tabanlı, kesinlikle tutarlı topoloji güncellemelerine olanak tanır. Bir belge gönderisinde mevcut kümelerin manuel olarak nasıl yükseltileceği açıklanmaktadır.
Topoloji güncellemelerine ek olarak, veritabanı artık rol tabanlı erişim kontrolü (RBAC) ve tutarlı hizmet düzeyleri için kesinlikle tutarlı kimlik doğrulama güncellemelerini de garanti ediyor.
Rol model olarak Cassandra, odak noktası performans
ScyllaDB'nin arkasındaki ekip, NoSQL veritabanını ilk kez 2015 yılında Cassandra Zirvesi'nde sundu. Veritabanı en başından itibaren Cassandra ile uyumlu olacak şekilde tasarlandı, ancak önemli ölçüde daha performanslı olması amaçlandı. Cassandra Java tabanlı olmasına rağmen C++ ile yazıldığı için ilgili çöp toplayıcıyla birlikte bir Java Sanal Makinesi (JVM) gerektirmez.
Ayrıca performans nedenleriyle ScyllaDB, kaynaklar arasında veri paylaşırken gecikmeleri ve tıkanmaları önlemek için her veri parçasının sabit kaynakları (CPU, RAM, ağ ve kalıcı depolama) aldığı, hiçbir şeyin paylaşılmadığı bir mimari kullanır.
2018'in sonunda Scylla, blogda 3.0 sürümünün piyasaya sürülmesiyle ilgili önemli bir dönüm noktasından bahsetti; çünkü şirket “Apache Cassandra ile özellik benzerliğini aşmıştı”. Veritabanı artık VNodes yerine yeni tabletler veya Paxos yerine Raft gibi bazı alanlarda kendi yoluna gitti.
Komut satırından düğümleri yönetmeye yönelik düğüm aracı gibi ScyllaDB 6.0'daki diğer yeni özellikler Scylla blogunda bulunabilir.
(rme)