BASE Veritabanı Geliştirme Modeli

İçindekiler:

BASE Veritabanı Geliştirme Modeli
BASE Veritabanı Geliştirme Modeli
Anonim

İlişkisel veritabanları, özünde güvenilirlik ve tutarlılık ile tasarlanmıştır. Bunları geliştiren mühendisler, ACID modelinin dört ilkesinin her zaman korunmasını sağlayan bir işlem modeline odaklandı. Ancak, yapılandırılmamış yeni bir veritabanı modelinin ortaya çıkışı, ACID'yi tepetaklak ediyor. NoSQL veritabanı modeli, esnek bir anahtar/değer deposu yaklaşımı lehine yüksek düzeyde yapılandırılmış ilişkisel modelden kaçınır. Verilere yönelik bu yapılandırılmamış yaklaşım, ACID modeline bir alternatif gerektirir: BASE modeli.

Image
Image

ASİT Modelinin Temel İlkeleri

ACID modelinin dört temel ilkesi vardır:

  • İşlemlerin atomikliği, her veritabanı işleminin yürütme için "ya hep ya hiç" yaklaşımını benimseyen tek bir birim olmasını sağlar. İşlemdeki herhangi bir ifade başarısız olursa, işlemin tamamı geri alınır.
  • İlişkisel veritabanları ayrıca her işlemin veri tabanının iş kurallarıyla tutarlılığını 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ı motoru, aynı anda veya neredeyse aynı anda gerçekleşen birden fazla işlem arasında izolasyon uygular. Her işlem, diğer her işlemden önce veya sonra gerçekleşir ve bir işlemin başlangıcında gördüğü veritabanının görünümü, sonuçlanmadan önce işlemin kendisi tarafından değiştirilir. Hiçbir işlem, başka bir işlemin ara ürününü görmemelidir.
  • Son ACID ilkesi olan dayanıklılık, bir işlem veritabanına bağlandıktan sonra, yedekler ve işlem günlükleri kullanılarak kalıcı olarak korunmasını sağlar. Bir başarısızlık durumunda, bu mekanizmalar, taahhüt edilen işlemleri geri yüklemek için kullanılabilir.

BASE'in Temel İlkeleri

NoSQL veritabanları, diğer yandan, ACID modelinin aşırı yüklendiği veya aslında veritabanının çalışmasını engelleyebileceği durumları kapsar. Bunun yerine NoSQL, uygun şekilde BASE modeli olarak bilinen daha yumuşak bir modele dayanır. Bu model, NoSQL tarafından sunulan esnekliği ve yapılandırılmamış verilerin yönetimi ve küratörlüğüne benzer yaklaşımları barındırır. BASE üç ilkeden oluşur:

  • Basic Availability NoSQL veritabanı yaklaşımı, birden fazla hatanın varlığında bile verilerin kullanılabilirliğine odaklanır. Bunu, veritabanı yönetimine yüksek oranda dağıtılmış bir yaklaşım kullanarak başarır. NoSQL veritabanları, tek bir büyük veri deposunu sürdürmek ve bu deponun hata toleransına odaklanmak yerine, verileri yüksek derecede çoğ altma ile birçok depolama sistemine yayar. Bir hatanın bir veri segmentine erişimi kesintiye uğratması gibi pek olası olmayan bir durumda, bu mutlaka tam bir veritabanı kesintisi ile sonuçlanmaz.
  • Yumuşak Durum. BASE veritabanları, ACID modelinin tutarlılık gereksinimlerini hemen hemen tamamen terk eder. BASE'in arkasındaki temel kavramlardan biri, veri tutarlılığının geliştiricinin sorunu olduğu ve veritabanı tarafından ele alınmaması gerektiğidir.
  • Nihai Tutarlılık NoSQL veritabanlarının tutarlılıkla ilgili tek gereksinimi, gelecekte bir noktada verilerin tutarlı bir duruma yakınsamasını istemektir. Ancak bunun ne zaman gerçekleşeceği konusunda hiçbir garanti verilmemektedir. Bu, bir işlemin önceki işlem tamamlanana ve veritabanı tutarlı bir duruma yakınlaşana kadar yürütülmesini yasaklayan ACID'nin anlık tutarlılık gereksiniminden tam bir ayrılmadır.

BASE'de temel kullanılabilirlik, veri kaynaklarını bile kontrol etmediğiniz anlamına gelebilir. Örneğin, çabanızın bir kısmı için herkese açık veri kümelerine bağlantı verebilirsiniz.

Göreceli Kullanım Örnekleri

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

ACID kullanan veritabanları için en uygun kullanım durumları, öngörülebilir girdi ve çıktılara sahip yüksek düzeyde yapılandırılmış verilere bağlıdır. Bu nedenle, insan kaynakları veritabanları, perakende veri tabanları ve elektronik tıbbi kayıtlar, ACID'nin sunduğu güçlü dahili tutarlılık kontrolünden yararlanır.

Ancak, BASE çözümleri, duygu analizi gibi bulanık konular için daha iyidir. Örneğin, BASE-yapılandırılmış bir proje, belirli bir hashtag'e dayalı olarak duyguyu ima eden kelimeleri arayan bir Twitter beslemesini tarayabilir. Twitter akışı iyi yapılandırılmamış veya yerel olarak örneklendirilmemiştir, ancak veri akışı, bu verilerin kapsamı ve doğası net bir şekilde sınırlandırılmamış olsa bile sorgulara programlanmış bilgileri sunar.

Önerilen: