Denormalisation and When to Use It
Denormalisation deliberately reintroduces redundancy to make reads faster. It is a considered trade, valid only with evidence, and it always transfers...
Material for readers past the basics.
145 notes tagged
Denormalisation deliberately reintroduces redundancy to make reads faster. It is a considered trade, valid only with evidence, and it always transfers...
One realistic table taken all the way from unnormalised form through 1NF, 2NF, 3NF and BCNF, with every dependency, key and decomposition shown at eac...
A relation is in 3NF when it is in 2NF and no non prime attribute depends on another non prime attribute. It is the practical target for most producti...
A relation is in 2NF when it is in 1NF and no non prime attribute depends on only part of a candidate key. It only ever matters when the key is compos...
A reliable method for finding every candidate key: classify attributes by where they appear in the dependencies, build a compulsory core, then extend...
The closure of an attribute set is everything it determines. Computing it is a short mechanical loop, and it is the single tool used to find keys, tes...
A functional dependency says that whenever two tuples agree on X they must also agree on Y. It is a rule about every possible instance, not an observa...
Theta join, equi join and natural join, all defined as a selection over a Cartesian product. The natural join joins on every common attribute and remo...
Union, intersection and difference come straight from set theory, but they require union compatibility. Cartesian product combines every pair and is t...
The three unary operators. Selection picks rows, projection picks columns and removes duplicates, and rename makes an expression reusable. Together th...
Null means the absence of a value, not zero and not empty. Comparisons with null produce unknown, which turns two valued logic into three and changes...
What happens to child rows when a referenced parent row is deleted or updated. Cascade, restrict, set null, set default and no action, with the rule f...