NYCPHP Meetup

[nycphp-talk] MongoDB and others, convince me. :-)

Mitch Pirtle mitch.pirtle at gmail.com
Mon Jan 18 14:15:55 EST 2010


On Mon, Jan 18, 2010 at 10:03 AM, Gary Mort <garyamort at gmail.com> wrote:
>
>
> A database is a database...they all have similarities, and the SQL part is
> the least important part of being a DBA.

This becomes more of a systems administrator thing though, doesn't it?
MongoDB is a great example, as you can run it without a configuration
file - the only understanding anyone really needs is the development
team using MongoDB, as they obviously need to know what works (and
consequently what doesn't).

There's no way I could justify a full salary for someone to just sit
and watch MongoDB instances over on EC2 or the datacenter. That's
basically all they would do.

Part of the push to go non-relational is the desire to push away from
overly complex and convoluted proprietary platforms. I look at it like
this:

1) In the beginning, there were relational databases. They were big
and full of features, and it was desired to put as much "business
logic" in the database as possible - therefore a genuine need for
specialized support staff.
2) Hello, World Wide Web! Scaling these relational databases was hard,
and they were the main source of consternation and frustration for
development teams of high-traffic sites.
3) Facebook (among others) learn that to really scale, you need to do
your joins at the app layer, and everyone starts pulling all that
logic out of the database and back into the application.
4) So why are we using a relational database again?

Not saying this was a smart path to go, or even the right one; however
it is where we are, and there are reasons we've started down the route
to modern databases: They think like modern languages do (objects),
they have additional features for scale as part and parcel of their
base functionality (sharding, mapreduce), and take advantage of modern
systems for minimal configuration needs and best performance (memory
mapped files).

-- Mitch



More information about the talk mailing list