Materialized views
View V = ViewQuery(R1, R…, Rn)
Create table V with schema of query result
Execute ViewQuery and put results in V
Queries refer to V as if its a table, because it is
BUT…
V could be ginormous
Modification to R1, R2, R…, Rn -> recompute or modify V

Modifications
Good news: just update the stored table
Bad News: base tables must stay in sync
– same issues as virtual views

Picking which materialized views to create
Efficiency benefits of a materialized view depend on:
– size of data
– complexity of View- number of queries using view
– number of modifications affecting view
– also “incremental maintenance” versus full recomputation

Related

About

I'm looking for my next opportunity to solve user interface problems and make an impact. Currently, I'm teaching code to high school students with CodeNation (formerly ScriptEd) and I'm a contributor on a mobile canvassing app called Reach. Some of my projects are on GitHub. I blog about what I'm learning and random tidbits that catch my fancy. Contact me at mtaylor@megantaylor.org