I've been waiting for "incremental view maintenance" (i.e. incremental updates for materialized views) but it looks like it's still a few years out.
Re:PostgreSQL 17
by whitepoplar on Thursday September 26, 2024 @01:13PM
(#41660826)
There's always the pg_ivm extension you can use in the meantime: https://github.com/sraoss/pg_ivm
Re:PostgreSQL 17
by isoprophlex on Thursday September 26, 2024 @04:11PM
(#41662733)
Wow, brilliant! I never knew this existed. Going to try this out tomorrow, first thing!
Unfortunately we use a cloud provider to host our databases, so I can only install limited extensions.
REFRESH CONCURRENTLY is already an incremental update of sorts although you still pay the price of running a full query.
Re:PostgreSQL 17
by JamesSwift on Thursday September 26, 2024 @03:22PM
(#41662161)
I'm a huge fan of views to serve as the v1 solution for problems before we need to optimize our approach, and this is the main thing that serves as a blocker in those discussions. If only we were able to have v2 of the approach be an IVM-view, we could leverage them much more widely.
Re:PostgreSQL 17
by garyclarke27 on Friday September 27, 2024 @06:16AM
(#41668445)
Agreed big disappointment that "incremental view maintenance" is taking so long to get into the core - despite several IVM extensions. For me this is by far the most important capability missing from Postgres.
Re:PostgreSQL 17
by 0cf8612b2e1e on Thursday September 26, 2024 @02:20PM
(#41661492)
I must be missing something because that feels easy to implement. A date seconds + random data in the same way as UUID4.
Where is the iceberg complexity?
In my understanding it was a timing issue with the UUIDv7 RFC not being finalized before the Postgres 17 feature freeze in early April. Shouldn't be an issue to get this in for Postgres 18, I think.
Re:PostgreSQL 17
by 0cf8612b2e1e on Thursday September 26, 2024 @05:02PM
(#41663352)
That would do it. I was mistakenly thinking v7 was done for months/years at this point.
Bit sad the UUIDv7 PR didn't make the cut just yet:
https://commitfest.postgresql.org/49/4388/