BusinessObjects Board

Performance Issue

Hi all,
I have performance issue in executing a query and returning the result set. While executing the query in toad, i get first 500 rows within 10 seconds. But to return the entire result set it takes minutes together.

Now, Is there an option to make BO to fetch these first 500 rows and display them in the report, than waiting for the entire result set instead?

I have tried changing the array fetch size to 500 and array bind size (to 1000) in universe (not sure if this is the right approach) but no luck.

Please suggest me an option that i can try with.

Thanks in Advance,
Saravanan


v.saravanan (BOB member since 2009-07-03)

No :).

You need to look at optimising the query, speak to your DBA.


Mak 1 :uk: (BOB member since 2005-01-06)

Thanks, But it was just at the end of the tuning, i was able to see atleast the result set (the first 500 or so) in toad


v.saravanan (BOB member since 2009-07-03)

How many rows are you bringing back, maybe you need to look at partitioning the tables, if traditional indexing has not helped you…?


Mak 1 :uk: (BOB member since 2005-01-06)

I join 7 tables and all have 10 millions of records. And at the end of joins and filtering, i get 1.5 million of records.

I have tried creating indexes, forced db to use indexes, tried changing the join fashions. At end of all these i was able to just see the first set of rows.

Regards,
Saravanan


v.saravanan (BOB member since 2009-07-03)

Sounds more like a data dump to me… :? .

What are you doing with all these records?

I would be surprised if you could even get Webi to display that many.


Mak 1 :uk: (BOB member since 2005-01-06)

Try to use Hints in the select

select /*+ FIRST_ROWS(1) */
col1,col2…
from
table1,table2.

This Hint will fetch first 500 rows very fast and will take time to fetch the rest ,I think for your req try this one.(Use custon SQL in Webi with hint and if it works encorporate in universe)
Note : Hint has to be after select and before column and please use the exact syntax else it will ignore the hint.

Thanks,
Madhu.


madhu@P (BOB member since 2008-08-04)

I would like to see what he plans to do with the 1.5 million records he retrieves… :stuck_out_tongue: .

I have a feeling that Webi won’t display them, due to memory issues.


Mak 1 :uk: (BOB member since 2005-01-06)

would select /*+ Set Table Count 8 */ works in a Custom SQL Webi Query? I am using Sybase.
OR is there any other option in BO XIR2?
Thanks…


JohnJustus :us: (BOB member since 2007-06-25)

Yes, but you should avoid hints wherever possible…
You can also create a universe object containing this, you should use it as the first column in the Select, in the query panel.


Mak 1 :uk: (BOB member since 2005-01-06)

Thanks Mark. Is there any specfic reason to avoid Hints in the BO Query?

What would be the Object definition for the universe if I want to create an universe object?


Select /*+ Set Table Count 8 */ 
table.colname
From
....

Is this Correct?


JohnJustus :us: (BOB member since 2007-06-25)

I believe you just put this in the Select part.

/*+ Set Table Count 8 */ 

As more data is loaded in and the database is maintained hints can actually cause the queries to run slower. What runs quick today, won’t necessarily run quick over time.


Mak 1 :uk: (BOB member since 2005-01-06)

OK, Thanks Mark.
One of my Webi report runs faster with Hints. We are just returning yearly data. With out this hint the query runs forever.
I think as per your suggestion its better to resolve it in the database level rather than using the Hints. A temporary solution with Hints only for today for my users, thats all.
Thanks…


JohnJustus :us: (BOB member since 2007-06-25)

Hi Mark,

Just an update. My universe designer has told me that he has added the Set Table count some where in the Edit connection in the universe itself.
That means every query will run faster.
Is it advisable?
Thanks…


JohnJustus :us: (BOB member since 2007-06-25)

Hi Mark,

You are correct. If more queries run, then the database chokes up and it affects all queries which are running against the database.

Now we had to remove the hints from database, universe and also from the reports. The set table count utilizes almost every resources of the database.
Thanks.


JohnJustus :us: (BOB member since 2007-06-25)

Toad returns the first 500 rows by default, it can do this because it doesn’t know what you want to do with the data so it doesn’t need to fetch the entire result set before it displays data.

BO on the other hand needs the entire resultset before it can begin to create the report. It will begin to build the cube for the report as it fetches data but it cannot actually create the report until it has all the data.

You cannot compare performance in Toad and performance in BO, too many differences in what is happening.


jwhite9 :us: (BOB member since 2006-07-28)