This would explain why there are no references to non-relational (“NoSQL”) databases…
There were NoSQL databases in use then, but most were legacy. Think MUMPS (used widely in healthcare… now YottaDB rebrands it as a hip new NoSQL database!), hierarchical pre-System R databases on mainframes, and Pick/MultiValue “lol arrays in SQL”. More mainstream back then would be Domino (replicated document database… yes, that Domino) and dBase (flat).
What’s your exposure to MUMPS? My dad has worked with MUMPS in healthcare programming for the last twenty years. I learned the MUMPS REPL as a kid and my first programming internship was at a company my dad used to work for where I learned more MUMPS.
I know someone who writes MUMPS for a living in the healthcare industry; that, and if you play with old DEC stuff, they have a very robust MUMPS implementation available. Heck, VistA is public domain, if you want such an example!
Domino was Lotus Notes, right? Notes was a huge influence on CouchDB.
I know there were databases prior to the relational/SQL wave, but my impression is that after SQL took over they were relegated to the dustbin of history for a while … until web developers and proto-big-data analysts got fed up trying to make MySQL scale and began (re)inventing distributable systems like memcached.
(And yeah, I work at Couchbase, which has considerable DNA from both CouchDB and memcached.)
This would explain why there are no references to non-relational (“NoSQL”) databases
Distributed systems aside there’s not a ton of innovation in most “NoSQL” from an implementer’s perspective. One might argue that they’re making different/better tradeoffs but it’s hard to distinguish that from immaturity from the outside.
I think you’ve got it backwards: there’s not a ton of novel theory behind a lot of NoSQL, but plenty of interesting implementation to make them fast and scalable.
( “distributed systems aside” is a very big aside. :)
but plenty of interesting implementation to make them fast and scalable
They’re interesting case studies, sure, and their relative naïveté can make them easier to grok in a lot of cases. But there’s nothing fundamentally “fast” or “scalable” about throwing out SQL - it’s mostly different points in the design space.
Um. Do you have an ax to grind here? Your tone is coming off as kind of db-theory hipster.
NoSQL is an problematic name, of course, because it isn’t actually about SQL, it’s about non-relational. Several “NoSQL” databases support variants of SQL. What’s more important are things like eventual consistency, partition tolerance, flexible schemas, etc.
N.B.: This is the well-known “Alice” book, and it’s still a useful reference for a lot of fundamentals. I usually recommend Gray for this sort of thing, though, and only when folks have already consumed the latest Red Book.
I have never managed to read this book. Only skimmed through parts of it. I know however, of a person that has read it twice (in the 90s). And they have my total admiration for that.
Note that this book dates from the early ‘90s. (I couldn’t find a copyright date, but the introduction says
and I didn’t see any reference in the bibliography dated later than 1992.
This would explain why there are no references to non-relational (“NoSQL”) databases…
There were NoSQL databases in use then, but most were legacy. Think MUMPS (used widely in healthcare… now YottaDB rebrands it as a hip new NoSQL database!), hierarchical pre-System R databases on mainframes, and Pick/MultiValue “lol arrays in SQL”. More mainstream back then would be Domino (replicated document database… yes, that Domino) and dBase (flat).
What’s your exposure to MUMPS? My dad has worked with MUMPS in healthcare programming for the last twenty years. I learned the MUMPS REPL as a kid and my first programming internship was at a company my dad used to work for where I learned more MUMPS.
I know someone who writes MUMPS for a living in the healthcare industry; that, and if you play with old DEC stuff, they have a very robust MUMPS implementation available. Heck, VistA is public domain, if you want such an example!
Domino was Lotus Notes, right? Notes was a huge influence on CouchDB.
I know there were databases prior to the relational/SQL wave, but my impression is that after SQL took over they were relegated to the dustbin of history for a while … until web developers and proto-big-data analysts got fed up trying to make MySQL scale and began (re)inventing distributable systems like memcached.
(And yeah, I work at Couchbase, which has considerable DNA from both CouchDB and memcached.)
Time again to share this epic tale of Damian Katz rewriting Lotus Notes’ Formula engine:
http://damienkatz.net/2005/01/formula-engine-rewrite.html
Distributed systems aside there’s not a ton of innovation in most “NoSQL” from an implementer’s perspective. One might argue that they’re making different/better tradeoffs but it’s hard to distinguish that from immaturity from the outside.
I think you’ve got it backwards: there’s not a ton of novel theory behind a lot of NoSQL, but plenty of interesting implementation to make them fast and scalable.
( “distributed systems aside” is a very big aside. :)
They’re interesting case studies, sure, and their relative naïveté can make them easier to grok in a lot of cases. But there’s nothing fundamentally “fast” or “scalable” about throwing out SQL - it’s mostly different points in the design space.
Um. Do you have an ax to grind here? Your tone is coming off as kind of db-theory hipster.
NoSQL is an problematic name, of course, because it isn’t actually about SQL, it’s about non-relational. Several “NoSQL” databases support variants of SQL. What’s more important are things like eventual consistency, partition tolerance, flexible schemas, etc.
N.B.: This is the well-known “Alice” book, and it’s still a useful reference for a lot of fundamentals. I usually recommend Gray for this sort of thing, though, and only when folks have already consumed the latest Red Book.
I have never managed to read this book. Only skimmed through parts of it. I know however, of a person that has read it twice (in the 90s). And they have my total admiration for that.