SQL’de Transaction ve A.C.I.D Kavramı Nedir?

SQL-Transaction-ve-ACID

Arkadaşlar tekrardan merhaba! Bu yazımızda sizlere veritabanı işlemlerin ile alakalı önemli bilgiler, ACID, Transaction ve özelliklerini anlatacağım.

SQL Stuctured Query Language

Transaction konusunu anlatmaya başlamadan önce ACID sistemini ve mantığını anlatmanın daha verimli olacağını düşünüyorum.

ACID Nedir?

ACID Nedir

İlişkisel veritabanlarındaki Transaction ile ilgili tanımlanmış standart kurallara ACID denilir. ACID özelliklerini karşılayan veritabanı işlemler dizisi, transaction olarak adlandırılır. ACID kelimesi Atomicity, Consistency, Isolation, Durability özelliklerinin baş harflerinden oluşmuş bir kısaltmadır. ACID, elektrik kesintilerinde, sistem çökmeleri gibi durumlarda geçerliliği garanti etmeye yarayan veritabanı özelliklerinin bir dizi özelliğidir.

Atomicity (bütünlük): Transaction işlemleri veri tabanı tarafından bir bütün olarak ele alınır. Yapılan işlem herhangi bir kesintiye uğrarsa işlemlerin tamamı geçersiz sayılır yani işlem sırasında birden fazla veritabanı/tablodaki verinin güncellenmesi gerekiyorsa ancak işlemlerin birinde hata oluşursa tüm işlemler iptal edilir. Bunun sebebi

  • Veritabanı problemi.
  • İnternet problemi.
  • Olası başka bir hata olabilir.

Consistency (Tutarlılık): Transaction işlemi başarılı bir şekilde gerçekleşesiye kadar (constraints, cascades, triggers) işlemden etkilenen verilerin değerlerinin bir önceki geçerli değeri vermesidir. Yani eski veriler işlem tam olarak gerçekleşesiye kadar tutulur. Transaction işlemi başarılı olursa değişiklikler veri tabanına aktarılır. Eğer transaction ortasında hata gerçekleşirse, tüm değişiklikler otomatik olarak geri alınır.

Isolation (izolasyon): Aynı anda aynı veri üzerinde birden fazla Transaction değiştirme gereksinimi olabilir. Bu gibi durumlarda işlemler sırayla yapılmalıdır. Bir Transaction oturumu başladığında ilgili veri setleri kilitlenir, işlem tamamlanasıya kadar veriyi değiştirecek ifadeler (delete, update, insert) sadece geçerli oturumda görünür (sayfayı yenileyince değişiklikler gider). Taki oturum sonucundan başarılı ve başarısız olarak sonuç dönünceye kadar.

Durability(Dayanıklılık): Transaction sırasında fiziksel veya işlemsel bir hata olması durumunda sistemin kendisini bir önceki geçerli veri durumuna döndürebilmesi veya transaction başarılı olduğunda değişikliklerin veritabanında kalıcı olmalıdır kabiliyetidir.

Örnek: Bir hesaptan başka bir hesaba para aktarıldığında oluşacak herhangi bir hatada gönderme işleminin iptal edilmesi ve gönderilen paranın gönderen hesaba tekrardan yatması durumudur.

Sonuç

İLK-SER Bilişim Servisi | ACID Sonuc

Transaction, ACID özelliklerinin üzerinde kurulu bir sistemdir. Bu mimari, birçok işletmedeki verilerin bütünlüğünü sağlamakta önemli rol oynamaktadır. Veritabanında gerçekleşecek olan işlemleri bir bütün olarak değerlendirip, herhangi bir parçasında hata olması durumunda, tüm süreci geri alıp başlangıç durumuna getirir. Böylece kritik işlemlerde veri bütünlüğünü garanti altına almış oluruz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

error: Bu Alan Yasaklanmıştır !!!
This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.