Anchor modeling
What does one table per attribute buy, and what does a column store already give you for free?
Take the Vault decomposition to its limit. Anchor modeling is sixth normal form (6NF): one table per attribute, each carrying its own history. Anchors are the entities, ties are the relationships, and knots are shared enumerations (small lists like "country" or "status").
-- Instead of customer(id, name, email, address):
CREATE TABLE an_customer (customer_id INT);
CREATE TABLE at_customer_name (customer_id INT, name VARCHAR, valid_from TIMESTAMP);
CREATE TABLE at_customer_email (customer_id INT, email VARCHAR, valid_from TIMESTAMP);
CREATE TABLE at_customer_address (customer_id INT, address VARCHAR, valid_from TIMESTAMP);The property this buys is exactly one thing, and it is the extreme end of the late-binding axis: every schema change is additive. Adding an attribute is creating a table. Nothing is ever altered, so nothing downstream breaks from an alteration. Combined with per-attribute history, you get temporal queries at attribute granularity for free.
The cost: dependence on table elimination
A query touching K attributes joins K tables. So the pattern depends entirely on the optimizer performing table elimination: dropping joins to tables whose columns are not selected and whose join cannot change the number of rows. Where the optimizer does this well, the pattern is viable. Where it does not, the pattern collapses.
The observation worth keeping
Physical column independence gives you the projection benefit of 6NF (read only the attribute you need) without the join. What it does not give you is per-attribute versioning, which is the other half of anchor modeling. So the two designs converge on reads and diverge on history, and a great deal of the "wide table versus decomposed model" argument is people comparing the halves they care about.
Anchor modeling's rarity is evidence that the read-side dependence on optimizer behavior is real. It is not evidence that the reasoning is wrong. Treat it as the existence proof at the end of the axis: the most extreme late-binding design that still works, and the reason most teams stop earlier.