Veritabanı Mühendisliğinde BASE Lehine ACID'den vazgeçme

İlişkisel veritabanları özünde güvenilirlik ve tutarlılık ile tasarlanmıştır. Onları geliştiren mühendisler, ACID modelinin dört prensibinin her zaman korunmasını sağlayan bir işlem modeline odaklandılar. Bununla birlikte, yeni bir yapısal olmayan veritabanı modelinin ortaya çıkması, ACID'yi kafasına çeviriyor. NoSQL veritabanı modeli , esnek bir anahtar / değer deposu yaklaşımı lehine son derece yapılandırılmış ilişkisel modeli eskort etmektedir. Bu yapılandırılmamış veri yaklaşımı, ACID modeline bir alternatif gerektirir: BASE modeli.

ACID Modelinin Temel İlkeleri

ACID modelinin dört temel ilkesi vardır:

İşlemlerin atomikliği , her bir veritabanı işleminin, yürütme için “tamamen ya da hiçbir şey” yaklaşımını benimseyen tek bir birim olmasını sağlar. İşlemdeki herhangi bir ifade başarısız olursa, tüm işlem geri alınır.

İlişkisel veritabanları, her işlemin veritabanı iş kurallarıyla tutarlı olmasını da sağlar. Bir atomik işlemin herhangi bir öğesi, veritabanının tutarlılığını bozarsa, tüm işlem başarısız olur.

Veritabanı altyapısı, aynı anda veya aynı anda meydana gelen çoklu işlemler arasındaki yalıtımı zorlar. Her işlem, diğer her işlemden önce veya sonra gerçekleşir ve işlemin başlangıcında gördüğü veri tabanının görünümü, işlemin tamamlanmasından önce yalnızca işlem tarafından değiştirilir. Hiçbir işlem başka bir işlemin ara ürününü görmemelidir.

Son ACID prensibi, dayanıklılık , bir işlemin veri tabanına işlendiğinde, yedeklerin ve işlem kayıtlarının kullanılmasıyla kalıcı olarak korunmasını sağlar. Bir arıza durumunda, bu mekanizmalar taahhüt edilen işlemleri geri kazanmak için kullanılabilir.

BANKA'nın Temel Prensipleri

Diğer taraftan, NoSQL veritabanları, ACID modelinin aşırı olduğu veya gerçekte veritabanının çalışmasını engelleyeceği durumları kucaklar. Bunun yerine, NoSQL, BASE modeli olarak uygun şekilde bilinen daha yumuşak bir modele dayanır. Bu model, NoSQL tarafından sunulan esnekliği ve yapısal olmayan verilerin yönetimi ve iyileştirilmesine benzer yaklaşımları barındırmaktadır. BASE üç prensipten oluşur:

Temel Kullanılabilirlik . NoSQL veritabanı yaklaşımı, birden fazla hata durumunda bile verilerin kullanılabilirliğine odaklanır. Veri tabanı yönetimine oldukça dağıtılmış bir yaklaşım kullanarak bunu başarır. Tek bir büyük veri deposunu korumak ve bu mağazanın hata toleransına odaklanmak yerine, NoSQL veritabanları verileri yüksek bir çoğaltma oranıyla birçok depolama sisteminde yaydı. Bir olasılığın başarısız olması durumunda, bir başarısızlık bir veri segmentine erişimi engelliyorsa, bunun tam olarak bir veritabanı kesintisi ile sonuçlanması gerekmez.

Yumuşak devlet . BASE veritabanları, ACID modelinin tutarlılık gereksinimlerini tamamen tamamen terk eder. BASE'in arkasındaki temel kavramlardan biri veri tutarlılığının geliştiricinin problemidir ve veri tabanı tarafından ele alınmamasıdır.

Son Tutarlılık . NoSQL veritabanlarının tutarlılık konusundaki tek gerekliliği, gelecekte bir noktada verilerin tutarlı bir duruma yaklaşmasıdır. Bununla birlikte, bunun gerçekleşeceği konusunda hiçbir garanti verilmemektedir. Bu, bir işlemin, önceki işlem tamamlanana ve veritabanı tutarlı bir duruma ulaşana kadar yürütmeyi yasaklayan ACID'nin anlık tutarlılık gereksiniminden tamamen ayrılır.

BASE modeli her durum için uygun değildir, ancak bir ilişkisel modele sıkı sıkıya bağlılık gerektirmeyen veritabanları için ACID modeline kesinlikle esnek bir alternatiftir.