OBIEE Hints from Answers — Oracle Analytics

Oracle Analytics Cloud and Server

Welcome to the Oracle Analytics Community: Please complete your User Profile and upload your Profile Picture

OBIEE Hints from Answers

Received Response
747
Views
13
Comments
Uttam.Singh
Uttam.Singh Rank 4 - Community Specialist

One of our report query needs a performance improvement. While analyzing all the indexes and data model design the only option left to use database Hints (Parallel) as it improves the query performance by 50%. We did not want to add hint at the RPD physical table as it will change the Optimizer plan for all the reports. Is there a way to add the hint on a particular adhoc report so that we do not have to perform any regression testing for all other existing reports using the same fact table?

We tried using EVALUATE('/*+ PARALLEL (<Table Id>) */ %1',"Time"."Year") but the hint is getting added somewhere in between the 10 other columns and not at the front of the "Select" clause. If there is a way to put this column at the top it would server the purpose of hint. Please advise.

pastedImage_0.png

«1

Answers

  • ArijitC
    ArijitC Rank 6 - Analytics Lead

    Check this blog section 1.3 if this helps.

    Let's OBIEE: Using Hints in OBIEE RPD and Answers

    Thanks

    Arijit

  • Uttam.Singh
    Uttam.Singh Rank 4 - Community Specialist

    Thanks Arijit but this does not help as you can see from the screenshot I attached in my post. Hint is not coming before the first column.

  • ArijitC
    ArijitC Rank 6 - Analytics Lead

    Can you copy that logical SQL and change the column position to make the hint column as first column. Then try to add that back in the advance tab(New Analysis). See if that helps. I will play in my environment to see if I can make that work. I have always added parallel hint in RPD. I will get back to you.

    Thanks

    Arijit

  • Uttam.Singh
    Uttam.Singh Rank 4 - Community Specialist

    Thanks Arijit - I did try that option too but the Physical Query is not getting changed. I tried modifying the XML too but that didnt help either. I guess Oracle says that HInts can only be added in RPD and not in answers. I wonder if there is a way to change the order of the columns.

    Thanks for your help - please do let me know if you were able to succeed.

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    Pardon me but how is marking that answer helpful to anyone? And how is that the "correct" answer?

  • Uttam.Singh
    Uttam.Singh Rank 4 - Community Specialist

    As you might have noticed, I am a newbie and it was in error..

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    Spend enough time in here and you'll see that my assumption was 100% spot-on

  • ArijitC
    ArijitC Rank 6 - Analytics Lead

    I was able to make it work(though not consistently)  when there is no measure columns. Seems like OBI sends sum, avg etc first before the columns. So, solution in the blog only works for selected cases  not always.

    So that gives you 2 choices.

    1. setting a alias table for the physical table and set hint on it. In that way you don't have to test all the existing other reports.

    2. Use direct database connection. But direct DB connection has its issue with security.

    Thanks

    Arijit

  • Robert Angel
    Robert Angel Rank 8 - Analytics Strategist

    Looking at the code that you have not 'redacted' I see an awful lot of data type conversions going on, particularly around your dates.

    You do not show your where clause, but if that is similarly reliant on converted data types then I would suggest that you need to invest more time in ETL to solve your underlying performance issue. Looking at what must be measures and what are time attributes in your code they obviously both come from the same table.

    I have been brought to a number of projects to solve 'performance' issues often to find myself banging my head on the low hanging fruit as fundamentals like time dimensions were being calculated via heavily non-performant views.

    The best solution is a well formed data warehouse, joins via surrogate keys ,facts, aggregate facts, dimensions.

    If you treat OBIEE as a tool to "hang" SQL then you are not getting the best out of the tool.

    If you really want to solve your performance issue then move away from practices like this and move towards OBIEE best practise.

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    Amen. Though you're probably preaching to a wall as usual