From: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
---|---|
To: | Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr> |
Cc: | PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: pgbench - allow to create partitioned tables |
Date: | 2019-07-23 22:16:35 |
Message-ID: | CANP8+jKU1Wp3tvO7guugzXXy5-JFoMQUWxwpdOcuTqrA_W0q1A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, 23 Jul 2019 at 19:26, Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr> wrote:
>
> Hello devs,
>
> While doing some performance tests and reviewing patches, I needed to
> create partitioned tables. Given the current syntax this is time
> consumming.
>
Good idea. I wonder why we didn't have it already.
> The attached patch adds two options to create a partitioned "account"
> table in pgbench.
>
> It allows to answer quickly simple questions, eg "what is the overhead of
> hash partitioning on a simple select on my laptop"? Answer:
>
> # N=0..?
> sh> pgench -i -s 1 --partition-number=$N --partition-type=hash
>
Given current naming of options, I would call this
--partitions=number-of-partitions and --partition-method=hash
> # then run
> sh> pgench -S -M prepared -P 1 -T 10
>
> # and look at latency:
> # no parts = 0.071 ms
> # 1 hash = 0.071 ms (did someone optimize this case?!)
> # 2 hash ~ 0.126 ms (+ 0.055 ms)
> # 50 hash ~ 0.155 ms
> # 100 hash ~ 0.178 ms
> # 150 hash ~ 0.232 ms
> # 200 hash ~ 0.279 ms
> # overhead ~ (0.050 + [0.0005-0.0008] * nparts) ms
>
It is linear?
--
Simon Riggs http://www.2ndQuadrant.com/
<http://www.2ndquadrant.com/>
PostgreSQL Solutions for the Enterprise
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2019-07-23 22:25:34 | pgbench tests vs Windows |
Previous Message | Tom Lane | 2019-07-23 22:11:58 | Re: stress test for parallel workers |