Veritabanları İçin ACID Özelliği Nedir?

ACID, Atomicity Consistency Isolation Durability (Atomisite Tutarlılık İzolasyon Dayanıklılık)'nin kısaltmasıdır. Veritabanı uzmanlarının ilişkisel veritabanlarını ve uygulama mimarilerini değerlendirirken genellikle aradığı kavramdır.

Güvenilir bir veritabanı için, tüm bu dört nitelik elde edilmelidir..

Atomisite, veritabanı değişiklikleri için ya hep ya hiç kuralıdır.

Tutarlılık, bir işlemin (tamamlanmış veya yarım kalmış) veri tabanınızdan hiçbir zaman ayrılmamasını garanti eder.

İzolasyon, işlemleri tamamlanıncaya kadar birbirinden ayrı tutar.

Dayanıklılık, veritabanının bekleyen işlemleri her koşulda takip etmesini garanti eder. Sunucunun anormal bir durumda kalmasında bile işlemler kaybolmaz ve kurtarılabilinir.

ACID Ne Zaman Gereklidir?

ACID özellikleri, işleme yönelik veritabanı kurtarma ilkeleri olarak tasarlanmıştır.

Bu nedenle ACID, verilerin bir tür başarısızlık sonucunda bozulmamasını sağlamak için veritabanı işlemlerinin uyması gereken ilkelerdir.

İşlem, bir veya daha fazla adımdan oluşabilen tek bir mantıksal işlemdir. Örneğin, banka hesapları arasında para transferi yapmak (yani bir hesabı borçlandırıp diğerini alacaklandırmak) bir işlemdir.

Bunun gibi bir işlem yarıda başarısız olursa, bunun önemli sonuçları olabilir. Para ilk hesaptan borçlandırılabilir, ancak diğer hesaba alacak kaydedilemez.

ACID tanımına göre, bir veritabanı ancak ve ancak başarılı işlemlerin sonuçlarını içeriyorsa tutarlıdır. ACID uyumlu herhangi bir veritabanı, yalnızca başarılı işlemlerin işlenmesini sağlayacaktır. Bir işlem tamamlanmadan önce bir hata oluşursa, hiçbir veri değiştirilmeyecektir.

Bu nedenle, ACID uyumlu Veritabanı Yönetim Sistemleri (DBMS) kuruluşlara, işlemler işlenirken bir tür hata meydana gelse bile veritabanlarının veri bütünlüğünü koruyacağına dair güven sağlar.

ACID Uyumluluğu

Başlıca ilişkisel DBMS'lerin tümü ACID ilkelerine bağlıdır. Hepsi, verilerin yazılım ve donanım çökmeleri ve başarısız işlemler boyunca tutarlı kalmasını sağlayan özellikler içerir.

NoSQL veritabanları ise biraz daha farklıdır. NoSQL veritabanları genellikle bir kümede yüksek kullanılabilirlik sağlamak üzere tasarlanır, bu da genellikle tutarlılık ve/veya dayanıklılığın bir dereceye kadar feda edildiği anlamına gelir. Ancak, çoğu NoSQL DBMS bir dereceye kadar atomiklik sağlayabilir.

Çoğu NoSQL DBMS, sonunda tutarlı bir temelde çalışır; bu, verilerin bir süreliğine eşitlenmemiş olabileceği, ancak sonunda eşitleneceği anlamına gelir.

MarkLogic, OrientDB ve Neo4j gibi bazı sağlayıcılar ACID uyumlu NoSQL veritabanı yönetim sistemleri sunmaktadır.



İlginizi Çekebilir

Veritabanı View Nedir?

Veritabanında İlişki Nedir?

Veritabanında Satır Nedir?

Anahtar-Değer (Key-Value) Veritabanı Nedir?

Veritabanında Artık (Sahipsiz) Kayıt Nedir?