Tech●●●●●Difficulty 2 of 5

How did a 1970 paper about tables come to run the world's data?

IBM's own database business stood to lose from Ted Codd's idea, so the company sat on it until its customers and rivals forced its hand.

▶ Start the story

A 1970 paper by an IBM mathematician named Edgar "Ted" Codd proposed a simple idea: keep data in plain tables, and let people ask for what they want instead of spelling out how to fetch it. That idea, the relational model, now sits under most of the databases in the world.

Before it, databases were . Records pointed to other records, often by physical disk address, and programs followed those pointers like a treasure map. Codd's model said applications should search for data by its content instead of following links. Data lives in tables, one for each type of thing, such as customers or orders. A is the smallest set of columns that tells the rows apart, and a row in one table can refer to a row in another by a matching value. To bring information together from several tables, you them.

The surprising part is that IBM, Codd's own employer, resisted. It already sold IMS, a database, and it refused at first to build a relational one in order to protect that income. Codd went to IBM's customers and showed them what the model could do; they pressured IBM, and rivals began building their own. By the mid-1980s computers were fast enough to run relational systems widely, and by the early 1990s they dominated large-scale data processing.

Two ways to find data

Navigational

  • Records point to other records
  • Often by physical disk address
  • Programs follow the pointers

Relational

  • Data in tables, one per kind of thing
  • Search by content
  • State what you want, not how
The relational toolkit
  1. Step 1: Tables

    One per kind of thing

  2. Step 2:

    Smallest set of columns that tells rows apart

  3. Step 3:

    A row refers to a matching row elsewhere

  4. Step 4:

    Combine tables to answer a question

Quiz me

0/3

  1. 1.What was the main change the relational model brought compared with navigational databases?
  2. 2.Why did IBM, Codd's employer, resist building a relational database at first?
  3. 3.What does a foreign key do in a relational database?

Recap

Codd's relational model keeps data in linked tables and asks the database what you want, not how to find it.

💡 A trick to remember it · Tables, not treasure maps: ask for what you want and the database finds the path.

Surprising fact · IBM at first refused to build a relational database to protect revenue from its own IMS, until customers and rivals pushed it.

Sources (3)

No source, no claim. Every fact in this lesson (13 claims) cites at least one of these.

  1. [1]Edgar F. Codd · Wikipedia
  2. [2]Database · Wikipedia
  3. [3]Relational model · Wikipedia
More lessons in 💻 Tech (3) See all tech lessons →

One more light on your map.

Get one lesson like this every day, about the things you love. Free, in two or five minutes.

Get the share card for this lesson ↗