On Sat, Sep 11, 2010 at 9:40 AM, rajkumar vbalakrishnasamy < [email protected]> wrote:
> Hi all, > Which database is suitable for High performance and scalable.How nosql > is gaining importance nowadays and which is the most powerful nosql > database.And also which is the best alternative to the mysql database. > > Hi Rajkumar, It is very hard to answer your question. I will try to give overview of all about NoSQL. MySQL is a relational database management system, written to run on single machine and it provides ACID property (Atomicity, Consistency, Isolation and Durability), whereas NoSQL (Stands for Not Only SQL) is an emerging distributed and scalible non-relational data storage mechanism for storing large scale of data. NoSQL is not alternative to mysql database. *NoSQL is about choice*. You have to evaluate which NoSQL database most suited for your problem. It is very hard to tell which NoSQL database to solve your problem. LIST OF NOSQL DATABASES: http://nosql-database.org/ If you see the above page there is lot of NoSQL databases are there. Choosing among the one for your problem is little bit hard at begining, it dependends on business you are running. Last month I gave a presentation about "EVALUATING NOSQL DATABASES" for our engineers. I would like to share some of the thing to you: There are two things you have to consider at evaluating NoSQL databases for your problem. I). The Data Model. II). The CAP Theorem. I). The Data Model : NOSQL databases can be categorized according to their "Data Model"(is all about the system internally stores the data) into the following four categories: 1. Key-Value-stores 2. BigTable-implementations 3. Document-stores 4. Graph Databases Example : 1). Key-Value - Voldemort - Dynomite 2). Column-Oriented Hadoop HBase Cassandra Hypertable 3). Document-Oriented CouchDB MongoDB You have to find out which data model is sutable for your bussiness data(eg. last month sorceforge.net started to using MongoDB it comes under the document-stores data model categorie: http://www.infoq.com/presentations/MongoDB-at-SourceForge). II). The CAP Theorem : Eric Brewer is an expert in distributed system and professor at UC Berkeley formulated a theorem called CAP theorem. CAP stands for Consistency, Availability, and Partition tolerance. These are three properties that are commonly desired in a distributed system. The theorem simply states that any shared-data system can only achieve two of these three. So the CAP theorem allows the designer of distributed system can only pick two of the those three properties. At the time of evaluating NoSQL for your bussiness, you have to make sure which of three property are important for your business model. 1). Consistent, Available (CA) Systems have trouble with partitions: Example: - Traditional RDBMSs like Postgres, MySQL, etc (relational) - This system sacrifice Partition-Tolerant 2). Consistent, Partition-Tolerant (CP) Systems have trouble with availability while keeping data consistent across partitioned nodes. Example: - Hypertable, HBase - This system sacrifice Available 3). Available, Partition-Tolerant (AP) Systems: Example : - Cassandra, CouchDB You can find the Mathematical proof of CAP theorem and explanation here: http://nosqlsummer.org/paper/cap-theorem http://www.julianbrowne.com/article/viewer/brewers-cap-theorem The CONCLUSION is : Last 30 to 40 years, we have only one option traditional RDBMSs(SQL,Postgres, MySQL...) for all of our problem. Now the trend has been changing(The era of using RDBMSes for *all problems* is over), *instead we should use the database most suited for the problem at hand*. NoSQL is about choice. We could even use multiple databases in conjunction, and let each database handle the things it do best. I think there is a stall in SFD-2010 about NoSQL. I request you come there you may get more clear ideas about NoSQL. I hope it will help you and others also. Links : 1). http://www.royans.net/arch/brewers-cap-theorem-on-distributed-systems/ 2). http://blog.nahurst.com/visual-guide-to-nosql-systems 3). http://nosql-database.org/ Thanks & Rg Mohan L http://lmohanphy.livejournal.com/ _______________________________________________ ILUGC Mailing List: http://www.ae.iitm.ac.in/mailman/listinfo/ilugc
