> This is a minimal implementation, but should still be useful in many cases. Currently data is only populated "on demand" by the CREATE MATERIALIZED VIEW and REFRESH MATERIALIZED VIEW statements.
> It is expected that future releases will add incremental updates with various timings, and that a more refined concept of defining what is "fresh" data will be developed. At some point it may even be possible to have queries use a materialized in place of references to underlying tables, but that requires the other above-mentioned features to be working first.
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;...
Algorithms for updates of materialized views exist since at least 20 years but maybe they don't cover all these cases efficiently.