Re: Large tables, updates, selects and varchars

From: <chrism778_at_gmail.com>
Date: Thu, 3 Apr 2008 10:32:03 -0700 (PDT)
Message-ID: <a6b3a16a-6796-4358-8fde-1809e4a80b77@m44g2000hsc.googlegroups.com>


On Apr 3, 10:22 am, mathewbutler <mathewbut..._at_yahoo.com> wrote:

> > We are partitioning with between 35 million and 60 million rows per
> > partition. This probably will not be the last change we are going to
> > make. There are likely to be future modifications.
>
> > It's going to store file paths and most queries will need to access
> > it. We chose VARCHAR2 because the size of the data will never exceed
> > 4000 chars, and we assumed that CLOBs were less efficient than
> > VARCHAR2s. Is this not the case?- Hide quoted text -
>
> > - Show quoted text -
>
> This doesn't answer your question, but if your O/S is POSIX compliant
> then file paths will be defined much shorter than what you have
> defined ( 255 characters from dim and distant memory ).
>
> I think you will need to consider;
>
> - your transaction mix ( the answer to your question will depend on
> the balance of inserts/updates/deletes and selects )

We will mostly do selects (90%) and inserts (10%). Updates will only happen when we add a new column. Deletes will almost never happen.

> - your database block size ( how many rows will fit onto a block, will
> you have significant row migration with the new column, and where this
> occurs will the additional work that Oracle needs to do be less that
> the alternative join )

This is the core issue I think. With the information I've given above, what will be the best solution? A separate table for each new column, or simply adding a column to the existing table and do an update.

> - space implications of any additional storage required, depending on
> the modelling approach

> - whether the approach adds or takes anything away from your systems
> simplicity and code maintainability, and if your proposed approach
> takes something away measure this against the gains.

Adding a column has the least impact on application design.

>
> It's not clear what you mean by update. ie: Whether you are concerned
> about the initial population of the new column for table entries, or
> the ongoing management of values in this column. In any case, remember
> that if you are modelling seperately you will also be storing
> 1+billion PK entries to enable you to find the new column.
>
> Hope this is some help.

The update is for the initial population. Received on Thu Apr 03 2008 - 12:32:03 CDT

Original text of this message