Since NoSQL seems to be reigning supreme, I decided to study MongoDB which was both recommended by a friend (a PM who is managing an actual project with that stuff) and is the most popular NoSQL engine out there according to http://db-engines.com/en/ranking (they don't count Hadoop since they considered it to be a file system.) As usual, I acquired the book (O'Reilly - mongodb the definitive guide) and began to read...
And here is why I post it here, I have the sense of deja vu all over again! Forget about the fancy terminology of storing "Documents" rather then rows or records. In the end it is the same. They have all the CRUD actions (i.e. Create, Remove, Update and Delete) which are done via some API functions rather then SQL statements. They can index and access stuff fast. They can partition the database over many servers and thus scale out... all is good. But here is the real scoop! No Joins and if you want to store some row... er... document of different structure that relate to the current one, you'd rather store it as a sub document (i.e. a different structure that is part of your current row (i.e. hierarchical) or in a different collection that you should navigate into in the application side. Mmm, have I just used the words navigate, hierarchical, etc. No wonder that all those younger people are so excited about NoSQL, they have never seen it before. But we, veterans of IMS, IDMS, ADABAS and the like, our old skills are new again! Welcome back to the future. ---------------- BTW, I do not bad mouth the technology, it is very useful (as were IMS and IDMS) and I can see replacing all warehouses and Star Schemas with that stuff, it is more natural, faster and more scalable then the current SQL based warehouse technologies. ZA ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN