8 Ağustos 2007 Çarşamba

İçiçe Tablolarla Varraylerin Farkları

Kullanılacak öğelerin (elements) sayısı önceden biliniyorsa ve bu öğelere genelde sırayla ulaşılacak ise varray kullanmak yerinde olacaktır. Veritabanında tutulurken varrayler sıralarını ve indislerini korurlar.

Her bir varray tek bir nesne olarak tutulur; 4 KB'tan daha küçükse tablo içinde, 4 KB'tan daha büyükse tablo dışında ama yine aynı tabloalanında (tablespace) depolanır. Varrayin bütün öğelerine aynı anda erişilmelidir veya bunlar aynı anda güncellenmelidir örneğin bütün öğeler üzerinde tek seferinde bir işlem yapılması gibi. Bu durum çok sayıda öğenin depolanmasında ve bunlara erişimde kullanışlı değildir.

İçiçe tablolar (nested tables) seyrek (sparse) olabilir; en sondaki öğeyi kaldırmak yerine herhangi bir öğe silinebilir. İçiçe tablo bir depolama tablosunda sırasız (out-of-line) olarak depolanır, bu depolama tablosu içiçe tablonun kendisiyle ilişkilendirilmiştir ve sistem tarafından oluşturulmuştur.

Bu durum topluluğun (collection) sadece bazı öğelerini etkileyen sorgu ve güncellemelerde içiçe tabloları kullanışlı kılar. Bir içiçe tablo veritabanında depolanırken sırası (order) ve indisler (subscripts) korunmaz, depolama ve erişimler sonrasında bu sıra ve indisler değişebilir.

Hiç yorum yok: