A Relational Model of Data for Large Shared Data…

Codd's relational model paper asks why an application program should break when the machine reorganizes the data it reads. Read it to see how describing everything as flat relations with keys removes ordering, indexing, and access-path dependence, how normalization copies a parent key downward to flatten nested records, and why the model deliberately leaves language syntax, implementation, and performance as open problems.

Reading focus: Why a program written for one of five equivalent tree layouts fails on at least three of the others, and what it means for row order and access paths to be invisible to users. How normalization copies each parent's primary key into its subordinate relations until every domain is simple and the whole bank fits in flat arrays without pointers. Why the natural join is the only join when the shared column is a function, and why following stored pointer paths answers the wrong question in the connection trap.

Communications of the ACM 1970. E. F. Codd. 30 min read, easy difficulty.