Phil Factor'un normalleştirme ve 'Anima notitia copia' blog yayınına bugün yer imi koydum , çünkü belirli veri türlerini normalleştirmeye ve normalleştirmeye karşı davayı düzgün bir şekilde özetliyor. Bir SQL örneğinde aşağıdaki sorguyu çalıştırın ve kabul edip etmediğinizi görün.
SELECT * FROM sys.syslanguages
SQL ilişkisel veritabanları oluşturmanızı sağlar. Ancak, kötü kokuyor olsa bile, bir SQL Veritabanı ile gereksiz yere ilişkisiz şeyler yapmak suç değildir ve farkı anlayabilirsiniz; sadece bu değil, aynı zamanda sadece risklerin ve sonuçların farkındaysanız.
XML dosyasının "veriler hakkında ek bilgi" içerdiğinden bahsettiniz. Belki de sorgulama amacıyla, ilişkisel bir veritabanındaki meta verilerin modellenmesinin herhangi bir faydası var mı? Öyleyse, ilgili verileri ayıklamak ve kalan XML'yi XML belge türü olarak devam ettirmek için bir durum olabilir.
... bir JSON dizesi veya XML'den geçtiyseniz ve bunu bir veritabanında saklamanız gerekiyorsa, yapmanız gereken tek şey kendinize sormaktır, Anima notitia copia (veritabanının Ruhu) olarak rolünüz var mı? bu bilginin içeriğine ilgi duyuyor musunuz? '' Cevap 'Hayır!' Veya 'nequequam! O zaman atomik bir değerdir, ancak karmaşık da olabilir.
Phil Factor'un argümanı, ilişkisel bir veritabanındaki ilişkisel olmayan alanların, alan atomik olarak ele alınırsa, yani değişmezse veya tüm alan değiştiğinde, kurucu bir parçası değil, tamamen kabul edilebilir olduğudur. Bunun doğal uzantısı, belgeniz ilginizi çeken öğeler içeriyorsa, bu öğelere ilişkisel bir model uygulamada değer olabilir.
Soru ile ilgili, ancak esas olarak deyim için, Phil'den son bir alıntı:
Doğal olarak, bilerek asla Codd'un kaşlarını çattığı bir veritabanı oluşturmadım, ancak kenarların etrafında Normalizasyon köktendincileri arasında tıslamalara neden olan arayüzler ve veri beslemeleri var.
Hepimiz değil mi!