🎓 Bounlu tarafından hazırlandı
46.491 görüntülenme

Veritabanı Tasarımı ve Normalizasyon Nedir?

Veritabanı tasarımı, verilerin yapılandırılması ve saklanması için mantıksal ve fiziksel modellerin oluşturulması sürecidir. Normalizasyon ise bu tasarımın önemli bir parçasıdır ve veri tekrarını azaltarak veri bütünlüğünü sağlamayı hedefler.

Kısa cevap

Veritabanı tasarımı, verilerin etkin bir şekilde saklanması, erişilmesi ve yönetilmesi için bir plan oluşturma sürecidir. Normalizasyon ise bu tasarımda veri tekrarını en aza indirmek ve bağımlılıkları doğru bir şekilde kurmak için uygulanan bir tekniktir.

01

Adım adım çözümlü örnekler

Basit bir müşteri sipariş veritabanı düşünün. Müşteri bilgilerinin (ad, soyad, adres) her siparişte tekrar etmesi veri tekrarına yol açar. Normalizasyon ile müşteri bilgileri ayrı bir tabloda tutulabilir ve sipariş tablosundan müşteri ID ile ilişkilendirilebilir.

1. Sipariş tablosunda müşteri adı, soyadı, adresi gibi bilgiler tekrar ediyor. 2. Müşteri tablosu oluşturularak müşteri ID, ad, soyad, adres bilgileri buraya taşınır. 3. Sipariş tablosunda müşteri bilgileri yerine sadece müşteri ID tutulur. 4. Sipariş tablosu ve Müşteri tablosu müşteri ID üzerinden ilişkilendirilir.

Bir ürün tablosunda, aynı ürün için farklı siparişlerde tekrar eden ürün adı ve fiyat bilgileri veri tekrarına örnektir. Normalizasyon ile ürün bilgileri ayrı bir tabloda tutulabilir ve sipariş detayları tablosundan ürün ID ile ilişkilendirilebilir.

1. Sipariş detayları tablosunda ürün adı ve fiyat bilgileri tekrar ediyor. 2. Ürün tablosu oluşturularak ürün ID, ürün adı, fiyat bilgileri buraya taşınır. 3. Sipariş detayları tablosunda ürün bilgileri yerine sadece ürün ID tutulur. 4. Sipariş detayları tablosu ve Ürün tablosu ürün ID üzerinden ilişkilendirilir.
02

Bilgi kartları

03

Mini test

S1.Normalizasyonun temel faydası nedir?

Doğru cevap: C. Normalizasyonun ana amacı, veri tekrarını ortadan kaldırarak ve veri tutarlılığını sağlayarak veritabanının daha verimli ve yönetilebilir olmasını sağlamaktır.

S2.Bir tablodaki her sütunun yalnızca atomik (bölünemez) değerler içermesi hangi normal formun gerekliliğidir?

Doğru cevap: C. Birinci Normal Form (1NF), bir tablodaki her sütunun atomik değerler içermesini ve tekrar eden grupların bulunmamasını şart koşar.

S3.Geçişli bağımlılıkları (transitive dependencies) gidermeyi amaçlayan normal form hangisidir?

Doğru cevap: D. Üçüncü Normal Form (3NF), anahtar olmayan bir özniteliğin başka bir anahtar olmayan özniteliği belirlemesi durumunu (geçişli bağımlılık) ortadan kaldırır.
📄Bu konuyu PDF çalışma kağıdı olarak indirKonu özeti + 10 soru + cevap anahtarı — sınıfta paylaş, yazdır.
04

Sık yapılan hatalar

Veritabanı tasarımında normalizasyon gereksizdir, çünkü verileri olduğu gibi saklamak daha kolaydır.Doğrusu: Veritabanı tasarımında normalizasyon, veri tekrarını azaltarak, veri bütünlüğünü sağlayarak ve sorgu performansını artırarak veritabanının etkinliğini ve güvenilirliğini artırır.

Herhangi bir normal formu uygulamak veritabanını her zaman daha hızlı hale getirir.Doğrusu: Normalizasyon genellikle veri tekrarını azaltarak veri bütünlüğünü artırır ancak aşırı normalizasyon (çok fazla tablo ve JOIN işlemi gerektirmesi) sorgu performansını düşürebilir. Performans ve normalizasyon arasında bir denge kurulmalıdır.

05

Sıkça sorulan sorular

Normalizasyonun dezavantajları nelerdir?

Aşırı normalizasyon, çok sayıda tablo ve karmaşık sorgular (JOIN işlemleri) gerektirebilir, bu da sorgu performansını olumsuz etkileyebilir. Ayrıca, veritabanı şemasını anlamak daha zor hale gelebilir.

Denormalizasyon ne anlama gelir ve ne zaman kullanılır?

Denormalizasyon, normalizasyonun tersine, performansı artırmak amacıyla veri tekrarına izin verme işlemidir. Genellikle raporlama veya veri ambarı gibi okuma ağırlıklı sistemlerde, karmaşık JOIN işlemlerinden kaçınmak için kullanılır.

Veritabanı tasarımında hangi normal form hedeflenmelidir?

Genellikle 3NF (Üçüncü Normal Form) hedeflenir. Daha yüksek normal formlar (BCNF, 4NF, 5NF) daha nadir kullanılır ve spesifik durumlar için geçerlidir. 3NF, çoğu uygulama için iyi bir denge sunar.

İlgili konular