On Thu, Mar 10, 2011 at 6:31 AM, hans wulf <lotu1(at)gmx(dot)net> wrote:
> Hi,
>
> if you want to do dirty counts or sums or any aggreate stuff, you will always have to visit the table. For many applications nobody cares about 0,01% inaccuracy.
>
> If you could keep the data that has to be aggregated in the index you could approximate values really fast.
>
> But because "Read uncommitted" is not implemented you will always have to visit the table. This is one reason why people have to still buy oracle.
>
> I don't know the postgres code, but I don't thing it is a big deal, not to care about consistancy. The code for executing such a query should be quite basic, because no MVCC-Stuff has to be done.
>
> Will this feature come any time soon? Even if "Read uncommitted" is a "could read all sorts of old and dirty stuff" it is still better than nothing.
Oracle has a different mvcc implementation than postgres. We keep a
lot more records of questionable visibility around in the heap so in
most real world cases your 0.01% could be 50% inaccuracy or worse.
As Bruce noted the direction the postgres project has taken has been
to limit the downsides of our mvcc implementation. A lot of the work
in the 8.x cycle (HOT, visibility map, etc) has been laying the
groundwork for the performance benefits you want without
cheating...and covering index scans (such that they are possible) are
on the radar.
merlin