7 ms·
"The proponents of NoSQL aren't even aware of how they are repeating history by recreating the hierarchical databases of yore." > Says who? The author doesn't
by batista 15y ago
"The proponents of NoSQL aren't even aware of how they are repeating history by recreating the hierarchical databases of yore."
> Says who? The author doesn't bother justifying this statement, he just throws it out there. It's completely baseless, and likely a straw-man argument (as I have a hard time believing that everyone at Google, Facebook, Twitter and all the other large cloud companies are completely clueless about database history).
For one, he doesn't need to "justify the statement". It's a HISTORICAL argument. So take a computing history book and look for the "hierarchical databases". You'll find them easily. Check how and if they are alike to current NoSQL databases. (Actually he not only justifies the argument, but he goes on to talk about Codd).
The second part of your argument, "I have a hard time believing that everyone at Google, Facebook, Twitter and all the other large cloud companies are completely clueless about database history" is an argument by authority: "surely because they are big companies they should know what they are doing".
Well, big companies do idiotic stuff too, all the time. Remember how all those big companies agreed on the SOAP fiasco? Or the CORBA fiasco before that? Or how IBM, SUN, Oracle touted EJB 2? I do.
"E.F. Codd was explicitly trying to rectify these mistakes when he formulated relational database theory 40 years ago"
> This sounds a little more plausible, but which mistakes is he talking about? And when did Codd say this? Citation, please!
And what are those databases? And SQL? What is a computer?
At some point you assume your readers do their work. It's not as if Code is some mysterious figure, and the things the relational theory solves (and proves mathematically) are lost in legend. This is database theory 101, no citation needed.
Now, if you are not a Computer Scientist, then the article is not meant for you, anyway.
- weavejester 15y ago"For one, he doesn't need to "justify the statement". It's a HISTORICAL argument." No, it is not. The author claims that the proponents of NoSQL are unaware they are repeating history. It's not an argument over history, it's an argument over what a certain group of people know. "So take a computing history book and look for the "hierarchical databases". You'll find them easily. Check how and if they are alike to current NoSQL databases." Irrelevant. The point is not whether hierarchical databases are alike to current NoSQL databases, but whether or not the proponents of NoSQL are aware of past database designs. Nor is it a "argument by authority" to suggest that the author's statement needs to be justified. The author is claiming that everyone who designs or promotes NoSQL databases has less understanding about databases that a first year CompSci student. This is not an argument from authority, but an argument about authority. "At some point you assume your readers do their work. It's not as if Code is some mysterious figure, and the things the relational theory solves" Again, you valiantly miss my point. The question is not whether Codd invented the relational model, but whether he "was explicitly trying to rectify these mistakes" (whatever "these mistakes" are; the author never explains). The relational model has its advantages, but it's not a silver bullet, and understanding the limitations of a model or algorithm is just as important, if not more so, than understanding its advantages. Codd would understand the limitations of the model he devised more than anyone. Computer science is all about finding the right tools for the job. Codd added a useful tool to our collective toolbox, but it's not the only tool we have available. Nor are hierarchical databases inherently inferior to relational databases; sometimes a hierarchy is exactly what you want. A lot of websites, including Hacker News, would fit the hierarchical model better than the relational model. "Now, if you are not a Computer Scientist, then the article is not meant for you, anyway." It's painfully clear the article is not meant for computer scientists of any calibre.
- batista 15y agoThe author claims that the proponents of NoSQL are unaware they are repeating history. It's not an argument over history, it's an argument over what a certain group of people know. (...) Irrelevant. The point is not whether hierarchical databases are alike to current NoSQL databases, but whether or not the proponents of NoSQL are aware of past database designs. It doesn't matter if they are aware that they copy the old hierarchical db's or not, this won't change the final outcome. What matters is if they DO copy them, warts and all. And this, you can check. That said, you can also check if they are aware or not. Read their interviews, papers etc, and you can easily check if this is the case or not. It's not like it's something they keep in their heads. Again, you valiantly miss my point. The question is not whether Codd invented the relational model, but whether he "was explicitly trying to rectify these mistakes" And again, YES, Codd was bloody "EXPLICITLY trying to rectify these mistakes". It's DB history 101 that he did so. Read even just the bloody abstract of his paper: http://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf http://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf Nor are hierarchical databases inherently inferior to relational databases As a mathematical abstraction for storing data, they are. Relational algebra is a mathematically proven and sound system, not an ad-hoc thing. (Not that common relational dbs respect relational algebra 100%).
- weavejester 15y ago"What matters is if they DO copy them, warts and all. And this, you can check." Usually it's up to the person making the statement to justify their own arguments. "YES, Codd was bloody "EXPLICITLY trying to rectify these mistakes". It's DB history 101 that he did so. Read even just the bloody abstract of his paper" You're misreading it. All tools are inadequate in some way; Codd was not trying to claim that relational databases were a universal panacea for database storage. That's not how computer science works. "As a mathematical abstraction for storing data, they are." So if I have a tree of data, in your opinion the optimum method of representing that data is as a set of tuples and not, say, a tree? "Relational algebra is a mathematically proven and sound system, not an ad-hoc thing." If the relational model is so perfect, why do SQL databases include so many compromises and deviations from the theoretical model?