Re: Date's First Great Blunder

From: Anthony W. Youngman <wol_at_thewolery.demon.co.uk>
Date: Fri, 23 Apr 2004 19:17:24 +0100
Message-ID: <bctxsCK02ViAFw5i_at_thewolery.demon.co.uk>


In message <cZYhc.32931$h44.4905402_at_stones.force9.net>, Paul <paul_at_test.com> writes
>Dawn M. Wolthuis wrote:
>>>Relational is simpler to the end user, but more complicated to the
>>>database management software.
>> From what I have seen, relational is definitely not simpler to the
>>end-user
>> of the dbms software (nor of any applications based on that software). Do
>> you have any evidence to back up this claim? Thanks. --dawn
>
>Not empirical evidence, no. But I don't think this is possible to get.
>
>For a particular instance of a problem, it might be simplest for a user
>to use whatever they are most familiar with.
>
>The thing about relational is that because it has complete
>logical/physical separation, it is very good at covering the general
>case (as opposed to a specific case).

Ummm ...

It has complete logical/physical separation? So there is NO evidence that the logical model matches the physical reality! So you have no evidence that it ACTUALLY WORKS.

You clearly haven't been following the arguments recently :-)
>
>For a particular problem, Pick might work fine, because it's physically
>optimized for certain queries. But say you want a different query that
>you didn't anticipate at design time, the optimization won't be there.

That's the point - Pick is NOT optimised for certain queries (well, in a way it is ... it's optimised for queries about the real world).
>
>Relational does the optimization at run-time, not at design-time.

And requires a humungous AI engine to do a good job :-)

The act of "defining a view" in Pick tells the engine the best way to run the query. And in production, how many relational systems will define a view "on the fly"? Extremely unusual, I would hazard a guess ...
>
>I think the only way you're going to get any sort of comparison between
>the two methodologies is if you have two equally experienced teams
>working in parallel from identical specs producing systems and
>maintaining them over several years. And repeat this for several
>different problems in case a problem is biased towards one methodology.
>But this is never going to happen.

But we keep on coming across examples, again and again, where the Pick system is taken as the reference spec. Countless dollars and experts' hours later (usually more dollars than were spent on the Pick system in its entire life) the relational system is still inferior or, often, unusable.

The others on this newsgroup will be getting sick of this example - the company porting off UniVerse to snoracle where experts spent SIX MONTHS tuning a single (complex) query to try and outperform Pick. Finally, they knocked 30 seconds off the Pick system's five-minutes run time. They were oh so proud - until it was pointed out that Snoracle had twin Xeons and gigabytes of ram. Pick had a P90.

Oh - and the guy looking after the Pick system was run-of-the-mill, not an expert.
>
>I would have thought given your mathematical background you would
>appreciate the beauty and elegance of the relational approach. I find
>as a (totally non-scientific) rule-of-thumb that gong with the elegant
>solution is always best!

And with my scientific background, I tend to believe in elegance and simplicity. My colleague emailed me a query today - the Pick version was about 4 words long. The SQL version (MS SQL Server - I know) was twenty to forty LINES long.
>
>It may be that the computing power needed for an efficient RDBMS
>implementation is only recently available. So 20 years ago a Pick
>solution may have been a better option in a practical sense, because
>computers were too slow or lacking in memory for a RDBMS to really work
>properly. But now we've maybe reached the critical point of processor
>power and memory, so that true RDBMSs will really come into their own
>in a practical as well as theoretical sense.

So you equate brute force with elegance? I don't think so ...

How can relational be simpler, if other technologies can consistently outperform it on far inferior hardware?

(And yes, I know people say that current implementations are "relational", not relational :-)
>
>Paul.

Cheers,
Wol

-- 
Anthony W. Youngman - wol at thewolery dot demon dot co dot uk
HEX wondered how much he should tell the Wizards. He felt it would not be a
good idea to burden them with too much input. Hex always thought of his reports
as Lies-to-People.
The Science of Discworld : (c) Terry Pratchett 1999
Received on Fri Apr 23 2004 - 20:17:24 CEST

Original text of this message