Skip to Content
Author's profile photo Yasemin ULUTURK

Filling OLAP Cache using Broadcasting for Performance Improvement

For some reports that process a huge amount of data,  the users may go mad about the runtimes of queries. For some extend we can improve the performance by playing with the design of the datasource, dataflow, the queries or the aggregates. In this document I will explain how filling OLAP Cache using broadcasting affects the performance of a query.

For this aim, a query which has a long runtime is selected: ZTEST_Q0001. For filling the OLAP cache,  BEx Broadcaster is selected in query design menu as seen below:

201407_01.PNG

When we select BEx Broadcaster, an html page is opened in the browser. If no broadcasting setting is made beforehand, you will see the screen as below:

201407_02.PNG

Select Create New Setting. You will see a pane below where a list of possible alternatives for broadcasting is made:

201407_03.PNG

When “Fill OLAP Cache” option is selected, the output format will automatically be OLAP Cache Content

201407_04.PNG


Save the broadcast giving the technical name and description:


201407_05.PNG

Now it is seen in the main browser and can be changed anytime:


201407_06.PNG

The next step will be creating a variant to schedule this broadcast. For this aim se38 transaction is used to run the program: ”RSRD_BROADCAST_STARTER”. Select Variants and click on Display button:

201407_07.PNG

Create a variant for the program by clicking on the create button next to the Variant field:

201407_08.PNG

Give a name to the variant and create it.


201407_09.PNG

Set the technical name of the setting same as the technical name given in broadcast definition in the previous step. Click on Attributes button and enter a description:

201407_10.PNG


Save the variant. Go back to se38 to run RSRD_BROADCAST_STARTER. Select “With Variant” option and select the variant just created in the previous step. The program can directly be run manually or can be scheduled using execution in background.


201407_11.PNG

You can schedule this job everyday for those queries that have a long run time.  This process can also be included in a process chain. I experienced around 75% improvement on a query which is built on an infocube with 50 million records. You can also measure the performance improvement running the query with RSRT using cache and not using cache and analyze the statistics.

I hope it gives an idea for performance improvement.

Regards

Yasemin Uluturk


Assigned Tags

      26 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Suman Chakravarthy K
      Suman Chakravarthy K

      Nice step by step Yasemin ULUTURK 🙂 . This is one of the major performance improvement technique to be followed. Thanks for sharing.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Thank you very much for your nice comment Suman. your document on how to optimize reporting performance inspired me to write this document 🙂

      Author's profile photo Chandra Janardhansudhir Kunar
      Chandra Janardhansudhir Kunar

      Hi Yasemin,

      Thank you for your wonderful document. It is of great help to me.

      i will implement it soon and add my comments.

      Thanks again,

      Sudhir.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Sudhir,

      I am looking forward to your implementation results, please share with us. Thank you.

      Author's profile photo Krishna Chaitanya
      Krishna Chaitanya

      Simply superb.  Thanks for sharing 🙂

      Regards,

      Krishna Chaitanya.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Thank you for your nice comment Krishna 🙂

      Author's profile photo Raman Korrapati
      Raman Korrapati

      Hi Yasemin,

      Reports performance wise its most useful information and good presentation.

      its easy to understand the concept.

      Thanks for sharing.

      As my guess BEx forum will be right place to publish..

      Thanks

      Raman

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Raman,

      I just realized that I published it in the wrong space. Moderator has moved to its correct place. Thank you for your very nice comment.

      Author's profile photo Suman Chakravarthy K
      Suman Chakravarthy K

      Hi Yasemin ULUTURK,

      It's not moderator. I have moved to BEx space. I think you have created your document in such a way that anybody can edit it. I get edit option as well. If you don't want to make it to be editable by public, you may just change it.

      Regards,

      Suman

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Suman,

      I got a message that it was moved by the moderator. I will leave it as it is so that if anyone has some experience to share or something to change, then s/he can edit and make it more useful. Thank you 🙂

      Author's profile photo Former Member
      Former Member

      Easy to follow, funny to read, just do it documents.

      Thanks to share Yasemin. 🙂

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Fatih, it is nice to hear from you 🙂 Thank you...

      Author's profile photo Kodanda Pani KV
      Kodanda Pani KV

      Hi Yasemin,

      good presentation about performance and thanks for sharing.

      Thanks,

      Phani.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Thank you Phani...

      Author's profile photo Antony Jerald J
      Antony Jerald J

      Hi,

      Thanks for sharing..it was really useful.

      In sales function, there's a bex query which executes for long time and finally gives out time out error.  The sales process chain runs at every 4 hours.  Do I need to schedule the olap cache broadcaster for every 4 hours to ensure that we'll get 4 hours sales' update?

      Kindly suggest.

      Regards,

      Antony Jerald.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Antony, thank you for liking the document. You need to schedule that every four hours so that it will be updated. You can also include this step in the process chain. You can create a program triggering an event for broadcasting, and in the process chain you can call this program. Regards

      Yasemin...

      Author's profile photo Antony Jerald J
      Antony Jerald J

      I couldn't find “Fill OLAP Cache” option in the BEx broadcaster.  Only Broadcast-Email option is visible in the broadcaster.

      Could you please tell me how to get the option for filling olap cache?  Is there any additional settings I need to do?  Kindly suggest.

      Capture1.JPG

      Regards,

      Antony Jerald.

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Antony,

      Please take a look at Note 760775.

      Regards

      Yasemin...

      Author's profile photo Former Member
      Former Member

      Hi Yasemin,

      I have several queries and i created multiple variants.

      How to add this in Process chain.Which process type to be used

      Author's profile photo Yasemin ULUTURK
      Yasemin ULUTURK
      Blog Post Author

      Hi Ben,

      You can directly add a process with type: ABAP Program. Assign RSR_BROADCAST_STARTER as the program name and give its variant. You can add as many processes for each query.

      Regards

      Yasemin...

      Author's profile photo Former Member
      Former Member

      Good day Antony,

      I am having the same problem, did you manage to find a solution.

      Regards
      Lucien

      Author's profile photo Former Member
      Former Member

      Hi Yesemin

      Very Nice information

      thanks.

      regards,

      Verma

      Author's profile photo Former Member
      Former Member

      Good Information Yasemin..!

      Author's profile photo Aparajit Banik
      Aparajit Banik

      Hi Yasemin
      You have always helped me  when ever i have put my queries in the forum.

      And that along with Rama,Anshu, ,Suman, kodanda ,

      you have been always patient in guiding and making us learn from our mistakes and also   giving us new ideas.
      As SAP BI/BW is large enough to  give a brain storm to juniors, presence of seniors like you is always a thanks giving everyday.
      Thanks for sharing this KT. I am bookmarking it to read and keep a note of this. 🙂

      Regards, Aparajit

      Author's profile photo Shwetha Bangera
      Shwetha Bangera

      Really useful document, was not aware of this option. Will surely implement this in our landscape!

      Author's profile photo Shawn Huang
      Shawn Huang

      Hi experts,

      I'm trying to follow the steps, but when I tried to "SAVE", nothing happened, no popup appears to enter Technical Name, would appreciate if anyone could help on this? thanks in advance.

      Shawn