Veritabanı İşlemi nedir?
Bir Veritabanı İşlemi , bir DBMS'de bir veya daha fazla veritabanı erişim işlemini gerektiren mantıksal bir işlem birimidir. Özetle, veritabanı işlemleri herhangi bir kuruluşun gerçek dünyadaki olaylarını temsil eder.
Başlangıç ve bitiş işlem ifadeleri arasında tutulan tüm veritabanı erişim işlemi türleri, DBMS'de tek bir mantıksal işlem olarak kabul edilir. İşlem sırasında veritabanı tutarsızdır. Yalnızca veritabanı işlendikten sonra durum, tutarlı bir durumdan diğerine değiştirilir.
Bu eğitimde şunları öğreneceksiniz:
- Veritabanı İşlemleri hakkında gerçekler
- İşlemlerde neden eşzamanlılığa ihtiyacınız var?
- İşlem Durumları
- ACID Özellikleri nelerdir?
- İşlem Türleri
- Program nedir?
Veritabanı İşlemleri hakkında gerçekler
- İşlem, yürütülmesi bir veri tabanının içeriğini değiştirebilen veya değiştiremeyen bir program birimidir.
- DBMS'deki işlem konsepti tek bir birim olarak yürütülür.
- Veritabanı işlemleri veritabanını güncellemez, ancak yalnızca verileri alırsa, bu tür işlemlere salt okunur işlem adı verilir.
- Başarılı bir işlem, veritabanını bir TUTARLI DURUM'dan diğerine değiştirebilir
- DBMS işlemleri atomik, tutarlı, yalıtılmış ve dayanıklı olmalıdır
- Veritabanı bir işlemden önce tutarsız bir durumda olsaydı, işlemden sonra tutarsız durumda kalırdı.
İşlemlerde neden eşzamanlılığa ihtiyacınız var?
Veritabanı, erişilen paylaşılan bir kaynaktır. Aynı anda birçok kullanıcı ve işlem tarafından kullanılır. Örneğin, bankacılık sistemi, demiryolu ve hava rezervasyon sistemleri, borsa izleme, süpermarket envanteri ve kasalar vb.
Eşzamanlı erişimi yönetmemek, aşağıdaki gibi sorunlara neden olabilir:
- Donanım hatası ve sistem çökmeleri
- Aynı işlemin eşzamanlı yürütülmesi, kilitlenme veya yavaş performans
İşlem Durumları
DBMS'deki bir işlem konseptinin çeşitli durumları aşağıda listelenmiştir:
Durum | İşlem türleri |
Aktif Durum | Yürütme süreci başladığında bir işlem aktif duruma girer. Bu durum sırasında okuma veya yazma işlemleri gerçekleştirilebilir. |
Kısmen Taahhütlü | Bir işlem, bir işlemin bitiminden sonra kısmen taahhüt edilmiş duruma geçer. |
Taahhüt Edilen Durum | İşlem duruma bağlı olduğunda, yürütmeyi zaten başarıyla tamamlamıştır. Ayrıca tüm değişiklikleri veritabanına kalıcı olarak kaydedilir. |
Başarısız Devlet | Bir işlem, kontrollerden herhangi biri başarısız olduğunda veya işlem etkin durumdayken iptal edildiğinde başarısız olarak kabul edilir. |
Feshedilmiş Devlet | Sistemden çıkan bazı işlemler yeniden başlatılamadığında işlem durumu sonlandırıldı durumuna ulaşır. |
Bu çeşitli durumlar arasında bir işlemin nasıl hareket ettiğini vurgulayan bir durum geçiş diyagramını inceleyelim.
- Bir işlem yürütmeyi bildirdiğinde, aktif hale gelir. OKUMA veya YAZMA işlemi yapabilir.
- OKUMA ve YAZMA işlemleri tamamlandığında, işlemler kısmen tamamlanmış durumda olur.
- Daha sonra, bazı kurtarma protokollerinin, bir sistem arızasının işlemdeki değişiklikleri kalıcı olarak kaydedememe ile sonuçlanmamasını sağlaması gerekir. Bu kontrol başarılı olursa, işlem taahhüt eder ve taahhüt edilen duruma girer.
- Kontrol başarısız olursa, işlem Başarısız durumuna geçer.
- İşlem aktif durumdayken iptal edilirse, başarısız duruma geçer. Yazma işlemlerinin veritabanı üzerindeki etkisini geri almak için işlem geri alınmalıdır.
- Sonlandırılmış durum, sistemden ayrılan işlemi ifade eder.
ACID Özellikleri nelerdir?
ACID Özellikleri , işlem sırasında veritabanının bütünlüğünü korumak için kullanılır. DBMS'deki ACID, A tomicite, C onsistency, I solation ve D urability anlamına gelir.
- Atomiklik: İşlem, tek bir işlem birimidir. Ya tamamen çalıştırırsınız ya da hiç yürütmezsiniz. Kısmi yürütme olamaz.
- Tutarlılık: İşlem yürütüldüğünde, bir tutarlı durumdan diğerine geçmelidir.
- İzolasyon: İşlem, diğer işlemlerden ayrı olarak yürütülmelidir (Kilit yok). Eşzamanlı işlem yürütme sırasında, eşzamanlı olarak gerçekleştirilen işlemlerin ara işlem sonuçları birbirine açık tutulmamalıdır. (Seviye 0,1,2,3)
- Dayanıklılık: · Bir işlemin başarıyla tamamlanmasından sonra, veri tabanındaki değişiklikler devam etmelidir. Sistem arızalarında bile.
DBMS'deki ACID Özelliği, örnekle:
Aşağıda, DBMS'deki ACID özelliğine bir örnek verilmiştir:
Transaction 1: Begin X=X+50, Y = Y-50 ENDTransaction 2: Begin X=1.1*X, Y=1.1*Y END
İşlem 1, X hesabından Y hesabına 50 $ aktarıyor.
İşlem 2, her hesaba% 10 faiz ödemesi yatırmaktır.
Her iki işlem birlikte gönderilirse, İşlem 1'in İşlem 2'den önce veya İşlem 2'den önce gerçekleştirileceğinin garantisi yoktur. Siparişten bağımsız olarak sonuç, işlemler arka arkaya seri bir şekilde gerçekleşiyormuş gibi olmalıdır.
İşlem Türleri
Uygulama alanlarına göre
- Dağıtılmamış ve dağıtılmış
- Telafi edici işlemler
- İşlem Zamanlaması
- Çevrimiçi ve toplu iş karşılaştırması
Eylemlere Dayalı
- İki adım
- Kısıtlı
- Eylem modeli
Yapıya Göre
- Düz veya basit işlemler: Başlangıç ve bitiş işlemleri arasında yürütülen bir dizi ilkel işlemden oluşur.
- İç içe geçmiş işlemler: Diğer işlemleri içeren bir işlem.
- İş akışı
Program nedir?
Çizelge, birden çok paralel işlemin tek bir grubunu oluşturan ve bunları birer birer yürüten bir süreçtir. Her işlemde talimatların göründüğü sırayı korumalıdır. Aynı anda iki işlem gerçekleştirilirse, bir işlemin sonucu diğerinin çıktısını etkileyebilir.
Misal
Initial Product Quantity is 10Transaction 1: Update Product Quantity to 50Transaction 2: Read Product Quantity
İşlem 2, İşlem 1'den önce gerçekleştirilirse, ürün miktarı hakkındaki güncel olmayan bilgiler okunur. Bu nedenle, programlar gereklidir.
Bir veritabanında paralel yürütme kaçınılmazdır. Ancak, eşzamanlı olarak yürütülen işlemler arasında bir denklik ilişkisi olduğunda Paralel yürütmeye izin verilir. Bu eşdeğerlik 3 türdendir.
SONUÇ EŞDEĞERLİĞİ:
İki çizelge yürütmeden sonra aynı sonucu gösteriyorsa, buna sonuç eşdeğer çizelgesi denir. Bazı değerler için aynı sonucu ve başka bir değerler kümesi için farklı sonuçlar sunabilirler. Örneğin, bir işlem ürün miktarını güncellerken, diğeri müşteri ayrıntılarını günceller.
Eşitliği Görüntüle
Denkliği Görüntüle, her iki çizelgedeki işlem benzer bir eylem gerçekleştirdiğinde ortaya çıkar. Örneğin, bir işlem ürün tablosuna ürün ayrıntılarını eklerken başka bir işlem ürün ayrıntılarını arşiv tablosuna ekler. İşlem aynı, ancak tablolar farklı.
ÇATIŞMA Eşdeğeri
Bu durumda, iki işlem aynı veri kümesini günceller / görüntüler. Yürütme sırası çıktıyı etkileyeceğinden işlemler arasında bir çelişki vardır.
Serileştirilebilirlik nedir?
Serileştirilebilirlik, çıktısı ae işleminin birbiri ardına yürüttüğü bir seri çizelgeye eşit olan eşzamanlı bir çizelge arama sürecidir. Zamanlama türüne bağlı olarak, iki tür serileştirilebilirlik vardır:
- Fikir ayrılığı
- Görünüm
Özet:
- İşlem yönetimi, bir DBMS'de bir veya daha fazla veritabanı erişim işlemini gerektiren mantıksal bir işlem birimidir.
- Bir işlem, yürütülmesi bir veritabanının içeriğini değiştirebilen veya değiştiremeyen bir program birimidir.
- Eşzamanlı erişimi yönetmemek, donanım arızası ve sistem çökmeleri gibi sorunlar yaratabilir.
- Etkin, Kısmen Taahhüt Edildi, Taahhüt Edildi, Başarısız Oldu ve Feshedildi önemli işlem durumlarıdır.
- DBMS'deki ACID Özelliklerinin tam biçimi Atomiklik, Tutarlılık, İzolasyon ve Dayanıklılıktır
- Üç DBMS işlem türü Uygulama Alanları, Eylem ve Yapı Bazlıdır.
- Çizelge, birden çok paralel işlemin tek bir grubunu oluşturan ve bunları birer birer yürüten bir süreçtir.
- Serileştirilebilirlik, çıktısı işlemlerin birbiri ardına yürütüldüğü bir seri çizelgeye eşit olan eşzamanlı bir çizelge arama sürecidir.