| From: | David Rowley <david(dot)rowley(at)2ndquadrant(dot)com> | 
|---|---|
| To: | Darafei Komяpa Praliaskouski <me(at)komzpa(dot)net> | 
| Cc: | PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org> | 
| Subject: | Re: All Taxi Services need Index Clustered Heap Append | 
| Date: | 2018-03-03 14:53:57 | 
| Message-ID: | CAKJS1f-dCSYDvMdz=6NCE2KYQp-38sdnBCBL8MHpuMFQ_iRrTA@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On 3 March 2018 at 05:30, Darafei "Komяpa" Praliaskouski <me(at)komzpa(dot)net> wrote:
> Our options were:
>
>  - partitioning. Not entirely trivial when your id is uuid. To get visible
> gains, we need to make sure each driver gets their own partition. That would
> leave us with 50 000(+) tables, and rumors say that in that's what is done
> in some bigger taxi service, and relcache then eats up all the RAM and
> system OOMs.
It's a good job someone invented HASH partitioning then.
It would be interesting to hear how your benchmarks go using current
master + the faster partition pruning patchset [1].  Currently, HASH
partitioning does exist in master, just there's no partition pruning
for the non-matching partitions, which is why you need [1].
I think trying with something like 500-1000 partitions might be a good
place to start.
[1] https://www.postgresql.org/message-id/0f96dd16-f5d5-7301-4ddf-858d41a6cbe3@lab.ntt.co.jp
-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tels | 2018-03-03 14:56:14 | Re: 2018-03 Commitfest Summary (Andres #1) | 
| Previous Message | Tomas Vondra | 2018-03-03 14:52:40 | Re: PATCH: logical_work_mem and logical streaming of large in-progress transactions |