Re: Can relational alegbra perform bulk operations?

From: Clifford Heath <no.spam_at_please.net>
Date: Wed, 30 Sep 2009 06:48:49 +1000
Message-ID: <Uouwm.147191$nL7.139986_at_newsfe18.iad>


Banana wrote:
> Relational algebra, like ordinary algebra, can be employed in help us
> re-formulate the expression into a even simpler expression...
> But... I don't see any means within the relational algebra that provides
> a way of evaluating multiple tuples in one go.

The theory allows the query to be reformulated without changing its meaning, but it cannot help estimate the cost of executing one or the other. A simpler expression may in fact cost more to evaluate.

Primitive RDBMS used heuristics to apply transformations to expressions in the hope of reducing execution cost. In the mid 80's, most RDBMS ditched these heuristic optimisers and built cost-based ones. These estimate the execution cost by using statistics (row counts, index selectivity, ordering and clustering of indices, etc), though some, like MySQL, still use heuristics (these are still classed as primitive).

The change was triggered in part at least by the work of Ken J McDonell on the MUSBUS benchmarking tools, who was able to point out the glaring differences in actual behaviour of the RDBMS he benchmarked.

-- 
Clifford Heath, Data Constellation, http://dataconstellation.com
Agile Information Management and Design
Received on Tue Sep 29 2009 - 22:48:49 CEST

Original text of this message