Re: Need guidance on partioning - Mailing list pgsql-admin

From M Sarwar
Subject Re: Need guidance on partioning
Date
Msg-id DM4PR19MB59789C1751A2410AC6F1943AD3EB2@DM4PR19MB5978.namprd19.prod.outlook.com
Whole thread Raw
In response to Need guidance on partioning  ("Wetmore, Matthew (CTR)" <Matthew.Wetmore@evernorth.com>)
Responses Re: Need guidance on partioning
List pgsql-admin
I am also trying to learn the partitioning decision while watching this thread.

Matthew,
Is it  a good idea to partition the table when it reaches 750 MB in size or 1 B rows or any other general rule?
Thanks,
Sarwar


From: Wetmore, Matthew (CTR) <Matthew.Wetmore@evernorth.com>
Sent: Wednesday, May 22, 2024 9:39 AM
To: srinivasan s <srinioracledba7@gmail.com>; pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Subject: Need guidance on partioning
 

Define large.

 

IMO, I don’t partition until 750M to 1B rows.

 

Maybe 500M is the table is heavily used or very wide.

 

Partitioning under those row counts without working knowledge can hinder performance.

 

From: srinivasan s <srinioracledba7@gmail.com>
Sent: Wednesday, May 22, 2024 5:04 AM
To: pgsql-admin@lists.postgresql.org
Subject: [EXTERNAL] Need guidance on partioning

 

Hello everyone,

 

I hope you are all doing well.

 

I am seeking guidance on how to implement partitioning in PostgreSQL.

 

We have a large table that currently does not have any partitioning, and we have two requirements for removing old data from this table. We are looking to create a new table with partitioning.

 

1. The first requirement is to delete all records from the table that are older than 18 months. I believe we can achieve this by using range partitioning on the timestamp column.

 

2. The second requirement is to remove data from the table when a user leaves the organization. We have the account ID and user ID in the same table.

 

Could someone please offer guidance on selecting the appropriate partitioning method (range, sub-partition, or composite)?

 

Additionally, not all queries use the timestamp column in the WHERE condition. Is it mandatory to use the partition key in the WHERE condition to benefit from partitioning? Can we create a composite index that combines the partition key column with other columns used in the WHERE clause? Would this be beneficial?

 

Thank you.

 

 

 

 

pgsql-admin by date:

Previous
From: "Wetmore, Matthew (CTR)"
Date:
Subject: Need guidance on partioning
Next
From: Ron Johnson
Date:
Subject: Re: Need guidance on partioning