Before Edgar Codd, finding data meant following a trail of pointers
Early databases worked like a maze: to reach a record, programs followed links from one entry to the next, often via physical disk addresses. In 1970 an IBM researcher named Edgar Codd, frustrated that there was no simple way to search, proposed tables instead. His idea still dominates computing.
A database is an organised store of data managed by software called a database management system, which lets people and programs define, update, retrieve and administer information, from registering users and enforcing security to recovering corrupted records. The idea depended on hardware. Only when direct-access storage such as magnetic disks and drums spread in the mid-1960s could data be shared interactively rather than processed in daily batches from tape. The Oxford English Dictionary credits the first technical use of data-base to a Californian firm, the System Development Corporation, in a report from 1962.
The first generation was navigational. Charles Bachman, creator of the Integrated Data Store, founded the Database Task Group within CODASYL, the body behind COBOL, and in 1971 it published a standard for linked, network-style databases. IBM's Information Management System, built from software written for the Apollo programme, used a strict hierarchy instead. Bachman's 1973 Turing Award lecture, The Programmer as Navigator, gave the family its name. Such systems were powerful but complex and demanded heavy training.
Codd, working at IBM in San Jose in an office focused on hard disks, set out his alternative in a landmark 1970 paper proposing a relational model for big shared collections of data. Each type of entity got its own table with fixed columns, rows were identified by primary keys, and queries joined tables through those keys rather than disk addresses. Applications searched by content instead of following links. Hardware caught up in the mid-1980s, and by the early 1990s relational systems ruled large-scale data processing; most use SQL.
Challengers kept coming. Object databases appeared in the 1980s to smooth the awkward fit between programming objects and tables. In the late 2000s NoSQL systems brought fast key-value and document stores, while NewSQL tried to keep the relational model with NoSQL speed. Still, as of 2018 IBM Db2, Oracle, MySQL and Microsoft SQL Server were the most searched systems.
Source: Database