Birinin Oracle Veritabanları ile ilgili bu 3 terim arasındaki farklar hakkındaki anlayışımı doğrulayıp doğrulayamayacağını merak ediyordum.
Birçok kaynak bu terimleri karıştırır ve ayrıntılı olarak açıklamaz, bu yüzden bilgi bulmak biraz zor oldu.
Topladıklarımdan:
- Taahhüt ve hızlı taahhüt aynı şeydir, tüm taahhütler hızlı taahhütlerdir.
- Bir hızlı işlem, esasen yalnızca geri alma / geri alma segmenti başlığının işlem tablosundaki bayrağı, işlemin yapıldığını belirtmek için günceller. Bununla birlikte, gerçek blok tekrar gözden geçirilmez, yani veri bloğunun başlığında bulunan ilgili işlem listesindeki (ITL) geri alma bayt adresi (UBA) hala karşılık gelen geri alma segmentinin işlem tablosuna işaret eder. Ayrıca, karşılık gelen satırların kilit baytları serbest bırakılmaz ve ITL'deki kilit sayısı değişmez (satırlar hala kilitlidir).
- Bir cleanout taahhüt olarak, blok edilir dönülmüş ve ITL taahhüt SCN ile güncellenir. Bununla birlikte, ITL'deki kilit sayısı ve her bir satırda depolanan kilit baytı hala güncellenmemektedir (satır hala hızlı taahhütte olduğu gibi kilitli), blok değiştirilse bile bu yeniden yapmaz.
- Normal olarak işlenen (== hızlı işlenen) bloklar, bir sonraki dokunuşlarında Gecikmeli Blok Temizleme işlemine tabi tutulur (ve yineleme oluşturur).
- Taahhüt temizliği uygulanan bloklar, bir sonraki dokunuşlarında (ve yineleme oluşturduklarında) Gecikmeli Günlük Bloğu Temizleme işlemine tabi tutulur.
Umarım birisi bu noktaları doğrulayabilir! Teşekkürler!