Bir şema, verilerin bir veritabanında nasıl organize edildiğini tanımlar. Tabloları, sütunları, veri tiplerini, kısıtlamaları ve ilişkileri belirtir. Şema, plan şablonudur. Veritabanı ise binadır. İyi tasarlanmış bir şema, sorguları kolaylaştırır ve verilerin tutarlı olmasını sağlar. Kötü tasarlanmış bir şema ise daha sonra düzeltilmesi zor sorunlar yaratır. Veriler mevcut olduktan sonra şemayı değiştirmek, uygulamaları bozabilecek ve verileri bozabilecek geçişler gerektirir.
Şemalar farklı seviyelerde bulunur. Kavramsal şema, iş varlıklarını ve ilişkilerini tanımlar. Mantıksal şema, tablolar, sütunlar ve anahtarlar gibi ayrıntıları ekler. Fiziksel şema ise depolamayı belirtir: dosya grupları, indeksler ve bölümler. Her seviye farklı bir kitleye hizmet eder. İş analistleri kavramsal şemayı anlar. Geliştiriciler ise mantıksal ve fiziksel şemalarla çalışır. Bazı veritabanlarında şema sıkı bir şekilde uygulanır. Diğerlerinde ise esnektir. Belge tabanlı veritabanlarında genellikle hiç zorunlu bir şema yoktur. Uygulama yapıyı tanımlar. Bu esneklik geliştirmeyi hızlandırır ancak sorumluluğu uygulamaya kaydırır. Şema zorunluluğu olmadan, hatalı veriler kolayca girer. Veritabanı, uygulamanın gönderdiği her şeyi kabul eder. Şema bir sözleşmedir. Verinin nasıl görüneceğini ve hangi kurallara uyduğunu söyler. Sözleşmeyi bozmak, üzerine kurulu her şeyi bozar.
Şema bileşenleri
- Tablolar — veri modelindeki varlıklar
- Sütunlar — veri türlerine sahip nitelikler
- Anahtarlar — birincil ve yabancı anahtarlar
- Kısıtlamalar — geçerli veriler için kurallar
- İndeksler — sorgu performansı için yapılar
- Görünümler — kaydedilmiş sorgular tablolar halinde sunulur.
Şema bir plandır. Şema olmadan veritabanı, hiçbir yapısı olmayan bir veri yığınıdır.
Comments
No comments yet. Be the first to share a thought.
Leave a comment