Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
NORMALİZASYON Öğr.Gör. Yunus Emre GÖKTEPE
VERİ TABANI NORMALİZASYON Öğr.Gör. Yunus Emre GÖKTEPE
2
Verİ Modelİnİ Normalleştİrmek
İlişkisel veri tabanı tasarlanması aşamasında verinin gereksiz tekrarını, kaybını ya da yetersizliğini önlemek için normalleştirme (normalisation) işlemi uygulanır. Normalleştirme, veri tabanı tasarımının ilk taslağını, üzerinde düzenlemeler yaparak, son haline getirme yöntemidir.
3
Normalleştİrmenİn AmaçlarI
Veri bütünlüğünü sağlamak Eğer veri gereksiz yere tekrarlanıyorsa, bu kayıtlar bunlardan habersiz olan uygulama kodları yüzünden bir süre sonra birbirinden farklı değerleri taşımaya başlayabilirler. Bu, doğruluk ve tutarlılık açısından kötü bir sonuçtur. Silme, ekleme ve güncelleme sorunları oluşabilir. Silme işlemi yaparken istenmeyen veriler de silinebilir. Bu gibi durumları düzeltmek, uygulama seviyesinde çok karmaşık bir işlem olacağından veri tabanının bakımını zorlaştırır.
4
Normalleştİrmenİn AmaçlarI
Uygulamadan bağımsızlık Normalleştirme, “ilişkisel veritabanı tasarımları, verinin içeriğine göre oluşturulmalı, uygulamaya göre değil” kavramını bir adım daha öne alır. Bu sayede yaptığımız veritabanı tasarımı, üzerinde onu kullanan uygulama değişse bile, daha tutarlı, sabit ve değişmez olarak kalacaktır.
5
Normalleştİrmenİn AmaçlarI
Performansı arttırmak Normalleştirilmiş bir veri tabanı gereksiz yere kopyalanmış veri miktarını en aza indirir. Verilerin daha az kopyasının olması; kapladığı alanını küçültür ve veri tabanı motorunun arama süresini azaltarak performansı artırır.
6
NormalleştİrmE ÖRNEĞİ
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal , Matematik Kemal Ak kak , Bilgisayar Serkan Gül sgul , 2 Aysu Demir ademir 25 Ekonomi mkal Ademir 3 Fatih Sarı Fsari 28 Hukuk Felsefe Rasim Berk rberk , Sgul Niteliklerin aldığı değerler tek ve basit olmalıdır. Bir satırdaki bir alan yalnızca bir tek bilgi içerebilir. Veri tabanı tasarımında; verileri virgül veya bir başka karakter ile ayrılıp aynı alana girilmesi ve daha sonra program içerisinde bu değerlerin ayrılması bir hatadır. Bu yöntem ilişkisel veri tabanının doğasına terstir. Yukarıdaki tabloda Telefon alanı bu kurala uymamaktadır, bu yüzden normal değildir.
7
Bİrİncİ Normal Form UygulandIğInda:
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul 2 Aysu Demir ademir 25 Ekonomi mkal 3 Fatih Sarı fsari 28 Hukuk Felsefe Rasim Berk rberk Sgul
8
Bİrİncİ Normal Form UygulandIğInda:
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul 2 Aysu Demir ademir 25 Ekonomi mkal 3 Fatih Sarı fsari 28 Hukuk Felsefe Rasim Berk rberk Sgul Birinci Normal Formun Sorunları Birinci normal formdaki bir tablo bazı alanlarda tekrarlı verilere sahiptir. Örneğimizde Ad, Soyad, Bolum_No, Ogretmen, Telefon … alanları için tekrarlı veriler vardır. Bu tekrarlar ekleme, silme ve güncelleme işlemlerinde sorunlara neden olacaktır.
9
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul 2 Aysu Demir ademir 25 Ekonomi mkal 3 Fatih Sarı fsari 28 Hukuk Felsefe Rasim Berk rberk Sgul 2 Aysu Demir ademir 25 Bilgisayar Serkan Gül Sgul Satır Ekleme Sorunu Aysu Demir isimli öğrencinin aldığı derslere bilgisayar dersini de eklemek istediğimizde, öğrenci bilgilerini ve öğretmen bilgilerini tekrar kaydetmek zorunda kalırız.
10
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul 2 Aysu Demir ademir 25 Ekonomi mkal 3 Fatih Sarı fsari 28 Hukuk Felsefe Rasim Berk rberk Sgul Satır Silme Sorunu Fatih Sarı isimli öğrenci bilgilerini veritabanından silmek istediğimizde, Rasim Berk isimli öğretmenin bilgilerini de silmek zorunda kalırız.
11
Satır Güncelleme Sorunu
Num Ad Soyad Ogr_mail Bolum_No Bolum Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep 1 Taner Akbaş takbas 21 İşletme Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul 2 Aysu Demir ademir 25 Ekonomi mkal 3 Fatih Sarı fsari 28 Hukuk Felsefe Rasim Berk rberk Sgul Satır Güncelleme Sorunu Mehmet Kal isimli öğretmenin iş telefonunu güncellemek istediğimizde hem 1. satırda hem de 4. satırda güncelleme işlemi yapmak zorunda kalırız.
12
İkİncİ Normal Form Birinci normal formdaki sorunlardan (en azından güncelleme sorunundan) kurtulmak için nitelikler arasındaki işlevsel bağımlılıktan yararlanılarak birinci normal form (1NF) tablolarının birden fazla tabloya dönüştürülmesi sonucunda ikinci normal forma (2NF) ulaşılır. Bir tablo için, anahtar olmayan her alan, birincil anahtar olarak tanımlı tüm alanlara bağlı olmak zorundadır. Bu duruma uymayan alanlar ayrı bir tabloya alınmalıdır. Ya da anahtar alanın birden fazla alandan oluştuğu tablolarda, anahtar alanlardan sadece birine bağlı veriler tabloda yer almamalı, ayrı bir tabloya taşınmalıdır. Bunun tersi de geçerlidir. Yani iki ya da daha fazla tablonun birincil anahtarı aynı olamaz. Böyle bir durum söz konusu ise, bu iki tablo tek tabloya indirilmelidir.
13
İkİncİ Normal Form UygulandIğInda:
Num Ad Soyad Ogr_mail 1 Taner Akbaş takbas 2 Aysu Demir ademir 3 Fatih Sarı fsari Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul mkal Felsefe Rasim Berk rberk Sgul
14
Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Num Ad Soyad Ogr_mail 1 Taner Akbaş takbas 2 Aysu Demir ademir 3 Fatih Sarı fsari Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul Felsefe Rasim Berk rberk !!! Hatırlatma : Birinci normal formdaki sorunlardan (en azından güncelleme sorunundan) kurtulmak için nitelikler arasındaki işlevsel bağımlılıktan yararlanılarak birinci normal form (1NF) tablolarının birden fazla tabloya dönüştürülmesi sonucunda ikinci normal forma (2NF) ulaşılır. İşlevsel bağımlılıklara dikkat etmeden tabloları parçalarsak yukarıda olduğu gibi Hangi öğrenci hangi dersleri alıyor ? Hangi bölümde okuyor? gibi soruların cevabını bulamayız.
15
İkİncİ Normal Form UygulandIğInda:
Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Num Ad Soyad Ogr_mail 1 Taner Akbaş takbas 2 Aysu Demir ademir 3 Fatih Sarı fsari Bolum_No 21 25 28 Num 1 2 3 Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul mkal Felsefe Rasim Berk rberk Sgul
16
Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Num 1 2 3 Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul mkal Felsefe Rasim Berk rberk Sgul
17
ikinci normal formun sorunları
Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Num 1 2 3 Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul mkal Felsefe Rasim Berk rberk Sgul ikinci normal formun sorunları Birinci normal formdaki güncelleme sorununu ikinci normal forma dönüştürme ile ortadan kaldırmış olsak ta, ikinci normal formda da ekleme ve silme sorunları olabilmektedir.
18
silme ve ekleme sorunları
Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Num 1 2 3 Dersler Ogretmen Hoca_ Telefon_Is Telefon_Cep Tarih Mehmet Kal Mkal Matematik Kemal Ak kak Bilgisayar Serkan Gül sgul mkal Felsefe Rasim Berk rberk Sgul silme ve ekleme sorunları Öğretmen ve ders bilgilerinin bulunduğu tabloya yeni bir ders eklemek istediğimizde var olan bilgileri tekrar eklemek ya da derslerden birini silmek istediğimizde öğretmen bilgilerini de silmek zorunda kalabiliriz.
19
Üçüncü Normal Form Bir tablo için, anahtarı olmayan bir alan, anahtarı olmayan başka hiç bir alana bağlı olamaz. Gerekli görülen tablolar nitelikler arasındaki işlevsel bağımlılıklar dikkate alınarak tekrar parçalanmalı. Gerekirse yeni alanlar eklenebilir. Her tablo için birincil anahtar belirlenir. İlişkilendirilecek tablolar için yabancı anahtar belirlenir. Bir tabloda birden fazla yabancı anahtar bulunabilir. Birincil anahtarlar tekrarlı veri içermez. Yabancı anahtarlar tekrarlı veri içerebilir.
20
Üçüncü Normal Form UygulandIğInda:
ogrenci bolum Ogrtmen_ders Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Ders_Kodu Ogretmen d1 Mehmet Kal d2 Kemal Ak d3 Serkan Gül d4 Rasim Berk hoca Ogrenci_ders Ders_bilgi Ogretmen Hoca_ Telefon_Is Telefon_Cep Mehmet Kal Mkal Kemal Ak kak Serkan Gül sgul Rasim Berk rberk Num Ders_Kodu 1 d1 d2 d3 2 3 d4 Ders_Kodu Dersler d1 Tarih d2 Matematik d3 Bilgisayar d4 Felsefe
21
Bİrİncİl anahtarlar belİrlenİr
ogrenci bolum Ogrtmen_ders Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Ders_Kodu Ogretmen d1 Mehmet Kal d2 Kemal Ak d3 Serkan Gül d4 Rasim Berk hoca Ogrenci_ders Ders_bilgi Ogretmen Hoca_ Telefon_Is Telefon_Cep Mehmet Kal Mkal Kemal Ak kak Serkan Gül sgul Rasim Berk rberk Num Ders_Kodu 1 d1 d2 d3 2 3 d4 Ders_Kodu Dersler d1 Tarih d2 Matematik d3 Bilgisayar d4 Felsefe
22
İkİncİl anahtarlar belİrlenİr
ogrenci bolum Ogrtmen_ders Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Ders_Kodu Ogretmen d1 Mehmet Kal d2 Kemal Ak d3 Serkan Gül d4 Rasim Berk hoca Ogrenci_ders Ders_bilgi Ogretmen Hoca_ Telefon_Is Telefon_Cep Mehmet Kal Mkal Kemal Ak kak Serkan Gül sgul Rasim Berk rberk Num Ders_Kodu 1 d1 d2 d3 2 3 d4 Ders_Kodu Dersler d1 Tarih d2 Matematik d3 Bilgisayar d4 Felsefe
23
İlİşkİlendİrme yapIlIr
ogrenci bolum Ogrtmen_ders Num Ad Soyad Ogr_mail Bolum_No 1 Taner Akbaş takbas 21 2 Aysu Demir ademir 25 3 Fatih Sarı fsari 28 Bolum_No Bolum 21 İşletme 25 Ekonomi 28 Hukuk Ders_Kodu Ogretmen d1 Mehmet Kal d2 Kemal Ak d3 Serkan Gül d4 Rasim Berk Ogrenci_ders hoca Num Ders_Kodu 1 d1 d2 d3 2 3 d4 Ders_bilgi Ogretmen Hoca_ Telefon_Is Telefon_Cep Mehmet Kal Mkal Kemal Ak kak Serkan Gül sgul Rasim Berk rberk Ders_Kodu Dersler d1 Tarih d2 Matematik d3 Bilgisayar d4 Felsefe
24
Sonuç Veri tekrarı yapılmamalıdır. Veri bütünlüğü sağlanmalıdır.
Boş yer mümkün olduğunca az olmalıdır. Veri bütünlüğü sağlanmalıdır. Veriler, aralarında bir ilişki tanımlanmaya müsait olmalıdır.
25
Verİ TabanI TasarIm ADIMLARI
1 Nesneler Tanımlanır: Nesne, çeşitli özellikleri bulunan bir varlıktır. Herhangi bir proje de öncelikle nesneler tanımlanır. 2 Her nesne için bir tablo oluşturulur: Her nesne için bir tablo oluşturulur ve her bir tabloya içereceği veriyi en iyi anlatan bir isim verilir. 3 Her bir tablo için bir anahtar alan seçilir: Veri tabanındaki herhangi bir veriye erişilmeden önce tabloya erişilir. Tabloda yer alacak her bir kaydı bir diğerinden ayırabilecek bir sütuna ihtiyaç duyulur.
26
Verİ TabanI TasarIm ADIMLARI
4 Nesnelerin gerekli her bir özelliği için tabloya bir sütun eklenir : Tablolara sırasıyla adını veren nesnelerin her bir özelliği için bir alan (sütun) eklenir. 5 Tekrarlayan nesne özellikleri için ek tablolar oluşturulur : Veri tekrarı olacaksa bir yerlerde hata yapılıyor demektir. Bu durumda eldeki tablonun en az bir tabloya daha ayrılması gerekiyor demektir . 6 Anahtar alana bağlı olmayan alanlar belirlenir: Bazen, anahtar alan ile aynı satırda yer aldığı halde, anahtar alan ile birebir ilişkisi olmayan bir alan yer alabilir. Bu türden alanların elimine edilip ayrı tablolara ayrılması gerekir.
27
Verİ TabanI TasarIm ADIMLARI
7 Tablolar arasındaki ilişkiler tanımlanır: Her biri bir nesneye dair özellikleri barındıran tabloların tümü göz önüne alınır ve birbirleri ile olan ilişkileri tanımlanmaya çalışılır.
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.