SE14 or SE11 Create index

Hello guys,
I wonder how SAP creates an index when it is executed via SE14 or SE11 transactions. I mean on Oracle level and especially ONLINE option. My consideration is that I must create an index on a big table and the duration is around 5+ hours. We tested this in a fresh test environment (copy from productive system). Unfortunately we cannot lock the productive system for so long period. So, if index creation is with ONLINE option - it will not lock the table and it will be used if necessary.
Thank you for your suggestions and advices.
Best regards,
Detelin

Hi Detelin
No, during index creation database locks the table.  So, although your SAP is up particular table will be locked for deletion , insert etc.
But from oracle level you can create index online by running SQL command
Please refer to note Note 334224 - Important notes for creating indexes
Regards
Anindya
Edited by: Anindya Bose on Mar 4, 2010 6:57 PM

Similar Messages

  • Unable to create Indexes on F table

    Hi
    We are unable to create Indexes on one of our Cube's fact table...I tried creating with Process chain , Batch and also tried with SE11 ...table name ... Indexes ...Activate...
    Its showing active object generated but the warning msg Index does not exist in database system MSSQL still exist  and not creating indexes...When I activate the indexes its not showing this warning for all other cubes...Please advice
    regards

    Hi Sam,.
    The index creation on F table is taken care by the system itself. When you activate the cube, the DIM and F table are created and at the same time, indexes are created.
    To create your own indes, though, go to se11...>F Table name-->Indeexes-it will show you system created indexes.
    There will be a create sign....click there... and give the name of the index(like 1, 2). It will open up the maintain index page, where you have to mention all the parameter.
    Thanbks...
    Shambhu

  • How can I create index(uniqie index) for a existed table?

    Hi guys,
    I want to create a index for a existed table, it should be unique index. I did it using se11, "indexes," and select the radio button "unqiue index", of course the fields as well. But when I activate it, I get a waring and therefore can not create this index. But if I select radio button "non-uniqe index", it works.
    However I have to reate a unqiue index.
    How can I do it?
    Thanks in advance
    Regards,
    Liying

    HI Wang
    You can create your index via SE11, enter the table name, click change, choose Go To, Indexes. Here create your index with the key fields that you want. To use the index, your select statement WHERE clause, you must have the key fields of the index in the order that they appear in the index. The "optimizer" will choose the index depending on your fields of the WHERE clause.
    One thing to remember is that when you create indexes for tables, the update or insert of these tables may have a slower response then before, I for one have never seen a big problem as of yet.
    this Document may help u on primary and secondary indexes :
    http://jdc.joy.com/helpdata/EN/cf/21eb20446011d189700000e8322d00/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21eb47446011d189700000e8322d00/content.htm
    If it helps Reward the points
    Regards,
    Rk
    Message was edited by:
            Rk Pasupuleti

  • 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.

  • How to create index for particular table in R3

    Hi
    My load is taking too much time and it leads to process over due error. Does creating indexes on table in r3 side will solve this issue? If so how can we find out on which table does this particular data source depend. I went to maintain extract structure and findout only one table is supplying data for this data source.
    Is there any other factors depend to solve this.
    Thanks
    kk

    Hi,
    it will depend on the table.... Having an index created will speed up the loading but slow down the insert therefore slowing some process perhaps...
    May I ask which table it is? And which fields would you need to index?
    Are you sure that bottleneck is located in R/3? Analyze your loading time in the monitor and see if this is really the case.
    Otherwise you can create index for a table in Tx SE11; first check if an index is not already created...
    hope this helps,
    Olivier.

  • Unable to create Index on DB

    Hi Experts,
    As part of SPDD we have to create an Index on EDIDC which was deleted during upgrade. I could recreate the index in ABAP dictionary, but its not getting created in DB. I used SE14 to create it, but got this below error:
    I later tried to create it will the name Z01. Same error again. Can you help me out?
    Request: Create Index EDIDC-900 (KGCD893/08.08.08/17:46)        
    Process: ukapx060_2                                             
    Nametab of table EDIDC with status A does not exist             
    sql:                                                            
    CREATE                                                          
    INDEX "EDIDC900" ON "EDIDC"                                   
    ("MANDT",                                                       
    "ARCKEY")                                                       
    PCTFREE 10                                                      
    INITRANS 002                                                    
    TABLESPACE PSAPBTABI                                            
    STORAGE (INITIAL 0000000016 K                                   
    NEXT 0000010240 K                                               
    MINEXTENTS 0000000001                                           
    MAXEXTENTS UNLIMITED                                            
    PCTINCREASE 0000                                                
    FREELISTS 001)                                                  
    ORA-00942: table or view does not exist                         
    DDL time(___1): .........2 milliseconds                         
    The SQL statement was not executed                              
    Index   could not be created completely in the database         
    Index EDIDC-900 could not be created                            
    Request for EDIDC could not be executed                         
    Index  could not be created completely in the database
    Message no. DI006
    Diagnosis
    It was not possible to create the index in the database.
    This could be caused by the fact that an index with the same name exists in the database, but it is unknown to the ABAP/4 Dictionary. Activating the index in the ABAP/4 Dictionary is possible, but it is not possible to create it in the database.
    Procedure
    For more information about the cause of the error, analyze the SQL error messages in this log.
    Regards,
    Ravikanth

    Hi Srini,
    SAP provided 4 indexes. I plan to create one. Initially I was trying with the name Z01. It gave error. So I started trying with 900. Still the problem persist. So I tried creating a different index with different fields. Still couldnt solve the problem.
    I posted it to our basis team to check. They say everythign is fine. So got struck here. Any specific things you want to check in DB?
    Thanks for your efforts.
    Regards,
    Ravikanth

  • Create Index to use Like Clause

    Hi All,
    I want one of my query to use a index which runs with a LIKE Clause. I have not done that before but i have heard and seen through forums that its possible to create indexes for a column with Like Clause using function based index.
    Function
    Request the forum users to achieve my objective. Let me list down what i have done.
    Function
    CREATE OR REPLACE FUNCTION RND_LIKE(P_NO IN VARCHAR2)
    RETURN VARCHAR2 IS
    RESULT VARCHAR2(240);
    BEGIN
    RETURN P_NO||'%';
    END RND_LIKE;
    SELECT ENAME FROM EMP WHERE ENAME LIKE RND_LIKE('A')
    Here based on this function i want to create a function based index and force the same to my query. Request the forum users to help me out in this.
    Thanks
    Edited by: ramarun on Dec 18, 2009 9:26 PM

    In the case you had there , Oracle would use an index on ename in a query if you were to type A% in the ename item on a Form. You wouldn't need a function index for that.
    Here's the link to the documentation to create a function based index http://download-uk.oracle.com/docs/cd/B28359_01/server.111/b28310/indexes003.htm#i1006674

  • What is the difference between creating index on cube and infopkg in PC

    Hi All
    I have process chain in which after executing infopkg(load data infopkg),creating index on cube i.e Object type is Cube ,for which execution time is 1 hour,then after (subsequent step ) again create index  at this time object type is "infopkg"
    execute infopkg for which time is 2 minnutes,what is the diffrence between these two,if i reome create index from cube i can save 1 hour time,I have to reveiew this
    chain for performance,plese post me your thoughts,it's argent,your help will be heighly appreciatable.Thanks in advance.
    regards
    EA

    By default once u use create index process type Object type has Infopackage - change it to Cube tech name.
    If its Cube - Indexes will be deleted or created for all the date in the cube.
    Message was edited by:
            Jr Roberto

  • REBUILD INDEX vs DROP/CREATE INDEX

    Hi there,
    Does anyone has already got some performance degradation after REBUILD INDEXes ? Would it be better to perform DROP/CREATE INDEX instead ?
    Thank you very much for anu reply.
    Best regards,
    Helena

    Hi,
    >>so is it then better to DROP/CREATE them ?
    Well, In fact I learned that when you rebuild an index, Oracle creates a new index from the old index and does not perform sorting while building the new index, which results in performance enhancement. In this case, depending of the size of your data it's necessary sufficient space on a tablespace for storing the old as well as the new index (while creating the new index). Other advantage, is that Oracle can use the old index for answering queries while it builds the new index too using [alter index <index_name> rebuild online].
    Cheers

  • H2 devide implicit and explicit created indexes by dictionary views?

    For migrating amounts of data it is useful to drop and recreate indexes and referencing constaints. A implicit created index by defining a primary/unique key constraint will be dropped implicitly by dropping the before mentioned constraint. Creating such a constraint after creating an equivalent index with the constraint name will result in an other behaviour. The explicit created index will not be dropped by dropping the referencing primary/unique key constraint.
    So far so good and well known. The question is: Which dictionary view columns will show me the difference between implicit and explict created indexes if I try to dynamically drop and recreate indexes and unique / primary key constraints?

    Oracle Version is always helpful in answering questions, but for 9i you can find the system generated by:
    dba_indexes.generated = 'Y'
    or
    'SYS_' naming convention for system generated indexes
    or
    dba_constraints.constraint_name = dba_constraints.index_name
    Hope this helps - JTommaney

  • Performance issue with drop and re-create index

    My database table has about 2 million records. The index in the table was not optmized, so we created a new index lets call it index2. So this table now was the original index (index1) and the index2. We then inserted data into this table from the other box. It was running for a few weeks.
    Suddenly we noticed that a query which used to take a few seconds now took more than a minute. The execution plan was using the index2 which technically should be faster. We checked if the statistics were upto date and it was. So then we dropped the new index, re-ran the query and it completed in 10 sec's. It was usign the old index. This puzzled me since the point of the index2 was to make it better. So then we re-created index2 and genrated stats for the index. Re-ran the query and it completed in 5 sec's.
    Everytime we timed to run the query, I shutdown and restarted the box to clear all cache's. So all the time I have specified are pure time's and not cached. The execution plan using index2 taking 1 min and 5 sec's are nearly the same, with very minior difference in cost and cardnitality. Any ideas why index2 took 1 min before and after drop and create again takes only 5 sec.
    The reason I want to find the cause is to ensure that this doesn't happen again, since its impossible for me to re-create the index everytime I see this issue. Any thoughts would be helpful.

    Firstly the indexes are different index1 is only on the time column, where as index2 is a composite index consisting of 3 columns.
    Here are the details. The test that I did were last friday, 3/31. Yesterday and today when I executed the same query I get more increased times, yesterday it took 9 sec amd today 17 sec. The stats job kicked in on both days and is upto date. This table, nothing gets deleted. Only added.
    3/31
    Original
    Elapsed: 00:01:02.17
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=6553 Card=9240 Bytes
    =203280)
    1 0 SORT (UNIQUE) (Cost=6553 Card=9240 Bytes=203280)
    2 1 INDEX (FULL SCAN) OF 'EVENT_NA_TIME_ETYPE' (NON-UNIQ
    UE) (Cost=15982 Card=2306303 Bytes=50738666)
    drop index EVENT_NA_TIME_ETYPE
    Elapsed: 00:00:11.91
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=7792 Card=9275 Bytes
    =204050)
    1 0 SORT (UNIQUE) (Cost=7792 Card=9275 Bytes=204050)
    2 1 TABLE ACCESS (BY INDEX ROWID) OF 'EVENT' (Cost=2092
    Card=2284254 Bytes=50253588)
    3 2 INDEX (RANGE SCAN) OF 'EVENT_TIME_NDX' (NON-UNIQUE
    ) (Cost=6740 Card=2284254)
    create index EVENT_NA_TIME_ETYPE ON EVENT(NET_ADDRESS,TIME,EVENT_TYPE);
    BEGIN
    SYS.DBMS_STATS.GENERATE_STATS('USER','EVENT_NA_TIME_ETYPE',0);
    end;
    Elapsed: 00:00:05.14
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=6345 Card=9275 Bytes
    =204050)
    1 0 SORT (UNIQUE) (Cost=6345 Card=9275 Bytes=204050)
    2 1 INDEX (FULL SCAN) OF 'EVENT_NA_TIME_ETYPE' (NON-UNIQ
    UE) (Cost=12878 Card=2284254 Bytes=50253588)
    4/3
    Elapsed: 00:00:09.70
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=6596 Card=9316 Bytes
    =204952)
    1 0 SORT (UNIQUE) (Cost=6596 Card=9316 Bytes=204952)
    2 1 INDEX (FULL SCAN) OF 'EVENT_NA_TIME_ETYPE' (NON-UNIQ
    UE) (Cost=11696 Card=2409400 Bytes=53006800)
    Statistics
    0 recursive calls
    0 db block gets
    11933 consistent gets
    9676 physical reads
    724 redo size
    467 bytes sent via SQL*Net to client
    503 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    3 rows processed
    4/4
    Elapsed: 00:00:17.99
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=6681 Card=9421 Bytes
    =207262)
    1 0 SORT (UNIQUE) (Cost=6681 Card=9421 Bytes=207262)
    2 1 INDEX (FULL SCAN) OF 'EVENT_NA_TIME_ETYPE' (NON-UNIQ
    UE) (Cost=12110 Card=2433800 Bytes=53543600)
    Statistics
    0 recursive calls
    0 db block gets
    12279 consistent gets
    9423 physical reads
    2608 redo size
    467 bytes sent via SQL*Net to client
    503 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    3 rows processed
    SQL> select index_name,clustering_factor,blevel,leaf_blocks,distinct_keys from u ser_indexes where index_name like 'EVENT%';
    INDEX_NAME CLUSTERING_FACTOR BLEVEL LEAF_BLOCKS DISTINCT_KEYS
    EVENT_NA_TIME_ETYPE 2393170 2 12108 2395545
    EVENT_PK 32640 2 5313 2286158
    EVENT_TIME_NDX 35673 2 7075 2394055

  • IDES system copy ..error during IMPORT_ABAP..unable to create indexes

    Hi all,
    I am doing a IDES system copy. I ran the report SMIGR_CREATE_DLL , the export activities have been completed successfully as well on the source system. Now on the target system, during the import, I am getting the following error in the log file SAPDFACT.log.
    (DB) ERROR: DDL statement failed
    (CREATE  INDEX "/BI0/E0RSTT_C06~P" ON "/BI0/E0RSTT_C06" ( "KEY_0RSTT_C06P" , "KEY_0RSTT_C06T" , "KEY_0RSTT_C06U" , "KEY_0RSTT_C061" , "KEY_0RSTT_C062" , "KEY_0RSTT_C063" , "KEY_0RSTT_C064" , "KEY_0RSTT_C065" , "KEY_0RSTT_C066" , "KEY_0RSTT_C067" , "KEY_0RSTT_C068"  ) TABLESPACE PSAPSR3 STORAGE (INITIAL 65536 NEXT 0000002560K MINEXTENTS 0000000001 MAXEXTENTS 2147483645 PCTINCREASE 0 ) NOLOGGING COMPUTE STATISTICS )
    DbSlExecute: rc = 99
      (SQL error 1408)
      error message returned by DbSl:
    ORA-01408: such column list already indexed
    (DB) INFO: disconnected from DB
    The owner for this table is SAPSR3. Some oracle forums suggested to drop the index before recreating it. But when i do "drop index SAPSR3."/BI0/E0RSTT_C06~P..it says.."the specified index does not exist". But when I go to recreate this index, it doesn get created successfully. After that when I re-run the import, it again fails. Suprisingly..now if i go to check if this index is present thru a sql querry:
    select owner, object_name, object_type from dba_objects where object_name='SAPSR3."/BI0/E0RSTT_C06~P"', it tells "no rows selected". This is happening everytime, I create an index, where it gets created successfully, and the import again fails with the same error in SAPDFACT.log.
    I found an SAP note 885441 named..common errors during migration..although mine isnt a migration..my both source and destination are Red hat 64 bit platform.
    The note 1st asks to download the latest R3load..which I did and extracted in the kernel directory of the source..then it also asked to edit the .TSK file..in my case..SAPDFACT.TSK..where the lines:
    I /BIC/E<Cubename>~<index> C err
    to  I /BIC/E<Cubename>~<index> C ign..
    I did that..this time..the import again fails..but in the SAPDFACT.log..it complains about some other index..n the same gets generated in the .TSK file as well..the earlier index error is not again generated.
    I am not sure..what is going wrong..my export went through successfully.i have done the prep steps for export as well..before that i ran the SMIGR_CREATE_DLL report as well..
    Any inputs are highly appreciated..
    Thanks,
    Akshay

    Hi,
    Check SAP  Note 1166589 - Table converter: DB error when creating secondary indexes
    Thanks
    Sunny

  • How to create  index for a column of a view

    Hi,
    I have created view for a table and then i am trying to create index for a column of that view. i am using the query "CREATE INDEX index_name ON view_name (col)". but Mysql is showing error like "view_name is not a base table".
    How can i do that......

    As mentioned this is a java forum not a mysql forum, but as I know the answer - you can't create an index directly on a view in mysql.

  • How to create index not unique at the time of the CREATE TABLE

    Hi,
    I am trying to find out how in Oracle create secondary indexes that can accept duplicated into the CREATE TABLE statement, without have to execute a CREATE INDEX separately.
    As far I can see the only syntax accepted by Oracle 9i to create more than one index at the time of the table creation is:
    CREATE TABLE test_tab (x INTEGER, y INTEGER, z INTEGER PRIMARY KEY(x,y), UNIQUE(z))
    But, in my case I need to have the unicity only for the primary key, but not for the second index, that I would like to have not unique.
    How to do that inside of the CREATE TABLE statement?
    Any help?
    Thanks a lot in advance.

    To create an index automatically (not constraint related) , you will need to have an 'event' trigger on the schema that will (IE: detecting a table create/drop matching ARCHIVE_%) , generate the appropriate SQL required (create index sql) and pass THAT to a DBMS_JOB.
    Make sure you have job queue's enabled.
    This was the ONLY way that I could re-create a view automatically as new tables were created that matched a criteria IE ARCHIVE_JAN06, ARCHIVE_FEB06 etc.
    The application's "archiving" method created and was thus aware of these tables and permitted searching within 'archived' data, but 3rd party reporting applications needed to see a view encompassing all data, regardless of the tables involved. The view automatically created was a 'union_all' of all tables concerned.

  • Not able to create index for organization

    in transaction ses_admin, i created an index for business object BAS_BUPA of type 1,ie individual account.
    However, i am not able to create index for BAS_BUPA of type 2
    It says "No entry in table SIC_INDEX_MAIN for index object BAS_BUPA and index 2"

    hi,
    The index is for Business Partner, so it includes both Persons and Organizations. So, only one index needs to be created for both.
    The functioning is correct, just that i missed it.

Maybe you are looking for

  • Automatic creation of contract in SAP ECC from ESO

    Hello Experts, We are installing SAP ESO 5.1, with integration package, linked to a SAP ERP 5.0 system. With the out-of-the box integration package, it is possible to create an outline agreement (contract) from an ESO Master Agreement / Agreement by

  • Why did the "custom" size option disappear from list when creating a PDF in Photoshop?

    For my job, I must have the custom option available to me in Photoshop. I'm currently using CS4 and have been for years without a problem. Yesterday "custom" option from the choose size list disappeared, along with several other options (that I don't

  • To Merge Cross Tab Header in Web-I XI R2

    Hello All, I have one cross tab report and Its header is Name field.When we run the report, suppose we get 15 columns so 15 times the report header displays the "Name" in cross tab. I want to display the 'Name ' field only once in middle of cross tab

  • RFC scenario for inserting data in SAP, help me experts

    hi... i have to insert data in SAP database using BAPI_PR_CREATE. which adapter i hv to use for RFC(sender/receiver)(syn/Asyn). this sceanrio is File1-RFC-File2. file1 sends the data to RFC to insert data and file2 should hv to send the autogeneratio

  • 1 XMLP Enterprise instance, multiple environments (databases) - Datasources

    Hi We are trying out XML Publisher Enterprise 5.6.2 (stand-alone) in an OracleAS 10.1.2.0.2 environment (OC4J). In our "pre-Production" environment we have four separate instances. (instance -in this case- means combination of DB instance + front-end