Tavsiye, 2024

Editörün Seçimi

Normalleşme ve Denormalizasyon Arasındaki Fark

Normalizasyon ve denormalizasyon, veritabanlarında kullanılan yöntemlerdir. Terimler, Normalizasyon'un gereksiz verileri ortadan kaldırarak ekleme, silme ve güncelleme anormalliklerini en aza indirme tekniği olduğu durumlarda farklılık gösterir. Öte yandan, Denormalizasyon, belirli uygulamanın performansını ve veri bütünlüğünü arttırmak için fazlalık verinin verilere eklendiği ters normalleştirme işlemidir.

Normalleştirme, fazlalığı en aza indirerek veya ortadan kaldırarak disk alanı israfını önler.

Karşılaştırma Tablosu

Karşılaştırma için temelnormalleştirmedenormalization
TemelNormalleştirme, yedekli ve tutarlı olmayan verileri depolamak için ayarlanmış bir şema oluşturma işlemidir.Denormalizasyon, verilerin hızlı bir şekilde sorgulanabilmesi için birleştirme işlemidir.
amaçVeri fazlalığı ve tutarsızlığı azaltmak için.Fazlalık getirerek sorguların daha hızlı uygulanmasını sağlamak.
KullanılanÜzerinde durulması gereken hususun yer aldığı OLTP sistemi, anomalileri daha hızlı silip günceller ve kalite verilerini depolar.Vurgulamanın araştırma ve analizi daha hızlı hale getirdiği OLAP sistemi.
Veri bütünlüğügüvenceliAlamaz
fazlalıkelendiKatma
Tabloların sayısıArtışlarazaltır
Disk alanıOptimize kullanımFire

Normalleşmenin Tanımı

Normalleştirme, veritabanındaki verileri verimli bir şekilde düzenleme yöntemidir. Tablolar oluşturmayı ve bu tablolar arasında belirli kurallara göre ilişkiler kurmayı içerir. Artıklık ve tutarsızlık bağımlılığı, daha esnek hale getirmek için bu kurallar kullanılarak kaldırılabilir.

Gereksiz veriler disk alanını boşa harcar, veri tutarsızlığını arttırır ve DML sorgularını yavaşlatır. Aynı veriler birden fazla yerde mevcutsa ve herhangi bir güncelleme söz konusu verilere bağlıysa, değişiklik tüm konumlara yansıtılmalıdır. Tutarsız veriler, yolunu kaybederek veri arama ve erişimini zorlaştırabilir.

Normalleştirmenin gerçekleştirilmesinin arkasında, fazlalıktan kaçınmak, anormallikleri güncellemek, gereksiz kodlama yapmak, verileri değişimi daha kolay ve doğru bir şekilde barındırabilecek formda tutmak ve veri kısıtlamasını uygulamak gibi çeşitli nedenler vardır.

Normalleştirme, özellikler arasındaki fonksiyonel bağımlılıkların analizini içerir. İlişkiler (tablolar), bir yapıyla ilişkiler oluşturmak için anormallikler ile ayrıştırılır . Hangi özelliklerin bir ilişkide gruplandırılması gerektiğine karar vermede yardımcı olur.

Normalleştirme, temel olarak normal form kavramlarına dayanır. Belirli bir kısıtlama kümesini yerine getirirse, ilişki tablosunun normal bir biçimde olduğu söylenir. 6 tanımlı normal form vardır: 1NF, 2NF, 3NF, BCNF, 4NF ve 5NF. Normalleştirme artıklığı ortadan kaldırmalı ancak bütünlük pahasına olmamalıdır.

Denormalizasyonun tanımı

Denormalizasyon, normalleştirilmiş şemanın yedekli bilgiye sahip bir şemaya dönüştürüldüğü normalizasyonun ters işlemidir. Yedeklilik kullanılarak ve yedek verileri tutarlı tutularak performans artırılır. Normalleştirme işleminin nedeni, sorgu işlemcisinde aşırı normalleştirilmiş bir yapı tarafından üretilen genel giderlerdir .

Denormalizasyon ayrıca, üstün normal form ilişkilerini birleştirmenin daha düşük normal formda olan bir baz ilişkisi olarak depolanması yöntemi olarak tanımlanabilir. Masa sayısını azaltır ve karmaşık masa birleşmeleri daha fazla sayıda birleşme işlemini yavaşlatır çünkü. Gibi çeşitli denormalizasyon teknikleri vardır: Türetilebilir değerlerin saklanması, ön birleştirme tabloları, sabit kodlanmış değerler ve detayların ana verilerle tutulması, vb.

Burada denormalizasyon yaklaşımı, tüm verileri tek bir yere yerleştirerek, bu verileri toplamak için bu çoklu dosyaları arama ihtiyacını ortadan kaldırabileceği kavramını vurgulamaktadır. Temel stratejinin denormalizasyonda izlenmesi, sonuçta performansı artıracak değişikliklerin incelenmesi için en yönetici sürecin seçilmesidir. Ve en temel değişiklik, birleşme sayısını azaltmak için mevcut tabloya birden fazla özellik eklemektir.

Normalleştirme ve Denormalizasyon Arasındaki Temel Farklılıklar

  1. Normalleştirme, veri fazlalığı ve tutarsızlığı azaltmak ve veri bütünlüğünü sağlamak için verileri çoklu tablolara bölme tekniğidir. Öte yandan, Denormalizasyon, veri alımını daha hızlı yapmak için verileri tek bir tablo halinde birleştirme tekniğidir.
  2. Normalleştirme, anormallikleri daha hızlı bir şekilde ekleme, silme ve güncelleme işlemlerini vurgulayan OLTP sisteminde kullanılır. Buna karşılık olarak, denormalizasyon, arama ve analizlerin daha hızlı yapılmasını vurgulayan OLAP sisteminde kullanılmaktadır.
  3. Normalleştirme işleminde veri bütünlüğü, normalleştirme işleminde veri bütünlüğünü korumak daha zordur.
  4. Normalleştirme yapıldığında gereksiz veriler ortadan kalkar, normalleştirme işlemi gereksiz verileri artırır.
  5. Normalleştirme, tablo ve birleştirme sayısını artırır. Buna karşılık, denormalizasyon tabloların sayısını azaltır ve birleştirir.
  6. Disk alanı, normalleştirme işleminde boşa harcanır, çünkü aynı veriler farklı yerlerde saklanır. Aksine, disk alanı normalleştirilmiş bir tabloda optimize edilmiştir.

Sonuç

Normalizasyon ve denormalizasyon duruma göre faydalıdır. Normalleştirme, hızlı ekleme, silme ve güncelleme anomalileri ve veri tutarlılığı gerektiğinde gerekli olduğunda kullanılır. Diğer taraftan, Denormalizasyon daha hızlı arama daha önemli olduğunda ve okuma performansını optimize etmek için kullanılır. Ayrıca, aşırı normalleştirilmiş veriler veya karmaşık masa birleştirmelerinin yarattığı genel maliyetleri de azaltır.

Top