across tables that represent trivial relationships."
A typical RDBMS is made up of tables and rows rather than the flatter NoSQL type of approach. In the example of the voting application, the votes table would have a user ID and a comment ID in an RDBMS representation, Banker noted. In contrast, with a NoSQL approach, the data can be represented in a single object. The simplicity of the data model in MongoDB can make the database itself faster, he said.
Banker said that the open source project repository Sourceforge is now using MongoDB to handle project information for its software pages.
"So if you go to a project page on Sourceforge and you look at all the data describing a project including all the different commits, authors and descriptions, it ends up being a lot of data and to represent that in a relational database is really complex," Banker said. "The other approach is to represent the data as a document object, which is what they ended up doing, so all the richness of that data on a project page is in a single MongoDB document."
NoSQL challenges
Not everyone is sold on the idea that NoSQL-type databases are the solution to all that is wrong with modern databases, however. Mark Atwood, community development director at memcached vendor Gear6, doesn't think that NoSQL databases mean that SQL is dead.
"The future is near but it is not yet," Atwood told InternetNews.com. "There is a lack of operational experience, a lack of tools and there is not even a really good set of understandings on which non-relational datastores are good for which use cases."
In Atwood's view, the learning curve many of the NoSQL systems can be too steep, particularly in cases when the RDBMS approach would only require a database with a few tables. He noted that not all of the NoSQL database query tools are as well understood as their SQL counterparts, which have been in use for many years.
"The real point is that SQL is not dead and it's not dying," Atwood said. "It is unwise for people to be betting their system on a NoSQL solution unless they really understand what they are doing."
NoSQL backers admit that they still have challenges to address. Cloudant's Hoffman noted that there needs to be more education for developers about NoSQL databases to drive broader adoption.
"All of the solutions including CouchDB are certainly not as robust or as mature as something like MySQL. There needs to be more development and work done," Hoffman said. "As they become more mature, the ecosystem will grow up around them."
To 10gen's Banker, the NoSQL solution could hit the mainstream once it reaches a critical mass of users brave enough to try the technology to prove that it actually works.
"Once people see more NoSQL databases in production, I think it will help persuade the Oracle-bound people that it's a good idea," Banker said.
Sean Michael Kerner is a senior editor at InternetNews.com, the news service of Internet.com, the network for technology professionals.