280 likes | 612 Views
Veritabanı Yönetim Sistemleri. Yrd.Doç.Dr. Özlem İLDAY. 03. Veritabanı Geliştirme Yaşam Döngüsü. Planlama İhtiyaçların belirlenmesi Kavramsal tasarım Mantıksal tasarım. Fiziksel tasarım Kurulum Yaşama geçirme, çalıştırma Bakım ve destek. Tablolar.
E N D
Veritabanı Yönetim Sistemleri Yrd.Doç.Dr. Özlem İLDAY 03
Veritabanı Geliştirme Yaşam Döngüsü • Planlama • İhtiyaçların belirlenmesi • Kavramsal tasarım • Mantıksal tasarım • Fiziksel tasarım • Kurulum • Yaşama geçirme, çalıştırma • Bakım ve destek
Tablolar • Veritabanı şemasında yer alan varlık ve ilişkiler birer tabloya karşılık gelirler • Bunlara ait belirtilen özellikler ise tablonun alanlarını (fields) oluşturur • Bu noktadan itibaren şematik kaba tasarımımızı tamamladığımızı düşünerek tablolar ve alanlar üzerinden devam edeceğiz...
Verilerde Anormalliği Önlemek • Tekrarlı bilgiyi gidermek • Tutarsız veriyi elimine etmek • Veriyi bileşenlerine ayırmak • Veri çelişkilerine engel olmak • Bilginin eksiksiz olmasını sağlamak • Tutarlı bir yapı oluşturmak ve korumak
Tekrarlı bilgiyi gidermek • Tekrarlı bilgi sistem performansını yavaşlatır • Boşu boşuna ekstra yer kaplar • Bakım ve güncellemeyi zorlaştırır • Sistemin tutarsız ve problemli davranmasına neden olur
Tekrarlı bilgiyi gidermek • Yapılması gereken: • Tablodaki konuya bağlı olmayan alanı kaldırmak • Bağlı olduğu konuda ayrı bir tabloda belirtmek
Tutarsız veriyi elimine etmek • Farklı kullanıcıların veri girişinde kendi tercihlerini yapmalarından kaynaklanabilir • Tuşlama esnasında yapılan yanlışlardan kaynaklanabilir • Eksik yazma • Basılan karakterin ikilemesi • Sistemin tutarsız ve problemli davranmasına neden olur • Sorguların sağlıksız sonuçlar vermesine neden olur
Tutarsız veriyi elimine etmek • Yapılması gereken: • Tekrarlı giriş gerektiren veriler için (burada: Üreticiler) ayrı bir tablo oluşturarak • Kendi tablosuna bir ID ile tek kez giriş yapmak • Bu veriyi ilişkin tablolara tanımlanan ID’si ile taşımak • Kullanıcı listeden seçtiğinde VTYS geri kalanı yapacaktır
Veriyi Bileşenlerine Ayırmak • Veritabanını gelecekte ihtiyaç duyulabilecek sorgulamalara karşı daha esnek ve kullanışlı yapmak için gerekir • Veriyi mümkün olan mantıklı parçalara bölmek ilk bakışta sistemi daha karmaşıklaştırıyormuş gibi görünse de durum bunun tam tersidir
Veriyi Bileşenlerine Ayırmak • Eğer: • Müşterileri bulundukları şehirlere göre listelemek istersem, bu haliyle epey zor olacaktır.
Veri Çelişkilerine Engel Olmak • En sık yapılan hatalardan biri hesaplanabilecek verilerin tabloya ayrı bir alan olarak eklenmesidir • Bundaki sakıncalı durum, değişiklik olduğunda bu alan bilgisinin de güncellenmesi gerekliliğidir • Güncellemeler uygun şekilde yapılmazsa veritabanında tutarsızlıklar oluşacaktır
Veri Çelişkilerine Engel Olmak Çözüm: Hiç koymamak
Veri Çelişkilerine Engel Olmak • Metin birleştirme ve parçalama işlemleri de bilgisayara yaptırılabilecek hesaplamalar olduğundan ayrıca bir alanda saklanmasına gerek yoktur
Bilginin Eksiksiz Olmasını Sağlamak • Bilginin eksiksiz olmasını sağlamak için veritabanındaki tanımlı tablolarda girilmesi zorunlu olan ve olmayan alanların VTYS içinde belirtilmesi gerekmektedir • Örneğin • fatura için ürün miktarı, ürün için birim fiyat, müşteri için fatura adresi zorunlu alan iken, • müşteri için teslimat adresi fatura adresi ile aynı olması durumunda boş bırakılabilecek bir alandır. • Aksi takdirde boş bırakılmaması gereken alanlar kullanıcı tarafından unutulursa veritabanında istenmeyen durumlar oluşacaktır
Tutarlı Bir Veritabanı Yapısı Oluşturmak ve Korumak • Veritabanı tabloları iyi düşünülmeli ve içereceği alanlar ihtiyacı karşılarken performansı düşürmemelidir • Yeni ve önceden hesaba katılmamış bir durum bizi veritabanı yapısını değiştirmeye zorlayacaktır. Böylesi bir durum epeyce masraflı değişiklere yol açabilir. • Olası tüm durumlar hesaba katılmalıdır. Yapısal olarak sağlam ve tutarlı planlanmış bir veritabanını işletmek ve korumak daha kolay ve daha az masraflıdır
Tutarlı Bir Veritabanı Yapısı Oluşturmak ve Korumak • Birden fazla bilgi içeren alanlarlardan kaçınılmalıdır
Tutarlı Bir Veritabanı Yapısı Oluşturmak ve Korumak • Birden fazla bilgi içeren alanlarlardan kaçınılmalıdır
Tutarlı Bir Veritabanı Yapısı Oluşturmak ve Korumak • Doğru çözüm:
Veritabanı Geliştirme Yaşam Döngüsü • Planlama • İhtiyaçların belirlenmesi • Kavramsal tasarım • Mantıksal tasarım • Fiziksel tasarım • Kurulum • Yaşama geçirme, çalıştırma • Bakım ve destek