| From: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> | 
|---|---|
| To: | pgsql-hackers(at)postgresql(dot)org | 
| Subject: | Re: The Future of Aggregation | 
| Date: | 2015-06-09 14:10:29 | 
| Message-ID: | 5576F3D5.1040204@2ndquadrant.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Hi,
On 06/09/15 12:58, David Rowley wrote:
>
> These are things along the lines of:
>
> 1. Parallel Aggregation (computes each aggregate state in parallel
> worker processes and then merges these states in serial mode)
> 2. Aggregate push-down / Aggregate before join (requires passing
> partially computed aggregate states between executor nodes)
> 3. Auto-updating Materialized views (ones which contain aggregate functions)
> 4. Foreign table aggregation
> 5. Dependant Aggregates (I talked about earlier here ->
> http://www.postgresql.org/message-id/CAKJS1f8ebkc=EhEq+ArM8vwYZ5vSapJ1Seub5=FvRRuDCtFfsQ@mail.gmail.com)
>
> Items 1-4 above I believe require support of "Aggregate State
> Combine Support" -> https://commitfest.postgresql.org/5/131/ which I
> believe will need to be modified to implement complex database types
> to backup our internal aggregate state types so that these types be
> properly passed between executor nodes, between worker processes and
> perhaps foreign data wrappers (maybe just postgres_fdw I've not
> looked into this yet)
I think yet another use case that might benefit from this would be 
'memory-bounded hash aggregate'. Jeff Davis was working on a different 
approach that worked quite well for fixed-length states, but for 
handling custom states in 'internal' data type, the (de)serialization 
seems like a must for this use case.
regards
--
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2015-06-09 14:26:40 | Re: Aggregate Supporting Functions | 
| Previous Message | Kevin Grittner | 2015-06-09 13:53:47 | Re: Aggregate Supporting Functions |