We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Toward Implementing Incremental View Maintenance on PostgreSQL

Formal Metadata

Title
Toward Implementing Incremental View Maintenance on PostgreSQL
Title of Series
Number of Parts
35
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Incremental View Maintenance (IVM) is a technique to maintain materialized views which computes and applies only the incremental changes to the materialized views to make refresh more efficient, but this is not implemented on PostgreSQL yet. In this talk, we will discuss what is necessary to implement IVM and our idea about the first version of IVM implementation on PostgreSQL. PostgreSQL has supported materialized views since 9.3. This feature is used to speed up query evaluation by storing the results of specified queries. One problem of materialized view is its maintenance. Materialized views have to be brought up to date when the underling base relations are updated. Incremental View Maintenance (IVM) is a technique to maintain materialized views which computes and applies only the incremental changes to the materialized views rather than recomputing the contents as the current REFRESH command does. This feature is not implemented on PostgreSQL yet. In this talk, after introducing some studies and discussions about IVM including our PoC (Proof of Concept) implementation, we will discuss what is necessary to implement this on PostgreSQL. For example, we have to decide how to extract changes on base tables, how to compute the delta to be applied to materialized views, when to maintain materialized views, and so on. Also, I will show our idea about the first version of IVM implementation on PostgreSQL.