From: | Josh Berkus <josh(at)agliodbs(dot)com> |
---|---|
To: | pavelbaros <baros(dot)p(at)seznam(dot)cz> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: GSoC - proposal - Materialized Views in PostgreSQL |
Date: | 2010-04-12 17:50:46 |
Message-ID: | 4BC35D76.6000101@agliodbs.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 4/9/10 1:36 PM, pavelbaros wrote:
> 2) change rewriter
> - usually, view is relation with defined rule and when rewriting, rule
> is fired and relation (view) is replaced by definition of view. If
> relation do not have rule, planner and executor behave to it as physical
> table (relation). In case of materialized view we want to rewrite select
> statement only in case when we refreshing MV. In other cases rewriter
> should skip rewriting and pick up physical relation. Exclude situation
> when other rewrite rules which are not related to MV definition are
> specified.
This was done (although not completed) against PostgreSQL 7.1 by
students in Georgia, USA, I believe. It might be worthwhile looking at
their work if I can find it (if nowhere else, it should be in the ACM).
There are basically 2 major parts for materialized views:
A) Planner: Getting the query planner to swap in the MatView for part of
a query automatically for query plan portions which the MatView supports;
B) Maintenance: maintaining the MatView data according to the programmed
scheme (synch, asynch, periodic).
I do not believe it is possible to do both of the above in one summer.
Of the two, (A) would be more useful since it is possible to manually
implement (B) using triggers, queues and cron jobs today.
--
-- Josh Berkus
PostgreSQL Experts Inc.
http://www.pgexperts.com
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2010-04-12 18:04:21 | Re: GSoC - proposal - Materialized Views in PostgreSQL |
Previous Message | Magnus Hagander | 2010-04-12 16:56:51 | Re: walreceiver is uninterruptible on win32 |