historically, what made relational databases popular?

前端 未结 5 2166
栀梦
栀梦 2021-02-07 22:32

EDIT I\'ve just started skimming Codd\'s famous 1970 paper that started it all, that Oracle was based on (A Relational Model of Data for Large Shared Data Banks [pdf]),

5条回答
  •  情歌与酒
    2021-02-07 23:34

    I believe that none of the answers really nailed it, as you are interested about historical aspect of it.

    If I were to single out a reason I would say Quassnoi was close, but SQL was not just any language - it has one great feature that was not common in 70s:

    • it is declarative, it describes what you want to get and does not prescribe how to do it

    I don't think it is possible to overstate this.

    of course, the relational model is also big factor (and is related to the above)

    • also not all databases that have a schema are only about data; hierarchical and network databases are also about how to get data, their structure determines the most efficient method to access data and therefore structure influence how will you model the problem (in another words modelling process is influenced by the way application will use it; this has an effect that another application that might need to use IMS for example would be in a severely disadvantaged position, or that some changes in the application would not require changes in the database design to achieve good performance - for example a need to sort by some new column)

    note: on some of the above intentions SQL and 'R'DBMSes did not fully deliver (and/or other models overcame their problems in some way), but these were initial intentions and considering how stable SQL was in past ~40 years (here is a link to IBM's paper from 1974) or so it did not do such a bad, bad job either.

    There is also this quote from here

    “Ted’s basic idea was that relationships between data items should be based on the item’s values, and not on separately specified linking or nesting. This notion greatly simplified the specification of queries and allowed unprecedented flexibility to exploit existing data sets in new ways,” said Don Chamberlin, co-inventor of SQL, the industry-standard language for querying relational databases, and a research staff member at Almaden. “He believed that computer users should be able to work at a more natural-language level and not be concerned about the details of where or how the data was stored.”

    At a 1995 reunion of IBM’s early relational database scientists, Chamberlin recalled having an epiphany as he first heard Codd describe his relational model at an internal seminar.

    “Codd had a bunch of fairly complicated queries,” Chamberlin said. “And since I’d been studying CODASYL (the language used to query navigational databases), I could imagine how those queries would have been represented in CODASYL by programs that were five pages long that would navigate through this labyrinth of pointers and stuff. Codd would sort of write them down as one-liners. ... (T)hey weren’t complicated at all. I said, ‘Wow.’ This was kind of a conversion experience for me. I understood what the relational thing was about after that.”

    I seem to remember a transcript of an interesting interview about begging of SQL but can't track it down..

提交回复
热议问题