While I think SQL  *really* sucks (besides smelling too much of COBOL,
it pretends to be relational when it is not), that was not my point,
and I agree with you that relational databases don't store objects,
and that relational databases do have valid uses that are sadly often
overlooked (maybe this wouldn't be the case if they didn't keep adding
'features' to store XML 'objects' in them and other such
abominations).

My criticism was directed at how they are actually used in pretty much
every web 'framework' under the sun: with some hideously messy ORM
layer, they plug round Objects down the square db tables, and all of
it to write applications which really are representing files (accessed
over HTTP).

It is not uncommon to see people modeling with Objects file
hierarchies that then they go and store into a relational database.

So by using files to store and model data not only avoids having to
map a fs-like interface to a table oriented one, but the object
oriented convolution in between.

And that is short is what allows you to write a blog engine in three
lines of rc, because rc and the rest of the toolkit that comes with it
are designed to work on and with files and file paths.

uriel

On Fri, Apr 17, 2009 at 3:22 PM, erik quanstrom <quans...@quanstro.net> wrote:
> On Fri Apr 17 08:33:12 EDT 2009, urie...@gmail.com wrote:
>> And then you would need some hideous SQL database.
>>
>> As ken said: we have persistent objects, they are called files; and
>> that is what werc uses.
>
> i feel compelled to defend one of my favorite quotes
> of all time from misapplication.  i'm sure that werc is
> well-engineered for its domain, but the mistake i see
> is generalizing this into sql sucks.
>
> just as a point of pedantry, in a standard sql database,
> there are no objects.
>
> sql does not suck.  here's why.  sql databases are really
> good at keeping relationships between rows (here's the
> important part) with no locking visible to the client.
> even better in the face of non-static requirements,
> more relationships can be added on the fly.  it's hard
> to do this with flat files, and file-based locking (like
> upas does for mbox files) is pretty tricky.
>
> - erik
>
>

Reply via email to