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

Home -> Community -> Mailing Lists -> Oracle-L -> RE: SQL tuning help

RE: SQL tuning help

From: Sergei <sergei_at_netflip.com>
Date: Tue, 26 Nov 2002 13:59:01 -0800
Message-ID: <F001.0050CBE9.20021126135901@fatcity.com>


Let me clearfy.
I am running Oracle 8.1.6 on solaris 8  

Fastcash has 50M record
tmp_brian_metareward1 has 600 records.  

I was able to tune the query so it runs fast now. I created a combined index on subsite_id and attempt and I added a hint  

UPDATE tmp_brian_metareward1 tmp

   SET offers_seen = (
   SELECT /*+ INDEX(f IN_FASTCASH_SIDATMP) */ count(f.fastcash_id) FROM metareward.fastcash f

                             WHERE f.subsite_id = tmp.subsite_id
                               and attempt >= trunc(sysdate-1)
                               and attempt < trunc(sysdate)
                             group by tmp.subsite_id);
 

I am still having a problem with a similar query below: IN_FASTCASH_SIDFIDVER - index is for subsite_id fastcash_id and verified  

UPDATE tmp_brian_metareward1 tmp

   SET revenue = (SELECT /*+ INDEX(f IN_FASTCASH_SIDFIDVER) */ sum(f.mr_amount)/100 FROM metareward.fastcash f, metareward.transaction_fastcash tf

                             WHERE f.subsite_id = tmp.subsite_id
                               and f.fastcash_id = tf.fastcash_id
                               and f.verified >= trunc(sysdate-1)
                               and f.verified < trunc(sysdate)
                             group by tmp.subsite_id);
 
 
transaction_fastcash table has 2.5M records
fastcash table has                   50M record
 
 

Thank you
Sergei    

-----Original Message-----
Jerome Contr NCI
Sent: Tuesday, November 26, 2002 12:04 PM To: Multiple recipients of list ORACLE-L  

Sergei,
How many records in each table? What indexes are in these tables? What version of Oracle?
What do you mean by 'began to hang'?
I'd try making the attempts in the WHERE clause into a Between. I'd also try grouping by f.subsite_id.
You could always throw a Rule hint at it and see what happens. Jerry Whittle
ACIFICS DBA
NCI Information Systems Inc.
jerome.whittle_at_scott.af.mil
618-622-4145
-----Original Message-----
Hello everybody,
I have the following query that runs every week. UPDATE tmp_brian_metareward1 tmp
  SET offers_seen = (SELECT count(f.fastcash_id) FROM metareward.fastcash f

                             WHERE f.subsite_id = tmp.subsite_id 
                               and attempt >= trunc(sysdate-1) 
                               and attempt < trunc(sysdate) 
                             group by tmp.subsite_id); 
This week it began to hang and I can't figure out why. No changes were made to a database. Please advise me on how I can tune it, which hints to add, or anything else I can do.
Thank you
Sergei

--

Please see the official ORACLE-L FAQ: http://www.orafaq.com
--

Author: Sergei
  INET: sergei_at_netflip.com

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Tue Nov 26 2002 - 15:59:01 CST

Original text of this message

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