On Fri, Mar 30, 2007 at 12:01:33PM -0400, Oscar Täckström wrote: > I am working on a course project on implementing collection of statistics > on views in pgsql. The statistics will be used in conjunction with view > matching in the optimizer, to improve selectivity estimates.
Interesting idea... > For this to be possible, I need to be able to execute view definitions > from within the analyze code (so I can then sample the result set and > collect the statistics on the sampled tuples). Is there a preferred way > to do this? A simple solution is to use the SPI, but is this really > recommended for use from within this code? I don't want to materialize > the result set, but calculate the statistics directly in memory and just > throw away the tuples that's not part of the sample. I beleive you can use SPI to only retreive tuples as they are calculated, i.e. it doesn't materialise the dataset. However, if this is a concern, you could always use SPI to create a cursor to iterate over your set, That will give complete control... Hope this helps, -- Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/ > From each according to his ability. To each according to his ability to > litigate.
signature.asc
Description: Digital signature