NoSQL Movement?

Jonathan Gardner jgardner at jonathangardner.net
Wed Mar 3 17:23:25 EST 2010


On Wed, Mar 3, 2010 at 12:54 PM, ccc31807 <cartercc at gmail.com> wrote:
>
> As with anything else, you need to match the tool to the job. Yes, I
> feel that relational database technology has been much used, and much
> abused. However, one of my favorite applications is Postgres, and I
> think it's absolutely unbeatable where you have to store data and
> perform a large number of queries.
>

Let me elaborate on this point for those who haven't experienced this
for themselves.

When you are starting a new project and you don't have a definitive
picture of what the data is going to look like or how it is going to
be queried, SQL databases (like PostgreSQL) will help you quickly
formalize and understand what your data needs to do. In this role,
these databases are invaluable. I can see no comparable tool in the
wild, especially not OODBMS.

As you grow in scale, you may eventually reach a point where the
database can't keep up with you. Either you need to partition the data
across machines or you need more specialized and optimized query
plans. When you reach that point, there are a number of options that
don't include an SQL database. I would expect your project to move
those parts of the data away from an SQL database and towards a more
specific solution.

I see it as a sign of maturity with sufficiently scaled software that
they no longer use an SQL database to manage their data. At some point
in the project's lifetime, the data is understood well enough that the
general nature of the SQL database is unnecessary.

-- 
Jonathan Gardner
jgardner at jonathangardner.net



More information about the Python-list mailing list