Using hint in hyperion query
hi
i m using hyperion verion 9.3.1.2 ..
and i have problem where given query in request tab is taking lot of time to execute.
i took the query log also saw the explain plan of query..
when i chnged the index on which the query is executing (using hint) on sql promt the response time was improved drastically.
please can any one let me know if i can make ue of that hint in hyperion ????
thanks
tushar
If you are talking about Hyperion Interactive Reporting (IR) you can add hints. One quick way is to add a computed column to your request line and make it your first item requested. Put the hint in the computed item and process the query. If you want to do it another way, let me know if you are using IR.
Similar Messages
-
Need to use Hint for Select Query 11g
Hi,
I have a select query which is fetching data from multiple table.
I just need 10 or less rows, already I m using rownum <=10
Could you tell which is the better choice for using HINT.
/*+ FIRST_ROWS(10) */ (or) /*+ all_rows */
Thanks.On Oracle 11.2.0.3 and 11.1.0.7 on my test table with an ORDER BY in the query, I found FIRST_ROWS using the index to get sorted rows and ALL_ROWS retrieving 10 rows from a full scan and then sorting them.
On Oracle I didn't find any difference in plan on a different, physically smaller, table.
For the ALL_ROWS version the optimiser already knows that there will only be 10 rows returned.
The performance difference: As usual, only use FIRST_ROWS if you actually intend to fetch less than the full data set. If you intend to fetch all 10 rows, use ALL_ROWS, which should be the default (taken from the optimizer_mode system parameter). -
What is the disadvantage of using hints in query
hi all,
i am report developer, in my project we were using hits in the query ... so that the query performance has improved ..
my question is if we use hints in the query will it give any effects.. means to say instead of using hints we can make use of execution plan..
what is the use of execution plan i don't know.. but i have an ideal about it .. if we change the execution plan then that will be use full i think
please reply me,, if am wrong please correct me.. am not that much good at execution plan and hints in oracle..
please tel me the difference between hints and execution plan and which one is better ?
Thanks
RajaHint are used to bias the execution plan of a query. So there is no 'which is bettter'. Hints may be used to generate a different execution plan, but you can't predict how an execution plan looks like in the end. This decision is done by the db engine.
It best to start without any hints and let the query optimizer do the work. For queries you feel run to slow you can try to give hints and see if your assumption is correct (when the execution time is faster with hints).
On the other side your question is not related to jdev. You may ask the question in the {forum:id=75} forum
Timo -
Using TOAD or Hyperion to Query SAP BW?
Is it possible to use TOAD or Hyperion Interactive Reporting Studio to query SAP BW tables? I would really like to be able to use the SAP BW infocubes but not be tied to BEx. Is this possible?
yes it is possible to use TOAD or Hyperion Interactive Reporting Studio to query SAP BW tables.you would be able to use the SAP BW infocubes not be tied to BEx as BW will be the backend and TOAD or Hyperion Interactive Reporting Studio will be the front end for it.
-
Tuning query without using hint
Hi,
i want to change the plan of a query without using hint.
Also i want to use the plan that hint generate in my original query.
My db is a 11g.
How can i do this?
tnxYou can use SQL Plan Manager. You might find this interesting:
http://blogs.oracle.com/optimizer/entry/what_should_i_do_with_old_hints_in_my_workload
The link above basically suggests these steps:
1. Run the query with the hints, then
2. Take the plan from #1 and associate its SQL plan baseline with the query with no hints
3. Remove the hints for that query in the code and start capturing and evolving plans for the un-hinted query -
How to use hint on with clause query
Hi all,
I have a query and it consits full of tabs with WITH clause. Top level I am just selecting all the tabs (queries with WITH clause) by saying select * from tab1,tab2,.....so on .
Now my question is If I want to use hint on my SQL can I use the same by using tab1,tab2...
tab1, tab2 are not actually tables ....each tab represents one SQL with WITH clause.
Please let me know if there is any confusion on my post.What's stopping you from trying it yourself?
Post your results here to help others. -
Index not used in a simple query
Hi all,
I have a query which is using only 2 tables linked with an indexed column, i'm surprised that the 2 tables are not using index and they are full scanned. here is some details:
Table a: T1 (col11 number, col12 varchar2) indexed on col11 (primary key): rows number=4 millions indexe: idx1 on col11
Table b: T2 (col21 number, col22 varchar2) indexed on col21 (primary key): rows number=3 millions indexe: idx2 on col21
select a.col12, b.col22 from T1 a, T2 b where a.col11=b.col21
The execution plan is:
Operation Object Name Rows Bytes Cost Object Node In/Out PStart PStop
SELECT STATEMENT Optimizer Mode=ALL_ROWS 3 M 32356
PX COORDINATOR
PX SEND QC (RANDOM) SYS.:TQ10002 3 M 67 M 32356 :Q1002 P->S QC (RANDOM)
HASH JOIN 3 M 67 M 32356 :Q1002 PCWP
PX RECEIVE 3 M 20 M 7376 :Q1002 PCWP
PX SEND HASH SYS.:TQ10001 3 M 20 M 7376 :Q1001 P->P HASH
PX BLOCK ITERATOR 3 M 20 M 7376 :Q1001 PCWC
TABLE ACCESS FULL T2 3 M 20 M 7376 :Q1001 PCWP
BUFFER SORT :Q1002 PCWC
PX RECEIVE 3 M 44 M 24708 :Q1002 PCWP
PX SEND HASH SYS.:TQ10000 3 M 44 M 24708 S->P HASH
TABLE ACCESS FULL T1 3 M 44 M 24708 ThanksHi Herald,
Thanks for your reply
when selecting only the columns which are indexed, it is using the index
select a.account_link_code_n, b.account_link_code_n from gsm_sims_master a, gsm_service_mast b
where a.account_link_code_n=b.account_link_code_n
See the execution below:
Operation Object Name Rows Bytes Cost Object Node In/Out PStart PStop
SELECT STATEMENT Optimizer Mode=ALL_ROWS 3 M 11051
PX COORDINATOR
PX SEND QC (RANDOM) SYS.:TQ10002 3 M 44 M 11051 :Q1002 P->S QC (RANDOM)
HASH JOIN 3 M 44 M 11051 :Q1002 PCWP
PX RECEIVE 3 M 20 M 7376 :Q1002 PCWP
PX SEND HASH SYS.:TQ10001 3 M 20 M 7376 :Q1001 P->P HASH
PX BLOCK ITERATOR 3 M 20 M 7376 :Q1001 PCWC
TABLE ACCESS FULL GSM_SERVICE_MAST 3 M 20 M 7376 :Q1001 PCWP
BUFFER SORT :Q1002 PCWC
PX RECEIVE 3 M 22 M 3403 :Q1002 PCWP
PX SEND HASH SYS.:TQ10000 3 M 22 M 3403 S->P HASH
INDEX FAST FULL SCAN ABILLITY.SIM_ACC_LNK_CD_IDX 3 M 22 M 3403 But using hints has a very bad execution plan and a very high cost:
select /*+ index(a) index(b) */ a.account_link_code_n, b.account_link_code_n from gsm_sims_master a, gsm_service_mast b
where a.account_link_code_n=b.account_link_code_n
Operation Object Name Rows Bytes Cost Object Node In/Out PStart PStop
SELECT STATEMENT Optimizer Mode=ALL_ROWS 3 M 31899
HASH JOIN 3 M 44 M 31899
INDEX FULL SCAN ABILLITY.GSM_SERV_MAST#ACLINK_CODE$PK 3 M 20 M 8158
INDEX FULL SCAN ABILLITY.SIM_ACC_LNK_CD_IDX 3 M 22 M 15709 Thank you
Luc -
Hi ALL
I am facing one diffculty about using hints in OWB. Through the mapping configuration, i am trying to use INDEX hint for my table. The generated code is correct, but is a very redundant code. Hint is repeating multiple times in the sub query. Below is the sample:
SELECT
/*+ INDEX ("My_Table1") INDEX ("My_Table2") */
Column1,
Column2,
Column3,
Column4,
Column5,
Column6,
Column7,
Column8
FROM
( SELECT
/*+ INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2") INDEX ("My_Table1") INDEX ("My_Table2")
Column9,
Column10,
Column11,
Column12
FROM
( SELECT .....
The text under the hint ("My_Table1") INDEX ("My_Table2") is repeating again and again. Any way of controlling the code being generated..?From a performance standpoint, using hints in that manner may cause poorer performance than without. The INDEX (table_name) hint directs the optimizer to evaluate all relevant indexes. It is very easy to build an example where your column of interest is the last column in a multicolumn index and have a query perform worse than what a full table scan would produce. Oracle's recommendation is to "use hints sparingly" and that is for good reason.
-
Error when trying to add a hint to inner query in WHERE clause
I have a form where the WHERE clause in a block starts like:
where seqno in (select seqno from nddf n, restriction r...
I need to add a hint to the inner query like following:
where seqno in (select /*+ ORDERED */ seqno from nddf n, restriction r...
When the query executes. I gets an error message and when I look at the detail error I see: ORA-01722: invalid number
Does anybody know the cause for this. Can I not use hints in inner queries?
Thanks,
ThomasDid you mean something like this,
i have tried the below code in forms 10g , as the where clause of 'EMP' block there was no problem.
deptno in (select /*+ ORDERED */ deptno from dept where rownum<2);
Also tried in SQLPlus like below
SQL> select * from emp where deptno in (select /*+ ORDERED */ deptno from dept where rownum<2);
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7839 KING PRESIDENT 17-NOV-81 5000 10
7934 MILLER CLERK 7782 23-JAN-82 1300 10 -
How to write SQL hints for this query?
The query is like:
select * from foo, t
where foo.name in
(select name from bar
where id in (
select id from car
where date < sysdate
and foo.a = t.b;
I want the innermostsubquery 'select id from car ...' to be executed first, and the subquery 'select name from bar ...' to be execute second, and the outermost query 'select * from foo,t ...' to be executed the last. How can I write the Oracle sql hints to force the order?
Thanks.user553560
You might be able to create a large set of hints to force the access path you want - but unless you really know what you are doing with hints, you may find that your solution is very unstable (it might be luck rather than correctness that let's it work to start with).
The difficulty in this query is the double layer of IN subqueries, so if you can rewrite the query, you might try manually unnesting as follows:
select
t1.*. t.*
from
select
distinct t2.name
from t2
where t2.id in (
select t3.id
from t3
where t3.dated < sysdate
) v,
t1,
t
where
t1.name = v.name
and t1.a = t.bDepending on your indexing and statistics, you may find that a simple /*+ unnest */ hint in the first subquery will be sufficient to do this for your. Again depending on the statistics you may find that you have to put extra hints into the above to make Oracle use the join method and indexes you think appropriate.
N.B. The first step (as others have noted) is to check that your statistics are good before you start manipulating the code or using hints.
Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
http://www.jlcomp.demon.co.uk -
Can I Specify an Oracle Hint for a Query
We are BW 3.1 Oracle 9.2. We have a few InfoCube queries that would perform better if a full table scan on the fact table was done rather than using the system generated Star Transformation hint.
When use RSRT or other entry points to see the SQL and the Explain plan, I have the option of putting in an Oracle hint and generating another Explain Plan.
Is there any way to save the query with a different Oracle hint than the Star Transformation hint?Klaus -
Thanks for responding.
It is only a handful of queries that this is an issue with. Overall, we are certainly better off using the star transformation.
Do you know the reasoning behind letting you specify a hint when running a query through RSRV if you can never actually specify those hints for actual production execution? Is the ability to add a hint anything that we might see in the future?
In looking into this a little more, I looked at an explain plan for a query on one of our transactional InfoCubes. We are Oracle 9.2, and transactional Infocubes have B-tree indices rather than bitmap on the F fact table. Presumably to better support the input of transactions. I see in the explain plan that with the star transformation, the btree indices are converted to bitmap, then a bitmap merge, then the result of that is converted back to a btree index to read the F fact table. Without the star transformation, the query cost is half, so the ability to suppress the star transformation on F fact queries on transactional cubes would also be nice.
At another job, I used to use Brio to query a data warehouse and although Brio didn't have facility to specify a hint, you could define a calculated field in the query and actually enter the hint text as the calculation and as long as that field was the first to follow the Select stmt, it was recognized as an Oracle hint. Maybe there could be some way to sneak a hint into the query. It's not something you would want every query developer doing, but as long as someone knew when it was appropriate to override/surpress star transformation, it would be nice to be able to do.
John -
Hi All,
I have a statement which selects from WB2_V_MKPF_MSEG2
SELECT
MBLNR MJAHR ZEILE_I BWART_I MATNR_I WERKS_I LGORT_I CHARG_I SHKZG_I MENGE_I MEINS_I UMMAT_I UMWRK_I UMLGO_I UMCHA_I
FROM WB2_V_MKPF_MSEG2 INTO TABLE ITAB_MSEG
FOR ALL ENTRIES IN ITAB_BATCH WHERE
MATNR_I = ITAB_BATCH-MATNR AND WERKS_I = STRC_T001L-WERKS AND LGORT_I IN S_LGORT1 AND
BWART_I IN ('311', '312') AND CHARG_I = ITAB_BATCH-CHARG AND BUDAT IN R_BUDAT %_HINTS ORACLE
'&SUBSTITUTE VALUES&' ORACLE '&max_blocking_factor 20&'.
When I observed the trace, I found 2 different execution plans (I had executed the report multiple times)
First -
1. Index Range Scan MKPF~BUD
2. Table Access by Index Rowid MKPF
3. Index Range Scan MSEG~0
4. Table Access by Index Rowid MSEG
Second -
1. Index Range Scan MSEG~M
Index M contains the following fields - MATNR, WERKS, LGORT, BWART, SOBKZ, CHARG
2.Table Access by Index Rowid MSEG
3. Index Range Scan MKPF~BUD
4. Table Access by Index Rowid MKPF
The report running with second execution plan takes less time when compared to first. Though Optimizer is selecting a execution plan which goes through Index in both cases it is unable to select the Best Optimal Plan in all the cases ie Second.
I tried to use Hints,
ORACLE 'INDEX("MSEG" "MSEG~M" "MSEG^M")'
but the optimizer is not considering, still I get the First Execution Plan.
I could observe that Hints are working when I use a single table ie either MKPF or MSEG. But when I use View it is not working.
Is it possible to influence Optimizer to consider first MSEGM and then MKPFBUD using Hints
Can any one help me on this.
Regards,
Vipin.Hi,
> Can you tell the Syntax for LEADING Hint and USE_NL Hint to influence the order of Selection ie first MSEGM and then MKPFBUD.
sure, this hint:
%_HINTS ORACLE 'LEADING(T2)'
ORACLE 'USE_NL(T1)'.
will start with MSEG - T2 (alias from view) and use nested loop to access MKPF - T1 (alias from view)
> And I have one more doubt, when I am going through Oracle Performance Tuning Guide 10g for hints, I found this
>
>
> Oracle does not encourage the use of hints inside or on views (or subqueries). This
> is because you can define views in one context and use them in another. Also, such
> hints can result in unexpected execution plans. In particular, hints inside views or
> on views are handled differently, depending on whether the view is mergeable into
> the top-level query.
>
>
> Can you please give me your advice on this.
hm i think this means that you should not hint IN the view itself because it may be used
from many different call positions.
you didn't hint in the view, you hinted your query that access the view.
Another query without hint may use a different execution plan.
Kind regards,
Hermann -
Folks,
Say I have a sql which is using 20 tables and have 40 indexes (latest stat, newly rebuilt index).
What is the bottleneck/issue if I use 70% hints for this query? What is the best way to reduce use of Hints (perhaps not use at all) and gain performance?
regards,
LilyThe general concerns with using hints in production queries
- You may be covering up deficiencies in optimizer statistics. If the CBO isn't picking the best path for this query, it probably won't be picking the best path for other queries, so it's often more efficient to get to the root cause than to have to end up hinting lots of queries and/or suffering with poorly performing queries
- You may be preventing a future version of Oracle from using a more efficient path. The CBO is evolving all the time, if your hints are forcing a particular path, you're eliminating future changes that might help.
- Hints with syntax errors don't generate errors, they are silently ignored. This means that if someone modifies the query in the future and accidentally screws up one of your hints, it'll still run but may not run well.
- You may end up under-hinting a query, giving the CBO just enough room to do something screwy.
- Stored outlines (optimizer plan stability) tends to be a cleaner way to force the optimizer to use a particular query plan.
Justin -
How to use the same POWL query for multiple users
Hello,
I have defined a POWL query which executes properly. But if I map the same POWL query to 2 portal users and the 2 portal users try to access the same page simultaneously then it gives an error message to one of the users that
"Query 'ABC' is already open in another session."
where 'ABC' is the query name.
Can you please tell me how to use the same POWL query for multiple users ?
A fast reply would be highly appreciated.
Thanks and Regards,
SandhyaBatch processing usually involves using actions you have recorded. In Action you can insert Path that can be used during processing documents. Path have some size so you may want to only process document that have the same size. Look in the Actions Palette fly-out menu for insert path. It inserts|records the current document work path into the action being worked on and when the action is played it inserts the path into the document as the current work path..
-
Future Simulation Report, using OBIEE or Hyperion
Dear All,
I have a requirement to create a simulation of the future maintenance schedule, and future machine usage. We got option to use OBIEE and Hyperion. I have little experience with OBIEE and I think it can be achieve using 'what if model' and 'trends analysis', But I never have experience with hyperion.
Actually what is the difference of this 2 product?
As I know the hyperion only used for financial planning. Could this requirement also able achived using Hyperion?
Best Regards
GumasYes you can create an IBot for the specific dashboard/answers which you want it to delivered to specific person or your self via mail. you need to define the require parameters for the IBot and also schedule it depending upon your requirement so that once the run is completed it will send the job to mail.
Thanks,
RM
Maybe you are looking for
-
Hi Experts, I have a problem with offset values. I have create a variable on OFISCPER, it's characteristic value, indivdual value, mandatory and ready for the input. I need to show the varibel period and the l previous period and so on till 12 period
-
I installed Firefox 18 but it doesnt open or function
Firefox 18 is installed and it doesn't nor function. I uninstalled it and reinstalled it but no luck. When I try to open firefox 18 a message comes up which says"A copy ofirefox is already open. Only one copy of Firefox can be open at one time." I un
-
Business Area Substitution not working after Upgrade
Hello Guys, We upgraded our system from Version 3.1 to 4.7. In this client bus area is mandatory field for every line item in any accounting documents.. For this we have necessary validations and substitutions. For MIRO there is a susbtitution for ta
-
Sorting by date ala Adobe Bridge
Disclaimer: I am a complete Aperture n00b. Until now, I've used iPhoto to import my iPhone images and Adobe Bridge for everything else. In both iPhoto and Bridge, it's very obvious as to how to sort individual images by date. I am completely at a los
-
If the Data base is down how to test the application in SOA11g ?