From: | Dent John <denty(at)QQdd(dot)eu> |
---|---|
To: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Query Rewrite for Materialized Views (FDW Extension) |
Date: | 2018-04-05 13:41:15 |
Message-ID: | FC784A9F-F599-4DCC-A45D-DBF6FA582D30@QQdd.eu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
I wanted to share the project I've been working on which dynamically rewrites queries to target materialized views when views are available that can satisfy part of a query with lower cost plans.
I embarked upon as an interesting side project. It took me a bit more time than I anticipated, but the result works for my use case. Because of that, I thought it worth sharing. However I would caution that my use case is not exactly of a commercial scale... so please heed the following obligatory warning:
**NOTE: this is not "production ready" code — if it works for you, then great, but use it after thorough testing, and with appropriate caution.**
There are some limitations to the rewrite opportunities it takes up, and it will almost certainly fail on complex materialized views composed of deeply nested queries.
The extension does not have extensive (actually: any) documentation, but the few test cases should make obvious to the inclined reader how it works. This is deliberate at this early a stage: I don't want to encourage uninformed adoption because of the possibility of data loss or incorrect query rewrites.
The extension is written against a Postgres 10.1 source tree.
Source code: https://github.com/d-e-n-t-y/pg_fdw_mv_rewrite
Questions or comments are very welcome.
denty.
From | Date | Subject | |
---|---|---|---|
Next Message | David Rowley | 2018-04-05 13:41:30 | Re: [HACKERS] Runtime Partition Pruning |
Previous Message | Tom Lane | 2018-04-05 13:27:47 | Re: typcategory for regconfig |