Veritabanı Normalleştirme Temelleri

Veritabanınızı Normalleştirme

Bir süredir veri tabanları ile çalışıyorsanız, normalleşme terimini duyma şansınız oldu. Belki birisi size "Bu veritabanı normalleştirilmiş mi?" Diye sordu. veya " BCNF'de mi?" Normalleşme genellikle sadece akademisyenlerin zamanının olduğu bir lüks olarak bir kenara fırlatılır. Bununla birlikte, normalleştirme ilkelerini bilmek ve bunları günlük veritabanı tasarım görevlerine uygulamak gerçekten o kadar da karmaşık değildir ve DBMS'nizin performansını önemli ölçüde artırabilir.

Bu yazıda, normalleşme kavramını tanıtacağız ve en yaygın normal biçimlere kısa bir bakacağız.

Normalizasyon Nedir?

Normalleştirme, bir veritabanında verileri verimli bir şekilde organize etme işlemidir. Normalizasyon sürecinin iki hedefi vardır: yedekli verilerin ortadan kaldırılması (örneğin, aynı verilerin birden fazla tabloda saklanması) ve veri bağımlılıklarının anlamlandırılması (sadece ilgili verileri bir tabloda depolamak). Bunların ikisi de, bir veri tabanının tükettiği alanı azalttıkları ve verilerin mantıksal olarak depolandığından emin oldukları için değerli hedeflerdir.

Normal Formlar

Veritabanı topluluğu, veritabanlarının normalleştirilmesini sağlamak için bir dizi kural geliştirmiştir. Bunlar normal formlar olarak adlandırılır ve beşten (beşinci normal form veya 5NF) birinden (ilk normal form veya 1NF olarak adlandırılan en düşük normalizasyon şekli) numaralandırılır. Pratik uygulamalarda, bazen 4NF ile birlikte 1NF, 2NF ve 3NF görürsünüz. Beşinci normal form çok nadir görülür ve bu makalede tartışılmayacaktır.

Normal formlar konusundaki tartışmalarımıza başlamadan önce, bunların sadece kurallar ve kılavuzlar olduklarını belirtmek önemlidir. Bazen, pratik iş gereksinimlerini karşılamak için onlardan uzaklaşmak gerekir. Ancak, varyasyonlar gerçekleştiğinde, sisteminizde olabilecek olası sonuçları değerlendirmek ve olası tutarsızlıkları hesaba katmak son derece önemlidir. Bu, normal formları inceleyelim dedi.

İlk Normal Form (1NF)

İlk normal form (1NF) organize bir veritabanı için çok temel kuralları belirler:

İkinci Normal Form (2NF)

İkinci normal form (2NF) ayrıca yinelenen verilerin çıkarılması kavramını ele almaktadır:

Üçüncü Normal Form (3NF)

Üçüncü normal form (3NF) bir adım daha ileri gider:

Boyce-Codd Normal Formu (BCNF veya 3.5NF)

"Üçüncü ve yarısı (3.5) normal form" olarak da adlandırılan Boyce-Codd Normal Formu, bir ek gereksinim daha ekler:

Dördüncü Normal Form (4NF)

Son olarak, dördüncü normal formun (4NF) bir ek zorunluluğu vardır:

Unutmayın, bu normalleşme yönergeleri kümülatiftir. Bir veritabanının 2NF'de olması için öncelikle bir 1NF veritabanının tüm kriterlerini karşılaması gerekir.

Normalleştirmeli miyim?

Veritabanı normalleştirme genellikle iyi bir fikir olsa da, bu mutlak bir gereklilik değildir. Aslında, normalleşme kurallarını kasten ihlal eden bazı durumlar iyi bir uygulamadır. Bu konu hakkında daha fazla bilgi için Veritabanımı Normalleştirmeli miyim?

Veritabanınızın normalleştirildiğinden emin olmak istiyorsanız , veritabanınızı İlk Normal Form'a nasıl ekleyeceğinizi öğrenin .