Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Big Tables? Real Life Examples.....
Ian Turner wrote:
> Is there a practical limit on the size of database tables in Oracle?
No.
> Reason I ask is I'm getting told that it is impossible to hold all the
> values I want - around 150million records - for performance reasons.
Bullshit.
> I've asked our DBA to create some test tables and fill them full of sample
> data to see if we can get some example query times - but it would be useful
> to have some real world examples.
>
This is what is typically possible when using partitioning and local bitmap indexes (typical warehouse fact table design in Oracle).
An actual snippet from a SQL*Plus session:
==
SQL> select count(*) from x25_calls;
COUNT(*)
Elapsed: 00:00:36.91
==
Note that Oracle does not cache the number of rows in a table somewhere. It is all dynamic - i.e. the actual row count of committed rows in the table as this specific point in time.
Why a SELECT COUNT(*) ? - because it illustrates that CBO is not stupid as a select count usually hits every single "row" in the database to do the count. (except in this case the CBO uses the local bitmap indexes instead and PQ the count processes using fast full index scans)
Performance in Oracle is an inverse function of stupidity and ignorance. Not so nice to say it maybe, but it is a fact. A correctly configured Oracle instance with a sound logical db design, correctly implemented physically, with a correctly coded front-end - those are the 3 essential requirements for a performant and very scalable Oracle instance.
But then designers know nothing about 3NF these days design the logical db and architecture, and developers that know jack nothing about Oracle implement the physical database and proceed to turn on the fan and shovel manure, calling it writing code.
-- BillyReceived on Mon Jul 04 2005 - 08:52:43 CDT
![]() |
![]() |