Veri Tabanı Modelleme
Veri Modelleme
- Veri modeli; bir bilgi sisteminde kullanılacak verilerin farklı seviyelerde (kavramsal, mantıksal ve fiziksel) tanımlanmasına imkân sağlayan modeldir.
- Veri modelleme dört aşamada meydana gelir:
–Gereksinimlerin belirlenmesi
–Kavramsal model
–Mantıksal (ilişkisel model)
–Fiziksel model
Gereksinimlerin Belirlenmesi
- Gereksinim belirleme çalışmasının amacı;
–Geliştirilecek sistemin fonksiyonlarını ortaya çıkarmak,
–Sistemde tutulması gereken verileri belirlemek,
–Veriler arasındaki bağlantıları tanımlamak ve
–İhtiyaç duyulan kullanıcı işlemlerinin ortaya çıkarılmasıdır.
- Gereksinim belirleme sonrasında;
–İşleve dayalı gereksinimler ve
–Veriye dayalı gereksinimler ortaya çıkarılır.
Veriye Dayalı Gereksinimler
- Nitelikler
- Nitelik grupları (varlıklar)
- Verilere ait kurallar (kısıtlar)
- Veri işlemleri belirlenir.
Kavramsal Model
- Gereksinimler toplanıp analiz edildikten sonra;
–Birbiriyle ilişkili veriler varlıklar şeklinde gruplanır ve
–Varlıklar arasında bağıntılar kurulur
- Bu çalışmalar grafiksel olarak varlık ilişki diyagramları (entity relationship diagrams) ile gösterilir.
- Kavramsal model hem kullanıcılara hem de yazılım geliştiricilere hitap eden ortak bir modeldir.
Varlık İlişki Modeli
- Varlık-İlişki (ER) Modeli, gerçek dünya varlıkları ve onlar arasındaki ilişkilere dayalı olarak sunulur.
- ER Modeli; varlık, ilişki, nitelikler ve kısıtlamalar gibi kavramlarla modellemeye imkan sağlar.
- ER Modeli bir veri tabanının kavramsal tasarımı için kullanılır.
- ER Modelinin temelinde şunlar bulunur –
–Varlıklar ve nitelikleri,
–Varlıklar arasındaki ilişkiler.
Mantıksal Model (ilişkisel model)
- Kavramsal modelin ilişkisel modele dönüşümünü mantıksal model sağlar.
- Mantıksal model çalışması sonunda;
–Veri tabanında hangi tabloların bulunacağı,
–Bu tablolarda hangi bilgilerin tutulacağı ve
–Tablolar arası bağıntıların neler olacağı belirlenir. (ilişki derecesi ve türü)
İlişkisel Model
- DBMS’deki en popüler veri modeli, İlişkisel Modeldir. Diğerlerinden daha bilimsel bir modeldir. Bu model, birinci dereceden yüklem mantığına dayanır ve bir tabloyu bir n-ary ilişkisi olarak tanımlar.
- Bu modelin ana özellikleri –
–Veriler ilişki adı verilen tablolarda saklanır.
–İlişkiler normalleştirilebilir.
–Normalize ilişkilerde, kaydedilen değerler atomik değerlerdir.
–Bir ilişkideki her satır benzersiz bir değer içerir.
–Bir ilişkideki her sütun aynı türdeki değerleri içerir.
Fiziksel Model
- Mantıksal modelde ayrıntıları ortaya çıkan tabloların SQL imkanları ile bilgisayar ortamında oluşturulmasıdır.
- Verilerin nasıl oluşturulacağı ve nasıl indeksleneceği ile ilgilidir.
- Fiziksel model verilerin bilgisayar ortamında nasıl organize edildiğine dair bilgiler de içerir.
OLTP (OnLine Transaction Processing)
- Veritabanı sistemleri genellikle çevrimiçi hareket işleme (OLTP) olanaklarına uygun olarak çalışan sistemlerdir.
- Veri ekleme, düzeltme ve veri silme gibi her an değişim gösteren bir yapıda çalışan veritabanları OLTP veritabanları olarak bilinir.
Veri Modeli Operasyonları
- Veri modeli operasyonları veritabanından veri çekme ve veriler üzerinde güncellemeler yapmayı sağlayan işlemlerdir.
- Bu işlemler;
–yeni veri girişi (INSERT),
–var olan verinin güncellenmesi (UPDATE),
–verinin silinmesi (DELETE) ve
–verinin sorgulanması (RETRIEVE) olarak bilinir.
Veritabanı Anlık Durumu
- Veri tabanında herhangi bir anda tablolarda bulunan verilere veri tabanı anlık durumu adı verilir.
- Veri tabanı yedeklemesi yapıldığında elde edilen Database Instant sadece yedeklemenin yapıldığı ana aittir.
Tablo
- İlişkisel veri tabanlarında aynı veri yapısına sahip verilerin saklandığı yapılara tablo (table) adı verilir.
- Tablolar ilişkisel veri tabanlarında ham veri tutarlar.
Kayıt ve Nitelik
- Tablolarda yer alan her bir satıra kayıt (record, row, tuple) denir.
- Bir kaydı tanımlayan her bir veri alanına nitelik adı verilir. Nitelik değerleri sütunlarda yer alır. Niteliklerin değer aldığı veri havuzlarına domain adı verilir.
Anahtar Nitelik ve Türleri
- Anahtar nitelik: Bir tabloda bir kaydı diğerlerinden eşsiz olarak ayıran niteliğe anahtar nitelik adı verilir.
–Birleşik anahtar nitelik: Bir tabloda kayıtları birbirinden ayırmada tek bir nitelik yeterli gelmediğinde birden fazla niteliği anahtar olarak kullanmak gerekir. Birden fazla nitelikten meydana gelen anahtara birleşik anahtar nitelik adı verilir.
–Süper anahtar nitelik: Bir tabloya ait kayıtların tek olarak tanımlanmasını sağlayan her bir nitelik süper anahtar olarak bilinir. Bir tabloda kimlik numarası da anahtar olabilir, öğrenci numarası da. Bu ikisine de süper anahtar adını vereceğiz.
–Aday anahtar nitelik: Bir tabloda anahtar olabilecek her niteliğe aday anahtar nitelik adı verilir.
–Birincil anahtar nitelik: Anahtar niteliklerden seçileni birincil anahtar nitelik adı verilir.
–Yabancı anahtar nitelik: İki tablo ilişkilendirildiğinde ana tablodan diğer tabloya bağ kurmada kullanılan niteliğe yabancı anahtar nitelik adı verilir. Yabancı anahtar nitelik yabancı tablonun birincil anahtarı olarak da görülebilir.
Veri Tabanı Şeması
- Bir veri tabanı şeması, tüm veri tabanının mantıksal görünümünü temsil eden iskelet yapısıdır.
–Verilerin nasıl organize edildiğini ve aralarındaki ilişkileri tanımlar. Verilere uygulanacak tüm kısıtlamaları formüle eder.
- Bir veri tabanı şeması varlıklarını ve aralarındaki ilişkiyi tanımlar. Şema diyagramları ile betimlenen veri tabanının tanımlayıcı bir detayını içerir.
- Bir veri tabanı şeması, genel olarak iki kategoriye ayrılabilir –
- Fiziksel Veri Tabanı Şeması – Bu şema, verilerin gerçek depolanmasıyla ve dosyalar, indeksler vb. depolama biçimleriyle ilgilidir. Verilerin ikincil bir depolama biriminde nasıl depolanacağını tanımlar.
- Mantıksal Veri tabanı Şeması – Bu şema, saklanan verilere uygulanması gereken tüm mantıksal kısıtlamaları tanımlar. Tabloları, görünümleri ve bütünlük kısıtlarını içerir.