Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Question on selecting rows in table

Re: Question on selecting rows in table

From: Billy Verreynne <vslabs_at_onwe.co.za>
Date: Tue, 05 Nov 2002 08:36:33 +0200
Message-ID: <aq7ovl$jbn$1@ctb-nnrp2.saix.net>


JohnO wrote:

> Is there a column like "ROWID", but
> numbered so I can do math on it, or a function of ROWID that will allow a
> select conditional to select mutually exclusive, collectively exhaustive
> portions of the table?

This is what Oracle PQ itself uses.. it adds a "ROWID between :1 and :2" to the WHERE clause...

But how it goes about determining what rowid ranges to supply, I've got no idea as I've never really looked at that...

But I'm curious as to why you would want to perform external parallel processing. Why?

RDBMS data should ideally be processed as data sets. Not as individual rows. That is the power of SQL. Accessing and manipulating data sets.

If data sets want to be processed in parallel, then you need to give careful attention to locking. Grab 10,000 rows at a time, process, validate, update, whatever. If properly written, you can spawn 10 of these in parallel. Or even a 100. Depending on the load that the server platform can carry. Depending on the amount of data to be processed. This method I've seen work and work well in the telecoms environment when calls are processed for billing with millions of calls per day.

If you simply want to troll through the big table in parallel for reporting purposes, the same can very likely be done using plain SQL and PQ.

--
Billy
Received on Tue Nov 05 2002 - 00:36:33 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US