Need info related to creating indexes on ODS.

Hi All,
I have transported manually created secondary indexes on my ODS to quality system.
Now I have a requirement where i have to optimise the query performance.
In quality, I activated the ODS.There was data in the ODS before creating of index.
But still my Query is taking too long to display records.
Now my main doubt is since I have transported the manually created indexes,
when these indexes will start working whether at the time of data loading or after the activation of ODS?
Please advice on how i can optimise the query performance.

Hi Priyanka,
I think, your indexes should be working immediately after the transport.
You can always create indexes even when there is preexisting data. As soon as you save the indexs they should be created on the data base.
You can check whether your indexes are being used by your query in RSRT in display run schedule in data manager in execute and debug mode (Check the execution plan).
You can check whether your indexes have been created in ODS Active table in SE11 in index maintainance and also in DB02 , I believe.
To optimize your query performance - Filter in the queries should be on the primary indexes or the seconday indexes. You will get to know whether the indexes are bein guse and the cost saving by the usage of these indexes in the execution plan.Try to create indexes only when absolutely essential , because as mentioned in the post below, it affect loading performance, since it has to create these indexes for the newly loaded data
If you are using Oracle data base you can consider partitioning your infoprovider
If you are using DB2 - You can try multi dimensional clustering
You can choose appropriate read mode and Cache mode for the query
You can archive historic data no longer reported, to increase the reporting speed
You can design the query correctly - with correct placement of filters
Points to note when creating secondary indices is the order and the number of characteristics  in the secondary indices is also the determining factor for the usage of the index by your query
Hope this helps,
Best regards,
Sunmit.

Similar Messages

  • How to create indexes on ODS ?

    Hello friends ,
    Need some help .
    Could any one please let me know how to create indexes on ODS ?
    How Indexes are useful on ODS ?
    Thanks in advance
    Regards

    Dear Akshay,
    Below is the information about indexes and there creation for ODS.
    You can search a table for data records that satisfy certain search criteria faster using an index.
    An index can be considered a copy of a database table that has been reduced to certain fields. This copy is always in sorted form. Sorting provides faster access to the data records of the table, for example using a binary search. The index also contains a pointer to the corresponding record of the actual table so that the fields not contained in the index can also be read.
    The primary index is distinguished from the secondary indexes of a table. The primary index contains the key fields of the table and a pointer to the non-key fields of the table. The primary index is created automatically when the table is created in the database.
    You can also create further indexes on a table in the ABAP Dictionary. These are called secondary indexes.Under Indexes, you can create secondary indexes by using the context menu in order to improve the load and query performance of the ODS object This is necessary if the table is frequently accessed in a way that does not take advantage of the sorting of the primary index for the access.
    The database system sometimes does not use a suitable index for a selection, even if there is one. The index used depends on the optimizer used for the database system. You should therefore check if the index you created is also used for the selection (see How to Check if an Index is Used).).
    Creating an additional index could also have side effects on the performance. This is because an index that was used successfully for selection might not be used any longer by the optimizer if the optimizer estimates (sometimes incorrectly) that the newly created index is more selective.
    The indexes on a table should therefore be as disjunct as possible, that is they should contain as few fields in common as possible. If two indexes on a table have a large number of common fields, this could make it more difficult for the optimizer to choose the most selective index.
    Leaving content frame.
    With Regards,
    Prafulla Singh

  • ABAP Routine for Deleting and creating index for ODS in Process chains

    Any pointers for the ABAP Routine code for deleting and creating index for ODS in Process chains.

    Hi Sachin,
    find the following ABAP code to delete ODS ondex.
    data : v_ods type RSDODSOBJECT.
    move 'ODSname' to v_ods .
    CALL FUNCTION 'RSSM_PROCESS_ODS_DROP_INDEXES'
      EXPORTING
        I_ODS = v_ods.
    To create index:
    data : v_ods type RSDODSOBJECT.
    move 'ODSname' to v_ods .
    CALL FUNCTION 'RSSM_PROCESS_ODS_CREA_INDEXES'
      EXPORTING
        I_ODS = v_ods.
    hope it helps....
    regards,
    Raju

  • Do we have to create indexes on ODS if we report on ODS

    Hello all,
    I have a report that runs on infocube and then there are RRI from this report to detailed report which run on 3 other ODS.
    So do i have to create indexes on ODS as well to improve performance?
    Also if we have to create indexon ODS how do we determine whic infoobjects we have to use in the indexes?
    Thanks in advance

    Thanks voodi,
    I guess that tells me exactly what I was looking for. Its just that we are running reports in production for first time so we have some performance issues which doing jump so was wondering.
    are there any other things you think I can do to take care of performance.?
    Do we create aggregates right away or after using the reports for few times? Do we create aggregates on ODS as well?
    Thanks,
    points assigned to both of you

  • Do we need any precautions while creating index in MV rather than tables?

    Do we need any precautions while creating index in MV rather than tables?
    Could you please someone tell me is there we need specifically follows while creation on MVs

    MV is a seprate object. You might need to create an indexes on MViews based on how you are accessing that MV. You need to take a same preacutions what you take to create an index on the table,
    I do not know what you mean by your 2nd questions. Read this for better understanding
    http://docs.oracle.com/cd/B28359_01/server.111/b28326/repmview.htm

  • A query related to creating Indexes for a table

    Hi ,
    I am in a J2EE Banking Project using Oracle 10g as our Database .
    We have created Indexes on some tables .
    But this this is not called by any of our Java class .
    Could anybody please let me know how these Indexes will actually improve the Performance .
    Waiting for your replies .
    Thanks in advance .

    But in our safety database (huge & ofcourse Oracle), we use indexes just because to avoid duplicates, improve data retrieval and so on.As you pointed out indexes can do 2 things for you: enforce uniqueness and (hopefully) improve data retrieval. Enforcing uniqueness is pretty basic, but indexes don't always improve performance. Under the wrong condtions indexes can hurt performance. The ideas below refer to B-TREE indexes; other kinds of indexes have other considerations
    Indexes add overhead to insert, delete, and (hopefully not - updating index columns is a Bad Idea), enough so that if you're inserting a lot of rows into a large table it is sometimes helpful to drop the indexes, load the data, and recreate the indexes when done to help performance. The more indexes a table has the more overhead DML statements need to maintain them.
    Indexes help query performance under a couple of conditions. When using them as join keys to retrieve a small percentage of rows in a table (< 20% maybe; there is no firm number) indexes can help. When a query can read its columns from an index only (such as counts against a primary key index) index access can be faster than table access.
    Indexes can hurt performance by adding overhead for maintenance if the index is never actually used or if used to read most of the rows in a table when a full table scan would be more efficient (why go through the extra effort to read the index and then table when you'll have to read most of the rows in the table anyway?).

  • Need info related to HAL

    Hi all
    I need small info
    1) If you have a planning application and if we want to load the metadata and data from flat file into planning application we can use HAL right ... how about the other scenario like .if we want to load data and metadata from any other essbase database. in to a planning application.......we can use essbase adapter to load the data and metadata in to planning application.......does it make any sense....does it work??? ....
    thanks

    Hi,
    Would it not be easier to build a HAL routine to get the metadata from the same source the other essbase cube builds its metadata from.
    You can use HAL to extract from the data from essbase cube and then load it into your planning essbase cube, HAL basically creates a report script which extracts the data, another way would be to use the DATAEXPORT command and export the data from one cube and load it into another, if you are after optimisation then DATAEXPORT will probably be quicker than HAL and easier to set up.
    Cheers
    John

  • Need info related to Infoset

    Hi all,
    i have created an Infoset on 2 ODSes.
    i have created a query based on this Infoset.
    i have a requirement where i want data only from these ODSes to be given in the picklist of the selection screen.
    I have changed the property "Query Exec.FilterVal" of infoobjects used in query to "Only values in infoprovider" on ODS level.
    but i am getting values from master data also.
    Is there any property of Infoset which has to be changed?
    Please help.
    Regards,
    Priyanka.

    Hi Priyanka,
    Please check SAP Note : 984229.
    Might help you..!!
    -Pradnya

  • Need info related to log files

    Hi All,
    If a person tries to take backup of tables metadata from SQL Developer, then is such information stored in the logs?
    To be specific, is there any logging mechanism @ oracle server which tells that table metadata has been accessed from a particular machine by a particular user?
    If yes, where are such logs located?
    Thanks in advance,
    ---Eden

    The archive log records changes to the database for the purposes of recovery and are not human readable.
    You may be able to achieve what you want (whatever it is) using auditing features but first you need to get your knowledge of oracle up to a reasonable level. Read the documentation starting with the Concepts guide.

  • Need info on - How BIA index, rollup is done. tcodes... etc

    Hi Gurus
    Can any one give me pointers .
    Points will be assigned for sure.
    Thanks in advance!
    James

    You can find lots of information starting from http://www.sdn.sap.com/irj/sdn/bwa
    Good luck,
    -Vitaliy

  • Need info on table: LATP_ENQ

    HI Experts,
    I need info related to the table LATP_ENQ.
    We create sales order in CRM, through some B-Docs order will be replicated in ECC.
    Entries are getting created in this table based on availability of the materials.
    Through Z-Transaction code, we delete entries in this table.
    Sometimes blank entries are getting created in this table, I would like to know in which scenario this table is getting updated.
    Regards,
    Swaraj

    Hi Swaraj
    As it is a Z transaction t.code and as you have deleted the table when we upgrade our ECC version then those blank tables have to be upgraded
    Regards
    Srinath

  • Do I need to create indexes on column name?

    Following queries have been shown as bad sql :          
    select * from t1 where name = 'FUNCTION'
    Count=     7     Avg Time=13     Min Time=0     Max Time=47
    select * from t2 where name = 'USER_TYPE'      
    Count=2     Avg Time=85     Min Time=0     Max Time=156
    select * from t3 where name = 'TEMPLATE'
    Count=7     Avg Time=19     Min Time=0     Max Time=32
    All these tables have less than 20 records and static tables.                    
    Do I need to create indexes on column name?

    A FTS even on very small tables can require more latches than accessing via an index. Also, a table access requires the segment header and data block to be accessed (2) whereas an index on a small index only requires access to the index root block and table block (2).
    True, it's unlikely to make much of a difference in most environments but if the table is really heavily accessed, indexing even very small tables can help to reduce the related latch overheads.
    Most of these small tables have PKs and are accessed via the PK so associated indexes usually exist anyways.
    Cheers
    Richard Foote
    http://richardfoote.wordpress.com/

  • Is it possible to created secondary indexes on ODS in Production

    Hi,
    Is it possible to created secondary indexes on ODS in Production System. I need to create secondary indexes on ODS but it is already in production. Hence Can I directly create secondary indexes without transportation from dev to production?

    Hi,
    Secondary Indexes for DSO can be transported. For the transport the DSO objects needs to be transported (R3TR ODSO <technical name>.
    Additionally, secondary Indexes are necessary quite often for DSO tables, which can be transported. In few cases you need indexes on other BW tables, but they cannot be transported. Never create additional Indexes on InfoCube tables (like E- and F-Fact tables and Dimension tables)
    Thanks & B.R.
    Vince

  • When do I really need to create indexes for a table?

    Once I was talking to a dba in a conference.
    He told me that not always I have to create indexes for a single table, it depends of its size.
    He said that Oracle read registers in blocks, and for a small table Oracle can read it fully, in a single operation, so in those cases I don't need indexes and statistcs.
    So I would like to know how to calculate it.
    When do I really need to create indexes for a table?
    If someone know any documment that explain that, or have some tips, I'd aprecciate.
    Thanks.
    P.S.: The version that I'm using is Oracle 9.2.0.4.0.

    Hi Vin
    You mentioned so many mistakes here, I don't know where to begin ...
    vprabhu_2000 wrote:
    There are different kinds of Index. B-tree Index is by default. Bit map index, function based index,index organized table.
    B-tree index if the table is large This is incorrect. Small tables, even those consisting of rows within just one block, can benefit from an index. There is no table size too small in which an index might not be benefical. William Robertson in his post references links to my blog where I discuss this.
    and if you want to retrieve 10 % or less of data then B-tree index is good. This is all wrong as well. A FTS on a (say) million row table could very well be more efficient when retrieving (say) just 1% of data. An index could very well be more efficient when retrieving 100% of data. There's nothing special about 10% and there is no such magic number ...
    >
    Bit Map Index - On low cardinality columns like Sex for eg which could have values Male,Female create a bit map index. Completely and utterly wrong. A bitmap index might be the perfect type of index, better than a B-Tree, even if there are (say) 100,000 distinct values in the table. That a bitmap index is only suitable for low cardinality columns is just not true. And what if it's an OLTP application, with lot's of concurrent DML on the underlining table, do you really think a bitmap index would be a good idea ?
    >
    You can also create an Index organized table if there are less rows to be stored so data is stored only once in index and not in table. Not sure what you mean here but an IOT can potentially be useful if you have very large numbers of rows in the table. The number of rows has nothing to do with whether an IOT is suitable or not.
    >
    Hope this info helps. Considering most of it is wrong, I'm not sure it really helps at all :(
    Cheers
    Richard Foote
    http://richardfoote.wordpress.com/

  • Need info about Infocube Index

    Hi All,
    Can any one please explain me about Index.
    What will happen in cube upon Index?
    How to create/Delete Index?
    Use of Index?
    Regards,
    Jackie.
    Edited by: Jackie on Sep 12, 2011 6:58 AM

    Hi Jackie,
    Indexes are mainly used to improve the performance of the data retrieval, also it helps improving the reporting performance.. Indexing can be easily done by Right Click inforcube -> Manage -> Performance tab -> Create indexes. You can try checking it in your case itself by trying to fetch the data from the cube or try running the report with / without indexes. You will automatically find the difference.
    Alternatively you can also go for Aggregates & BWA Accelerators for better query performance. Check out these basic links for info on the indexes & BWA Accelarators.
    http://help.sap.com/saphelp_bw30b/helpdata/en/80/1a6473e07211d2acb80000e829fbfe/content.htm
    http://help.sap.com/saphelp_nw73/helpdata/en/4c/2c87e2477f51e6e10000000a42189b/content.htm
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b04a79b4-bbea-2b10-da86-bf0fe933fe34?quicklink=index&overridelayout=true
    Thanks

Maybe you are looking for

  • Random crashes with Adobe LiveCycle form - where is temp file?

    I'm using Adobe Acrobat v8 to enter data in a form I created on LiveCycle (the version that comes with Acrobat v8).  I'm running Windows XP with all of the current patches (as far as I know - our tech support is pretty good at updates). The file rand

  • Error service-specific error codce 2 when using Oracle 10g on Vista home

    Dear All, I just finished my WS1 DBA course and I wanted to play around with oracle 10g 10.2.0.3 DB on my laptop (Windows vista Home edition). I managed to install the database and right after the installation worked fine but the next day I got the f

  • Advice Needed on Rebuilding OSX SL on iMac and MBP

    I am rebuilding my iMac and MacBook Pro from the scratch with Snow Leopard. At the moment, I have almost completed installing the operating system, system updates and 3rd party apps on my iMac. The question is: Can I just clone the iMac drive with al

  • Charges on my credit card?

    Hello, how can i contact skype regarding charges to my credit card? Post transferred to create new thread (topic); subject/title edited accordingly.

  • Blocked Album Art?

    I downloaded songs from The Cars album Candy O on my iPhone and noticed when I synched to iTunes the Vargas girl painting on my album art became blocked over in black on the iPhone, while it is still all there on my laptop. It was originally all ther