|
MongoDB is the new MySQL
Joseph Ritchey
Watched out MySQL. MongoDB is here and it is after your blogs. If you have not
heard of it yet MongoDB is is an open source, scalable,
high-performance, schema-free, document-oriented database. What MongoDB is
designed for is problems without heavy transactional
requirements that aren't easily solved by traditional RDBMSs, including problems
that require databases to span many servers. What
this means is MongoDB does not have a table structure like MySQL. You do not
have to design your database schema anymore.
Now I do not think every web app is going to run out and refractor all of there
code for MongoDB, but maybe they should :) What Mongodb does
is try to fill that void in RDBSM of sharing large amount of data between
servers and accessing it quickly. Now why do I think MongoDB
is going to start pushing MySQL out of the way? It is because of this. MySQL has
had some notable shortcomings when dealing with scale. Now
when it comes to blogs where there are lots of reads and with large blogs and
websites millions of reads MySQL falls short on scaling.
Here is a nice niche for MongoDB. Now Joe Shmoe's blog my not see any benefit
from switching to a MonogDB backend but larger scale sites
will.
MonogoDB is also about infrastructre. Where you may not end up using MongoDB for
your CMS. If you a developing the next best web site
hosting like Harmony then MongoDB makes a lot of sense. For me when it came to
development time with Quicklogs, MongoDB crushed MySQL. Forget
ALTER TABLE commands whenever you want to update your schema. MongoDB is schema
free meaning you can write the schema to how you see fit.
This is great for development, prototyping and upgrades down the road. The other
infrasctructure play is replication and sharding. Although
sharding will not be in the production deployment until 1.6, eta July 2010.
MongoDB is very easy to replicate, do a initial sync and stay
synced. MySQL replication in my experience has had a problem keep up with large
data sets.
How is MongoDB going to push MySQL out of the way? At first I thought it was
going to happen slowly, but then I watch as some big names keep
showing up on MongoDB's production deployment site and it may happen a lot
sooner than I thought. Once you see a major CMS like
Wordpress or Drupal port to MongoDB then it is all over. I use Wordpress and
Drupal as examples because they are a couple of the most
visible MySQL based app out there right now, but a new comer could easily come
in a generate big time buzz. Keep an eye out for Quicklogs
as one of those.
Then there is the geek build it factor. As a computer enthusiast is it just fun
to use something new like MongoDB. There is also the Oracle
factor. What is Oracle going to do with MySQL? Is Larry Ellison going to wake up
one morning drip and a MySQL book get pissed and kill it?
Probably not but that thought is always out there. The bigger question is why is
Oracle still keeping MySQL around?
|