←back to thread

121 points b-man | 5 comments | | HN request time: 0.001s | source
1. moi2388 ◴[] No.44026696[source]
“ Principle of Full Normalization (POFN) : Every base relation should be in its highest normal form (3, 5 or 6th normal form)”

No it shouldnt.

replies(2): >>44027041 #>>44030611 #
2. JSR_FDED ◴[] No.44027041[source]
Please, feel free to elaborate so we can all learn
replies(1): >>44027192 #
3. threeseed ◴[] No.44027192[source]
It's ideological purity which has no place in the real world.

Fully normalised structures are slow, dangerous and place expensive and frustrating burdens on upstream users reducing the amount of value that can be extracted from the data.

I've been working around data for 20+ years and not once seen a dataset where tables could be blindly joined without some conditions. In these situations it can be better to just pre-join them so the business logic is captured.

You want to be pragmatic and have a healthy and constructive mix.

replies(1): >>44030082 #
4. HelloNurse ◴[] No.44030082{3}[source]
Since I "want to be pragmatic" I want my data not repeated, so that it cannot be inconsistent, and not NULL, to simplify logic. And of course any interesting join condition involves fields from different tables.
5. bwfan123 ◴[] No.44030611[source]
I have implemented database schemas, (without knowing database theory), and these principles are a revelation to me.

A question I have is: Given a schema, are there automated verifiers for validating that it adheres to these principles ? A schema "linter" of sorts.

There seem to be parallels to linear algebra here (orthogonal bases, decompositions, etc)