VERİTABANI ORGANİZASYONU
 Veri nedir?
Veri(data) ilişkide olduğumuz(ilgimiz olan) dünyanın
durumlarıdır. O gün mağazaya kaç kişi geldiği , dışarıda
havanın sıcaklığı , boyunuzun uzunluğu , göz renginiz veya
son okuduğunuz kitabın sayfa sayısı birer veridir.
Veri kavramını dünyanın betimlemesi olarak düşünebiliriz.
Duyu organlarımız ile verileri algılar ve beynimizle işleriz.
 Bilgi nedir?
Bilgi (knowledge) verilerin işlenmesiyle elde edilir.
Örnek:
“Bugün dışarıda hava sıcaklığı 25 C dir.”
İnsanlar bilgiyi oluşturabilmek için uzunca bir süre
verilerden yararlanırlar. Verilerin anlamlı ve kullanılabilir
olmaları için tanımlı bir çerçeve içine alınmaları ve
işlenmeleri gerekir.
 Veritabanı nedir?
Birbiri ile ilişkili verilerin belirli bir düzen içerisinde bir araya
getirildiği ve depolandığı yapılara veritabanı(database)
diyoruz.
 Veritabanı Yönetim Sistemi(VTYS)
Database Management System(DBMS)
Veritanı oluşturmak , verileri saklamak ve verileri işlemek
üzere geliştirilmiş bilgisayar yazılımlarına VTYS denir.
VTYS’lerden önce veriler klasik dosyalarda saklanıyordu.
VTYS’lerin üstünlükleri:
- Veri tekrarının önlenmesi.
- Verilerin tutarlı olmasını sağlamak
- Aynı aydaki erişimlerde tutarsızlıkların ortaya çıkmasını
önlemek.
- Verilerin güvenliğini sağlamak.
Örnek VTYS yazılımları:
MS-Access , MS-SQL Server , My-Sql , PostgreSQL ,
Oracle , IBM – DB2 , IBM-Informix , Paradox
İlişkisel Veritabanı Nedir?
Günümüz veritabanı sistemleri ilişkisel modeli kullanır.
İlişkisel Model -> Releational Model
Bu modelin prensibi böl-parçala-yönet tir.
Bu modelde veriler birden çok tabloda saklanır. Bu tablolar
ortak alanlar vasıtasıyla ilişkilendirilir.
İlişki Türleri
a) Bire-Bir İlişki ( 1 - 1 )
b) Bire-Çok İlişki ( 1 – oo )
c) Çoka – Çok İlişki ( oo – oo )
Bire – Bir İlişki:
Bir tablodaki bir kayda karşılık diğer tabloda bir kayıt varsa bu
tablolar arasında bire-bir ilişki söz konusudur.
(*) Bire-Çok İlişki:
Bir tablodaki bir kayda karşılık diğer tabloda çok sayıda kayıt
varsa bu tablolar arasında bire-çok ilişki söz konusudur.
(*) Çoka-Çok İlişki:
Bir tablodaki çok sayıda kayda karşılık diğer tabloda çok sayıda
kayıt varsa bu tablolar arasında çoka-çok ilişki söz konusudur.
Kısıtlamalar(Constraints)
a) Anahtar Kısıtlamaları
- Birincil Anahtar (Primary Key) kısıtlaması
- Yabancı Anahtar (Foreign Key) kısıtlaması
b) Veri Kısıtlamaları
- Not Null kısıtlaması
- Default kısıtlaması
- Unique kısıtlaması
- Check kısıtlaması
Veritabanı Tasarım Adımları
1) Nesneler Tanımlanır: Nesne, çeşitli özellikleri bulunan bir
varlıktır. Herhangi bir proje de öncelikle nesneler
tanımlanır.
Ör) Birkaç örnek proje için nesneleri verecek olursak,
Kütüphane sistemi: Kitap, üyeler, türler, ödünç hareketleri
E-ticaret sistemi: Ürünler, müşteriler, siparişler, teslimat,
fatura bilgileri, üreticiler, tedarikçiler, dağıtıcılar...
Futbol Ligi: Takımlar, sahalar, oyuncular, fikstür, hakemler,
antrenörler
Okul Sistemi: Öğrenciler, öğretmenler, dersler, derslikler
Sözlük: kelimeler, anlamlar, diller
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.
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 . (Normalizasyon kurallarının
devreye girdiği aşamadır)
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.
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.
NORMALİZASYON
Amaç : Veri tekrarını ve bilgilerin kaybını önlemek
Toplam 5 tane normalizasyon kuralı vardır.
İlk 3 kural pratikte kolay uygulanabilir kurallardır. Diğerleri ise
daha çok kuramsal olarak kalır ve uygulanması zordur.
Normalizasyon uygulanmadan önce bütün tablolar ;
Normal Olmayan Biçim (Unnormalized Form – UNF)’ de kabul
edilir.
Kurallar uygulanıp tablolar dönüştürüldükçe;
Normal Biçime dönüşür. (Normal Form - NF)
UNF ->
1.NF ->
2.NF
->
3.NF ->
4.NF -> 5.NF
Veri Fazlalığı:
a) Mutlak Veri Fazlalığı
i) Birleşik Özellik : Birden çok verinin birleştirilerek bir
alanda bulunması.
ii) Tekrarlayan Grup: Tablolarda aynı tipteki veriyi içerecek
alanların bulunması.
iii) Çok Değerli Özellik: Aynı alanda birden fazla verinin
virgülle ayrılarak kaydedilmesi.
b) Gereksiz Tekrar (Veri Artıklığı):
Bazı durumlarda aynı veri çeşidi birden fazla kayıtta yer
alabilmekte ve bu da sistemin yavaşlamasına sebep
olmaktadır. Bilgilerin yinelenmesi, gereksiz alan kaplar, hata
ve tutarsızlıklara sebep olabilir.
Tablo-1:
Tablo-2:
(Veri artıklığı içeren tablo örnekleri)
Normalizasyon Aşamaları ( ilk 3 aşama)
1.Normalizayon
İşlemleri
2.Normalizayon
İşlemleri
3.Normalizayon
İşlemleri
Fonksiyonel Bağımlılıklar:
Fonksiyonel Bağımlık Nedir?
R bir ilişki şeması, X ve Y nitelikleri de R’nin iki alt kümesi olsun.
Eğer X nitelikler kümesinin değerleri Y nitelikler kümesinin
değerlerini belirliyorsa Y , X’e fonksiyonel bağımlı’dır denir.
R ilişkisinin Y niteliği, R’nin X niteliğine ikişkisel olarak bağımlı ve
X’in her bir değeri Y’nin bir değerine karşılık geliyorsa
fonksiyonel bağımlılıktan söz edilir.
a) Kısmı bağımlık: Anahtar olmayan alan, birleşik anahtarın
sadece bir kısmı ile belirlenebiliyorsa, buna kısmi
bağımlılıkdenir.
İsim alanını Müşteri_Id belirlemektedir.
b) Dolaylı bağımlılık (Geçişken Bağımlılık):
A,B,C niteliklilerini içeren 3 nitelikli bir tabloda:
A, B, ve C için
A => B ve B => C fonksiyonel bağımlılıkları
bulunmakta ise,
C dolaylı olarak A’ya bağımlıdır.
Normalizasyon İşlemlerini Adım-Adım Yapalım:
UNF -> 1.Normalizasyon Kuralları -> 1NF
1NF -> 2.Normalizayon Kuralları -> 2NF
2NF -> 3.Normalizayon Kuralları -> 3NF
Download

VERİTABANI ORGANİZASYONU • Veri nedir? Veri(data) ilişkide