Veritabanı sistemleri karmaşık veri yapılarından oluşur. Sistemi veri alımı açısından verimli kılmak ve kullanıcıların kullanılabilirliği açısından karmaşıklığı azaltmak için geliştiriciler soyutlamayı kullanır, yani alakasız ayrıntıları kullanıcılardan gizler. Bu yaklaşım veritabanı tasarımını basitleştirir.
Bir DBMS'de Soyutlama Düzeyi
Temel olarak 3 veri soyutlama düzeyi vardır:
- Fiziksel veya Dahili Seviye
- Mantıksal veya Kavramsal Düzey
- Görünüm veya Dış Düzey
Fiziksel veya Dahili Seviye
Bu, veri soyutlamanın en düşük düzeyidir. Verilerin gerçekte bellekte nasıl saklandığını bize anlatır. Sıralı veya rastgele erişim gibi erişim yöntemleri ve B+ ağaçları ve karma gibi dosya düzenleme yöntemleri de aynı amaçla kullanılır. Belleğin kullanılabilirlik boyutu ve kayıtların kaç kere yazılacağı veritabanını tasarlarken bilmemiz gereken faktörlerdir.
Bir çalışanın ayrıntılarını saklamamız gerektiğini varsayalım. Bu amaçlar için kullanılan depolama blokları ve bellek miktarı kullanıcıdan gizlenir.
Mantıksal veya Kavramsal Düzey
Bu seviye aslında veritabanında tablolar halinde saklanan bilgileri içerir. Ayrıca veri varlıkları arasındaki ilişkileri de nispeten basit yapılarda saklar. Bu seviyede, kullanıcıya görünüm seviyesinde sunulan bilgiler bilinmemektedir.
Bir çalışanın çeşitli özelliklerini ve ilişkilerini saklayabiliriz; yönetici ile de saklanabilir.
Dolayısıyla mantıksal düzey, az sayıdaki nispeten basit yapılar açısından tüm veri tabanını tanımlar. Basit yapıların mantıksal düzeyde uygulanması karmaşık fiziksel düzeydeki yapıları içerebilmesine rağmen, mantıksal düzeydeki kullanıcının bu karmaşıklığın farkında olmasına gerek yoktur. Buna fiziksel veri bağımsızlığı denir. Veritabanında hangi bilgilerin tutulacağına karar vermesi gereken veritabanı yöneticileri, mantıksal soyutlama düzeyini kullanır.
Görünüm veya Dış Düzey
Bu soyutlamanın en yüksek seviyesidir. Gerçek veritabanının yalnızca bir kısmı kullanıcılar tarafından görüntülenir. Bu seviye, veritabanının bireysel kullanıcı tarafından erişilebilirliğini kolaylaştırmak için mevcuttur. Kullanıcılar verileri satırlar ve sütunlar halinde görüntüler. Verileri depolamak için tablolar ve ilişkiler kullanılır. Aynı veritabanının birden çok görünümü mevcut olabilir. Kullanıcılar yalnızca verileri görüntüleyebilir ve veritabanı depolama alanıyla etkileşime girebilir ve uygulama ayrıntıları onlardan gizlenir. Mantıksal düzey daha basit yapılar kullansa da, büyük bir veritabanında depolanan bilgilerin çeşitliliği nedeniyle karmaşıklık devam etmektedir. Veritabanı sisteminin birçok kullanıcısının tüm bu bilgilere ihtiyacı yoktur; bunun yerine veritabanının yalnızca bir kısmına erişmeleri gerekir. Soyutlamanın görünüm düzeyi, sistemle etkileşimlerini basitleştirmek için mevcuttur
Örnek: Müşteri verilerinin saklanması durumunda
yeni satır python
- Fiziksel seviye - depolama bloğunu içerecektir (bytesGBTBetc)
- Mantıksal seviye - Verilerin alanlarını ve niteliklerini içerecektir.
- Seviyeyi görüntüle - ile çalışır CLI veya GUI veritabanı erişimi
Veri soyutlamanın temel amacı, veritabanı değiştirildiğinde veya değiştirildiğinde gereken zamandan ve maliyetten tasarruf etmek için veri bağımsızlığını sağlamaktır.
Veri Bağımsızlığı
Veri Bağımsızlığı temel olarak, bir sonraki düzeyde şemayı değiştirmenize gerek kalmadan sistemin bir düzeyindeki veritabanı şemasını değiştirmenize yardımcı olan bir DBMS özelliği olarak tanımlanır. verileri, onu kullanan tüm programlardan ayrı tutmaya yardımcı olur.
Bu soyutlama düzeylerinden kaynaklanan iki düzeyde veri bağımsızlığımız var:
- Fizik Ben cal düzeyinde veri bağımsızlığı
- Mantıksal düzeyde veri bağımsızlığı
Fiziksel Düzeyde Veri Bağımsızlığı
Optimizasyon amacıyla yapılan kavramsal veya mantıksal şemada herhangi bir değişiklik yapmadan fiziksel şemayı değiştirebilme özelliğini ifade eder; Kavramsal yapısı veritabanı veritabanı sistemi sunucusunun depolama boyutundaki herhangi bir değişiklikten etkilenmez. Sıralı dosyalardan rastgele erişimli dosyalara geçiş böyle bir örnektir. Fiziksel yapıdaki bu değişiklikler veya modifikasyonlar şunları içerebilir:
- Yeni depolama aygıtlarının kullanılması.
- Depolama için kullanılan veri yapılarını değiştirmek.
- İndeksleri değiştirmek veya alternatif dosya düzenleme tekniklerini kullanmak vb.
Mantıksal Düzeyde Veri Bağımsızlığı
Harici şemayı veya uygulama programını etkilemeden mantıksal şemayı değiştirebilme özelliğini ifade eder. Verilerin kullanıcı görünümü, verilerin kavramsal görünümünde yapılan herhangi bir değişiklikten etkilenmeyecektir. Bu değişiklikler, tablo yapıları varlıklarını veya mantıksal şema vb. ile ilişkileri değiştiren niteliklerin eklenmesini veya silinmesini içerebilir.