Performance tuning using VARRAY or PL/SQL table.
sreeseJun 11 2008 — edited Jun 12 2008We've got a query taking two hours to execute and I've been asked to tune this process. Executed the explain plan and there's nothing more I can do with the query. I've worked with the DBAs and have had no success with /*+ PARALLEL */ processing against these tables. Yes, this was after the tables were configured for parallel processing.
My next course of action - submit processing in chunks using DBMS_JOB (9i doesn't have DBMS_SCHEDULER). Inside the existing PL/SQL package we have two cursors, the first contains a list of approx 500 values. These five hundred values are then passed into second cursor.
Does anyone have good examples of extracting values at a specific indexed value. i.e. I want the value of the resultset where the index is 100, 200, 300, 400, and 500. Using these values along with the min/max, I can break up my processing to be executed simultaneously.
Does anyone have a good example of extracting data elements at specific indexed values using VARRAYs or PL/SQL tables? Am I overthinking this or is there an easy method to get this data?