| From: | atma ram <atmaramkp(at)gmail(dot)com> |
|---|---|
| To: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
| Cc: | pgsql-general(at)lists(dot)postgresql(dot)org |
| Subject: | Re: Question on PostgreSQL Table Partitioning – Performance of Queries That Do Not Use the Partition Key |
| Date: | 2025-11-26 16:29:22 |
| Message-ID: | CAA1Yw986mfAV8MijYz+nGgCgcbKFiEm7baDazPo=sB=QvaO7Zg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi Laurenz,
Thank you for your reply.
The table size is 1.6TB and not GB. My bad.
The queries using primary key or partition key will be definitely improved.
My question is 20 queries that do not use partition key and use only index.
Since this is a critical OLTP system, even if there is a slight chance that
those 20 queries will degrade performance, then we may not go with
partition and find any alternative ways. Hence the question.
We can do a POC and find out. But wanted to check if there are any existing
benchmarking, explanations or details available before we do POC. Is it
worth it?
Thanks,
Atma
On Wed, Nov 26, 2025 at 9:05 PM Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
wrote:
> On Wed, 2025-11-26 at 18:50 +0530, atma ram wrote:
> > We have a table that is approximately 1.6 GB in size. Query performance
> has started to degrade.
> > Although we have multiple indexes, the large table size is still causing
> performance issues.
>
> 1.6 GB is too small for partitioning.
>
> > We are planning to partition the table on the primary key. This is an
> OLTP system, and there
> > are around 100 queries that access this table. About 80 of these queries
> use the primary key
> > and will therefore benefit directly from the partition key once we
> implement partitioning.
>
> If a table uses the primary key, I cannot see how it could cause
> performance issues.
>
> I expect that these queries will become slightly *slower* if you partition
> the table,
> because of the overhead of partition pruning.
>
> > However, the remaining 20 queries do not use the primary key; they rely
> on other indexed columns.
> > Our question is: after partitioning the table, and after creating the
> necessary indexes on
> > each partition, what happens to the performance of those 20 queries that
> do not use the partition key?
> > – Will their performance degrade?
>
> Very likely yes, though perhaps only slightly.
>
> > – Will it remain the same as before partitioning?
> > – Is there any chance it will improve?
>
> That is unlikely, but possible, for example if the query can choose a
> faster sequential
> scan on some partitions, instead of a slower index scan on the whole table.
>
> > Is there any benchmarking, documentation, or reference material that can
> help demonstrate
> > how partitioning will affect the performance of the 20 queries that do
> not use the partition key?
> > This information is critical for us before proceeding with the
> partitioning strategy.
>
> The only good way to tell is to implement it on a test database and try it.
>
> But as I said initially, with a 1.6 GB table patritioning is pointless.
>
> Examine the performance bottleneck with EXPLAIN (ANALYZE, BUFFERS) and try
> to improve
> your queries.
>
> Yours,
> Laurenz Albe
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Ron Johnson | 2025-11-26 16:47:38 | Re: Question on PostgreSQL Table Partitioning – Performance of Queries That Do Not Use the Partition Key |
| Previous Message | Rich Shepard | 2025-11-26 16:10:54 | Re: Selecting all variations of job title in a list |