For most of us database is synonymous to tables, tuples, SQL, RDBMS, or normalization, but is that what databases actually mean or is it beyond just the relational data-model? Relational data-model although the most popular and the most accepted data-model is not apt for all problems. And how far can we go by mapping all our problems on to the relational data-model. After certain table size eventually the database starts slowing down so we move towards replications via multiple configurations which obviously increases the operating expenses. Now when this is not enough we employ some expensive sys-admins to configure sharding for our database for which we require still more resources or pay a fortune worth of money to the “Big Guys” like Oracle and Microsoft to tweak our databases for performance. But is this the future of databases? I guess not. Let us have a look at what other database options which are not based on the RDM and are free from SQL:
- MongoDB: It is a very high performance open source, schema-free document-oriented database.It provides a JSON like data-store mechanism which can free the software architects from the limitations of the RDBMS. It also supports full indexing including inner objects and arrays, dynamic queries, query profiling, efficient storage of binary data including blob data, replication and fail-over, auto-sharding for extreme loads and we thought MySQL was ultimate for databases?
- CouchDB: It is a free and open source document-oriented database written in the Erlang programming language which is a functional language. It is well suited for local replications and vertical scaling. It again has a JSON data-store as documents which need not share a schema, but retain query abilities via views. Views are a combination of aggregate functions and filters and are computed in parallel, much like MapReduce. With bindings for many languages this is sure to become one of the most popular databases in the future.
- Mnesia: It is a distributed database system written in Erlang. The data-store of Mnesia can be considered Relational but isn’t what someone familiar with SQL might expect. A database contains tables. Relationships between them are modeled as other tables. A key feature of Mnesia’s is tables can be reconfigured within a schema and relocated between nodes, not only while the database is still running but even while write operations are still going on which make both the read and write operations extremely fast and fault tolerant.
- Cassandra: It is an open-source distributed database management system with a five dimensional Key value hash. It was developed by facebook and open sourced in July 2008. It provides a structured key-value store with eventual consistency. The major components of a Cassandra data-model are Columns, SuperColumns, ColumnFamily and KeySpace. It is considered as a Hybrid of the BigTable and Amazon Dynamo Key Value store. It is currently used by facebook, twitter and Digg.
- HyperTable: It is an open-source database based on Google’s BigTable. It used HDFS (Hadoop Distributed File System) as a storage file system and is distributed.
- Amazon Dynamo Key-Value Store: It is a proprietary high availability Key-Value data-store which has properties of both Databases and distributed hash tables. It powers parts of Amazon Web services.
So seeing these I am sure Relational Databases are soon to loose their share of importance when concerns like high scalability of databases arise.
Tags: Amazon.com Inc., BigTable, CouchDB, Data modeling, Database, database management system, Database management systems, Database theory, Databases, Document-oriented database, Dynamo Key-Value Store, Erlang, Google Inc., HDFS, HDFS ( Hadoop Distributed File System ), JSON, Key-Value Store, Mnesia, Oracle Database, RDBMS, Relational database, Relational model, software architects, SQL, store of Mnesia, Technology/Internet, Web services
















A little comment:
This post is in line with the NOSQL movement we currently see around the world.
There has been a nice event in the US recently and and event in Germany.
http://blog.oskarsson.nu/2009/06/nosql-debrief.html
http://nosqlberlin.de
It would be good to see other NOSQL Events around the world.
If you have any ideas please contact me (http://edlich.de).
I will at least inform some german NOSQL guys and possibly help.
Regards
Stefan Edlich
Hi Stefan,
Nice to see your comment. I will certainly inform other interested friends about this event.
Regards,
Ajatus Webmaster
Hi,
interesting note about distributed db systems.
I’m willing to go deeper in the topic but, as a rdbms guy, the very first question that raises is: “what are the requirements of a storage problem that drive the decision to adopt a technology instead the other ?”. Can you give me some ad vices or point me to some documentation ?
THank you
Rob
Hi Robert,
You can referrer so some of these links to get to know why RDBMS is not enough.
http://www.infoq.com/news/2007/11/the-rdbms-is-not-enough
http://blog.labnotes.org/2007/09/02/couchdb-thinking-beyond-the-rdbms/
Regards,
GeekTantra
Just wanted to say, it’s great to see a widening awareness that database management is not a “one size fits all” area of computing, as often popularized by relational vendors. The success of companies in areas such as data mining, ala TerraData, Netezza, etc were early indicators of this fact. As one of the first pioneers in a NOSQL moment, object databases are another important area of database management which have thrived and interestingly have solved many of the same things being tackled by the current NOSQL movement. Many are unaware that optimized, distributed 2-phase commit and parallel queries over complex object graphs in n-node dynamic clusters have been happening for over a decade using products such as the Versant object database. Let freedom ring.
Good Site on Cloud Computing and SaaS – We are periodically looking for good blog articles
related to Rackspace Cloud. Also we are looking for contributors to add value to our blog.
Keep up the good work!
Thanks