Thread: How to best partition table

How to best partition table

From
"Danny Lo"
Date:

Thanks Jasen for  your response to my previous question on table partitioning on query performance.

 

A related question is how I should actually setup the table partition to best optimize performance.

Unfortunately, my table of 20 columns will be about 1-1.5TB, much larger than 20GB.

 

Specifically, should I be using a range partition or list partition or maybe both (ie further partitioning a child table?) and how many partitions should I actually use.

 

The table contains data for two years on a list of stocks and their stock attributes (eg prices etc) at a particular date and time.

The majority of the queries run on this table will include the stock code & date in the where clause.

 

For eg:

 

select * from tablename

where stock_code = ‘IBM’

and date = ’17-Oct-2009’

 

If I were to partition by month (24 tables over 2 years), I would still have tables around 45GB. However, I assume there is a balance between performance and administrative overhead.

 

Thanks again.

Re: How to best partition table

From
Jasen Betts
Date:
On 2010-04-14, Danny Lo <lo.dannyk@gmail.com> wrote:
> This is a multi-part message in MIME format.
>
> ------=_NextPart_000_001F_01CADBC3.17BD5470
> Content-Type: text/plain;
>     charset="US-ASCII"
> Content-Transfer-Encoding: 7bit
>
> Thanks Jasen for  your response to my previous question on table
> partitioning on query performance.
>
>
>
> A related question is how I should actually setup the table partition to
> best optimize performance.
>
> Unfortunately, my table of 20 columns will be about 1-1.5TB, much larger
> than 20GB.
>
>
>
> Specifically, should I be using a range partition or list partition or maybe
> both (ie further partitioning a child table?) and how many partitions should
> I actually use.

that depends on what sort of queries you will use.