Cardinality property of dimension

Hi,gurus here.
Dimension "Order info" includes Sales document and Sales document Item.
Sould I use High Cardinality Property?
Thanks, for a lot.

Hi Nice Day:)
I think you don't need it.Because high cardinality property is used to increase performence whenever the size of dimension table is more then %20(more or less)of the fact table.However, as far as I understand, your Sales document and Sales document Item characteristics do not have mxn relationship.They have nx1 relationship.That means one sales document may have n sales document item but one sales document item is not alllowed to have more than one sales document(correct me if I am wrong and use this property otherwise).Then your dimension table will not be very big so no need to use this property .Check these out:
Use of Line item dimension & High cardinality
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/005f3197-d3da-2e10-1a94-a5c62342f2aa?QuickLink=index&overridelayout=true
In fact, you can see the size of the dimension table(size of the dimension) so that you can decide easier about using high cardinality or not. Check this out:
To find the size of the fact table and dimension table
Regards,
Sunny
Edited by: sunnybt on Dec 2, 2011 9:26 AM

Similar Messages

  • How to set the cardinality property as 1..n for a dynamically created node

    Hi...everybody
        I am creating Dropdown by index UI element and the
    context atrributes dynamically.To bind multiple data to a dropdown
    the cardinality property of the node should be 0..n or 1..n,
    But i could not set the property of the dynamically created context node to 0..n ...
    can any body suggest me..
    I implemented the following code in WDDoModify View
    IWDTransparentContainer tc=(IWDTransparentContainer)view.getElement("RootUIElementContainer");
    IWDNodeInfo node = wdContext.getNodeInfo().addChild("DynamicNode",null,true,true,false,false,false,true,null,
              null,null);
    IWDAttributeInfo strinfo=node.addAttribute("Value","ddic:com.sap.dictionary.string");
    dbyindex.bindTexts(strinfo);
    tc.addChild(dbyindex);
    I could successfully display one value in the drop down,by adding the following code before the line tc.addchild(dbyindex);
    IWDNode node1=wdContext.getChildNode("DynamicNode",0);
    IWDNodeElement nodeElement=node1.createElement();
    nodeElement.setAttributeValue("Value","Hello");
    node1.addElement(nodeElement);
    but when
    i am trying to bind multiple values i am getting Exception ,,,,

    hi
    you are getting the exception because of cardinality property.
    i.e   true,false and
    you are trying to add morethan one element.
    so,if you want to add morethan one than one element you have to set the cardinality property to true,true (or) false,true.
    In your code do the following modification for changing the cardinality.
    For 0..n -->false,true
          1..n-->true,true
    IWDTransparentContainer tc=(IWDTransparentContainer)view.getElement("RootUIElementContainer");
    IWDNodeInfo node = wdContext.getNodeInfo().addChild("DynamicNode",null,true,true,false,false,false,true,null,
    null,null);
    IWDAttributeInfo strinfo=node.addAttribute("Value","ddic:com.sap.dictionary.string");
    dbyindex.bindTexts(strinfo);
    tc.addChild(dbyindex);
    hope this will solve your problem.
    In addchild(..) the parameters are
    addChild("Name ,
                    Element class for model node ,
                    Is singleton? ,
                    Cardinality ,
                    Selection cardinality ,
                    Initialise lead selection? ,
                    Datatype ,
                    Supplier function ,
                     Disposer function);
    Regards
    sowmya

  • Concatenate text and property of dimension in script logic

    hello experts,
    how to concatenate text and property of dimension in script logic?
    as example:
    dimension : interco
    property    : mgmtallocdefcc
    *WHEN TIME.YEAR
    *IS %YEAR_VAR%
    *REC(EXPRESSION=%VALUE%,ACCOUNT=12345,ENTITY="I_" [INTERCO],MGMTALLOCDEFCC)
    *NEXT
    then it will read all as text: I_[INTERCO].MGMTALLOCDEFCC
    for example the value of property mgmtallocdefcc in interco dimension (INTERCO.MGMTALLOCDEFCC) is ABCDE.
    what i expect is :I_ABCDE
    thanks!

    Hi Yoki,
    Concatenation is only possible between text and variables %VAR% or $VAR$.
    Like ENTITY=I_%SOMEVAR%
    But in your case instead of concatenate you have to use other property like TARGETENTITY having valid ENTITY members:
    ENTITY=INTERCO.TARGETENTITY
    B.R. Vadim

  • How to use property of dimension to filter the 2nd dimension in Allocation?

    Hi experts,
    How do we use a property of one dimension to filter out the members of another dimension in allocation script engine?
    eg of two dimensions
    1.)Entity dimension - (entity dimension)
      memberset:                                        Channeltype (property)
                       Stores
                        Store1                           Boutique
                        Store2                           Kiosk
                        Store3                           Branch
                        Store4                           Concession
                        Store5                           Franchise
                      Nonstore
    2.)business Channel dimension - (user define)
       memberset:
                   Channeltype   
                       Boutique
                       Kiosk
                       Branch
                       Concession
                       Franchise
                       Nochannel
    in allocation code
    *runallocation
    *factor
    *dim entity                          what=Nonstore;                where=bas(Stores)
    *dim businesschannel        what=nochannel;             where= ? ;
    *endallocation
    The thing is that when the engine selected store 2 for entity it should select kiosk as its businesschannel.
    Please advise.
    Thanks as always,
    yajepe

    Hi,
    In this case, I believe, you should have the allocation within a for loop. But you should note that the performance might reduce.
    *FOR %VAR% = BAS(STORES)
       *RUNALLOCATION
       *FACTOR
       *DIM ENTITY WHAT = NONSTORE; WHERE = %VAR%
       *DIM BUSINESSCHANNEL WHAT = NOCHANNEL; WHERE = %VAR%.CHANNELTYPE
       *ENDALLOCATION
    *NEXT
    Hope this helps.

  • Is there a way to  match property or dimension has multiple values?

    I have Endeca records indexed from database. Each record will have:
    ID, Name, CategoryID, CategoryName.... Each record may belong to multiple category. So after reindex, the record looks like the following:
    ID:0001
    Name: Name 1
    CategoryID:1
    CategoryID:2
    CategoryName: Cat Name 2
    CategoryName: Cat Name 1
    My question is "is there a way I can know categoryID:1 is matching categoryName: Cat Name 1, and categoryID:2 is matching categoryName: Cat Name 2"?

    Hi,
    There are a couple of ways to accomplish this that I've used. There may be others that I have not seen or considered.
    First is to create records with this category information and use RRN to combine the two. However, RRN may have licensing issues.
    So, you would have something like the book example:
    BookName: Freakonomics
    AuthorIds: 1, 2
    RecordType: Book
    AuthorId: 1
    AuthorName: Stephen Dubner
    RecordType: Author
    AuthorId: 2
    AuthorName: Steven Levitt
    RecordType: Author
    Then it's a standard RRN exercise to combine the books and authors at query time.
    The second approach is to create what I call aggregated or complex properties where you combine the subfields that are associated.
    Name: abc
    Category_Combined: CatId1<DELIM>CatName1
    Category_Combined: CatId2<DELIM>CatName2
    Your app code would have to split out the Category_Combined property into the sub-fields for display.
    Now, if you don't want to have CatId a searchable field, put a non-searchable character in front of it and configure it in your Search Characters. For example, choose some ASCII code that cannot be entered directly from a keyboard. Thus your property becomes:
    Category_Combined: <FunkyChar>CatId1<DELIM>CatName1
    This adds complexity to your pipeline code in that it has to create the concatenated fields and on your app code for searching, splitting, etc. But it works.
    -Tim

  • Mutiple users in owner property ofentity dimension

    According BPC administration guide, "The Owner property takes user and team names as values. You can enter multiple names and teams separated by commas."
    However, I have BPC\user1,bpc\user2 in the owner property, where BPC is the domain name,  I get the error of us2 is not a valid user.

    Hi Jianbai,
    Would request you to implement SAP Note: 1294047 for this issue. Here is the excerpt:
    BPC provides 'System user group' on Server Manager to get group users list from different domain. There is also another way to get different domain users list not by adding to the 'System user group'.User can use 'Custom Filter' functionality on admin console when user adds or modifies users.
    For example,
    1. Domain1\BPC_User1;Domain2\BPC_User2;..
    2. Domain2\BPC_User*
    3. Domain1\ BPC_User;Domain2\ BPC_User
    Hope this helps in resolving your issue.
    Regards,
    Poonam

  • Cardinal - Dimensions

    What does it mean by cardinality ? What is Cardinal dimensions
    line item dimensions ?
    How do these effect on the way we model the dimensions?
    Thanks

    Hi,
    Cardinality defines the numeric relationships between occurrences of the entities on either end of the relationship line.
    Check this link:
    http://www.datamodel.org/DataModelCardinality.html
    For cubes -> High Cardinality means that this dimension contains a large number of characteristic values. This information is used in accordance with the individual database platform in order to optimize performance. For example, an index type other than the standard may be used. Generally a dimension is perceived to have high cardinality when the dimension is at least 20% the size of the fact tables in terms of the number of entries each contain. Avoid marking a dimension as having high cardinality if you are in any doubt.
    Also refer the below link for Line Item Dim and High Cardinality.
    http://help.sap.com/saphelp_nw04/helpdata/en/a7/d50f395fc8cb7fe10000000a11402f/frameset.htm
    Check this explanation by pizzman:
    Re: High cardinality (CARDHeight) vs Line item
    Refer these links on line-item and cardinality:
    Line Item Dimension
    Re: Line Item Dimension
    Cardinality
    Re: High Cardinality Flag
    Bye
    Dinesh

  • Linked Dimension by property , in Input Template

    Dear All,
    I had input template with two dimension in X Axis, Dimension Project and Dimension Account.
    Each member in dimension project has account as property.
    If i create input template by report editor, i use the option dimension relation selection by property.
    My needs is, due my dynamic input template. I need to use selection in page axis to change the project , does anyone know how i link my account dimension to follow each project that change due my EPMDIMENSION OVERRIDE.
    Thanks,
    Suprapto

    Hi Raju,
    In Page AXIS , i use epmselect member, then i use EPMDIMENSION OVERRIDE to change the dimension Project.
    My Case is Dimension Project has lot of SAP - WBS in one project.
    Every SAP - WBS has different account, which is mapping at property in Dimension Project.
    So my question is , is there BPC Function that can display at Row Axis
    SAP - WBS ( PROJECT )    :   ACCOUNT
    Which is linked as dimension project property
    Thanks,
    Suprapto

  • OMBPlus: how to change Prefix property (dimension)

    Is it possible to change (or set during creating) Prefix property of dimension through OMB Plus?
    I think that this can be done with command
    OMBALTER DIMENSION_TABLE '<dimname>' SET PROPERTIES (<propname>) VALUES ('myval');
    But what is the name for Prefix dimension property?
    Maybe it is possible change this property only through GUI OWB?
    Oleg

    Oleg,
    Unfortunately, you cannot, so I filed bug 3519964.
    However, do note that the main reason for us asking a prefix is the ability for us to prefix key names being created automatically. You can always rename those key names afterwards to include the prefix you want/need.
    Thanks,
    Mark.

  • Follow-up on u0093Fact Table VS. Dimension relative sizeu0094

    You don’t have to read the background info. below, it is only for reference. I have already gone though several links as such your touch in your own words will be much appreciated.
    Can you help me understand these which came from the many links the Experts referred me .
    1. For better performance: “Use line item dimension where applicable, but use the "high cardinality" option with extreme care.”  Any clarification on “high cardinality”? And why with “extreme care”?
    2.  For better performance:  “1. Make the Index perfect and create secondary index based on requirement..”  I don’t seem to follow this index issue being raised here.
    Thanks.
    --Background: References from these past postings ---
    There is much to be said about performance in general, but I will try to answer your specific question regarding fact and dimension tables.
    First of all try to compress as many requests as possible in the fact table and do that regularily.
    Partition your compressed fact table physically based on for example 0CALMONTH. In the infocube maintenance, in the Extras menu, choose partitioning.
    Partition your cube logically into several smaller cubes based on for example 0CALYEAR. Combine the cubes with a multiprovider.
    Use constants on infocube level (Extras->Structure Specific Infoobject properties) and/or restrictions on specific cubes in your multiprovider queries if needed.
    Create aggregates of subsets of your characteristics based on your query design. Use the debug option in RSRT to investigate which objects you need to include.
    To investigate the size of the dimension tables, first use the test in transaction RSRV (Database Information about InfoProvider Tables). It will tell you the relative sizes of your dimensions in comparison to your fact table. Then go to transaction DB02 and conduct a detailed analysis on the large dimension tables. You can choose "table columns" in the detailed analysis screen to see the number of distinct values in each column (characteristic). You also need to understand the "business logic" behind these objects. The ones that have low cardinality, that is relate to each other shoule be located together. With this information at hand you can understand which objects contribute the most to the size of the dimension and separate the dimension.
    Use line item dimension where applicable, but use the "high cardinality" option with extreme care.
    Generate database statistics regularily using process chains or (if you use Oracle) schedule BRCONNECT runs using transaction DB13.
    Good luck!
    Kind Regards
    Andreas
    There are some simple things by which we can maintain the performance.
    1> Make the Index perfect and create secondary index based on requirement.
    2> Make statistics perfect.
    3> Based on data size in dimenssion table use lineitem dimenssion.
    HOpe this will help you.
    Suneel

    Hi Caud..
    1] High Cardinality..
    High Cardinality means that this dimension contains a large number of characteristic values. This information is used in accordance with the individual database platform in order to optimize performance. For example, an index type other than the standard may be used. Generally a dimension is perceived to have high cardinality when the dimension is at least 20% the size of the fact tables in terms of the number of entries each contain. Avoid marking a dimension as having high cardinality if you are in any doubt.
    Cardinality creates indexes on the Dimension table entries and there by you would see an improvement in performance.
    With Oracle DB, setting the Cardinality option causes a b-tree index to be built instead of a bitmap index even if it is not a line item dim.
    Setting it as a Line Item dim also causes a b-tree index to be built instead of a bitmap index, but also embeds SID directly in the fact table, eliminating the dimension table.
    As it changes from bit map to B-tree, u have to be careful as the SAP recommends the Bit map.
    2]As indices increased the performance tremendously, u have to consider when ever the performance is main factor. it is very easy for query to access the data in the data target if it already indexed.
    Refer this link..
    http://help.sap.com/saphelp_nw04/helpdata/en/a7/d50f395fc8cb7fe10000000a11402f/frameset.htm
    Hope it helps-
    Regards-
    MM
    Assign points if it is useful, it is right way to say thanks.
    Message was edited by: vishnuC

  • Line Item Dimention Vs Hig Cardinality

    HI ALL
               I have a problem with a cube and the below are the challenges...
                       1) can we use High cardinality / line item dimension if we already used one of these(High cardinality / line item dimension)?
                       2) while loading 4lakh records in to cube, i tried optimizing the cube by segregating characteristics into different dimension and i am successful in bringing down the percentage levels but all dimension levels are almost near to 30%. I Have only 1 key figure , will it cause any problem....
             please let me know the concept....
    Thanks
    vijay

    Hi Vijay,
    High Cardinality Purpose: If data volume stored in a table is very huge, it's difficult to retrieve particular record or sets of records. For fast retrieval purpose system creates Indexes on various columns, by default SAP BW creates 'Bitmap' index on each dimension.
    If dimension doesn't contains large number of distinct values 'Bit Map Indexes' are fine, but in case distinct values are high and the dimension table is at least 20% of the size of the fact table, SAP recommends checking the 'High Cardinality' check box to create 'B-Tree' indexes. When compared to Bitmap indexes B-Tree indexes data retrial is fast, this is recommended on Oracle Data base.
    Line Item Dimension: By checking this the relational path of Fact Table -> Dim_ID -> SID will be reduced to Fact -> SID, so you must create a dimension which doesn't create more relations between included characteristics in dimension.
    So you can check Line Item dimension to make the system aware of not creating the Dim_ID path and you can check the High Cardinality to make the system to generate B-Tree indexes.
    Hope this helps.
    Regards
    -Sunil         

  • Line item dimensions

    hi..
    wat is line item dimensions nd cardinal heights???
    regards
    deepa

    Hi Deepa,
    Line Item Dimension:
    When your dimension table becomes large (>10% of the fact table) then you can make the dimension a "line-item" dimension. The constraint is that the dimension should have only 1 characteristic. By making the dimension as line item the SID values are directly used instead of the Dim ids and the query performance is better.
    The disadvantage is that once you make the dimension line -item you cannot add another characteristic to that dimension and you cannot remove the line -item checkmark without deleting the cube data.
    http://help.sap.com/saphelp_nw04/helpdata/en/a7/d50f395fc8cb7fe10000000a11402f/frameset.htm
    Multi Dimensional modelling will include fact table in center with Dimension tables around it. Overall system performance is greatly affected and dependent on the size of these dimension tables in respect to the fact table. SAP recommends that size of dimension table should be 20% of the size of fact table. In case if this size is more than 40% dimension should be defined high cardinal ( should be supported by database) If dimension tables are more than 40% the dimension should be defined as line item. When dimension is defined as line item, Dim ID in the fact table is replaced with the SID ID, Only one characteristic will be defined in that dimension. This results in improved performace.
    Here is how it will work
    Fact table
    Dim ID1 DIM ID2 DIM ID3 AMOUNT QTY
    Dimension Table 1
    Sid1 DimID1
    Dimension Table 2
    Sid 4 Dim ID 2
    Dimension Table 3
    Sid6 Dim ID 3
    Cosidering that Dim1 is too big, We can define Sid 1 in Line Item Dimension and Dim ID 1 is replaced by Sid 1 so fact table will look like this
    Sid 1 Dim2 Dim3 Amount Qty
    Compounding Attribute is superior object to define characteristic, for example
    Plant A manufactures TV
    Plant B manufacture TV
    The only way to differentiate product can be TV and Plant A
    Also,
    Cost center 100 can be in Controlling Area A and
    Controlling Area B can also have cost center 200,
    So Cost center is compounded with CO Area to uniquely identify that line.
    Just check this thread line item dimension
    Cardinality defines the numeric relationships between occurrences of the entities on either end of the relationship line.
    Check this link:
    http://www.datamodel.org/DataModelCardinality.html
    For cubes -> High Cardinality means that this dimension contains a large number of characteristic values. This information is used in accordance with the individual database platform in order to optimize performance. For example, an index type other than the standard may be used. Generally a dimension is perceived to have high cardinality when the dimension is at least 20% the size of the fact tables in terms of the number of entries each contain. Avoid marking a dimension as having high cardinality if you are in any doubt.
    Also refer the below link for Line Item Dim and High Cardinality.
    http://help.sap.com/saphelp_nw04/helpdata/en/a7/d50f395fc8cb7fe10000000a11402f/frameset.htm
    Check this explanation by pizzman:
    Re: High cardinality (CARDHeight) vs Line item
    Refer these links on line-item and cardinality:
    Line Item Dimension
    Re: Line Item Dimension
    Cardinality
    Re: High Cardinality Flag
    ****Assign Points If Helpful****
    Regards,
    Ravikanth

  • Is the ISBEGINNING property required in v7.0?

    We are in the process of upgrading from 5.1 SP7 to 7.0 SP4.  I was planning on adding the ISBEGINNING property to the Time dimension, but I did not know if it was absolutely required in 7.0.
    Our fiscal year follows the calendar year, so we really do not have a use for it.  Should I add it and simply put a "1" in our 200x.TOTAL, Q1.200x and 200x.JAN members? (And "0" in the other members)
    Thanks!!

    Hi,
    Yes, it is required. You dont have to add the property manually. Go to Maintain Dimension Property -> Modify Dimension Property, The "IsBeginning" property will be added automatically.
    In the Time dimension member sheet, enter 1 in the ISBEGINNING property for the periods that correspond to the beginning of a year, such as Q1 or January. Do this for all Time dimensions that incorporate YTD calculations. In case of parent level members, enter 1 in the property for starting period members (Total, Q1 and JAN). In case of base-level members, enter 1 in the property for starting period members and for members of other hierarchies whose TIMEID is the same as one of the YTD input hierarchies.
    For example,
    Consider a case in which 2008.JAN of the YTD input hierarchy and 2007.FY.NOV in another hierarchy are both using the same TIMEID (such as 20080100). In this case, the ISBEGINNING value of both 2008.JAN and 2007.FY.NOV would be 1.
    This property will be used to calculate YTD.
    Hope it helps.

  • Cardinality Error.

    Hi,
    I am new to web dynpro and was using a tutorial on:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c09fec07-0dab-2a10-dbbe-c9a26bdff03e
    to learn about select options in web dynpro. However when I execute the application in the browser, I get the following error message.
    The following error text was processed in the system IDS : Number of Elements of the Collection of Node SELECTION.1.RANGE Violates the Cardinality.
    I have tried various combinations of cardinality (both for the cardinality property and the selection property) for the range node in the view, but nothing seems to work.
    Please help.
    Mick

    Hi Mick,
    Do the following.
    1. Instead of taking nodes seperately in component and view context and map them, use drag-and drop method to map the nodes i.e. drag-anddrop the component node to your view context.
    2. check the cardinality 0..N.
    Regards,
    Anirban

  • Problem in maintaining dimension 11g

    Hello. I have
    DB 11.1.0.7.0
    AWM 11.1.0.7.0В
    During maintainig dimension I receive the error
    Class of error: Failed Express
    Descriptions of errors Server:
    INI: Error creating controller definition, universal in TxsOqConnection:: generic <BuildProcess>
    INI: XOQ-00703: Error executing DML OLAP "(GROUPINGID DIM_ABONENT_PARENTREL INTO DIM_ABONENT_GID USING DIM_ABONENT_LEVELREL GID: ORA-36979: Property *** GID dimension status mismatches level dimension status *** You can assign only team GROUPINGID.
    ), Universal in TxsOqAWManager:: executeCommand
    at oracle.olapi.data.source.DataProvider.callGeneric (Unknown Source)
    at oracle.olapi.data.source.DataProvider.callGeneric (Unknown Source)
    at oracle.olapi.data.source.DataProvider.executeBuild (Unknown Source)
    at oracle.olap.awm.wizard.awbuild.UBuildWizardHelper $ 1.construct (Unknown Source)
    at oracle.olap.awm.ui.SwingWorker $ 2.run (Unknown Source)
    at java.lang.Thread.run (Unknown Source)
    Thank you!

    You may have hit bug 7718709. Here is the description and workaround from the bug report.
    If a user creates a dimension with N levels and M attributes where N * M >
    31, and if the user selects "Create level attribute columns in views" in AWM> for each of those attributes, then the server will incorrectly calculate
    attribute GROUPING IDs for those levels. This can lead in some cases to the
    following type of error during dimension build.
    XOQ-00703: Error executing OLAP DML command "(GROUPINGID PRODUCT_PARENTREL
    INTO
    PRODUCT_ATTR_CGID USING PRODUCT_LEVELREL GID : ORA-36979: Property ***GID
    dimension status mismatches level dimension status*** can only be set by the
    GROUPINGID command.
    A partial workaround for this issue is to uncheck "Create level attribute
    columns in views" for each attribute until the number N * M (above) goes
    below 31.I have seen this happen in other cases, too, but this is the most common one.

Maybe you are looking for

  • Can I use my Nike+ with 2 Different Computers: my home mac and work PC?

    I use my Nike+ with my Nano on my home iMac and track my runs on Nike+.com. Works great. However, I travel for work and will be back on the road next week with my work PC. I don't have itunes loaded on my work PC (not allowed - its not "corporate" so

  • E-mail are received as DAT file instad of PDF

    Hi All, Please try to assist in this strange topic: When I try to send an e-mail via the SBO (press on the envelope button and choose u2018yesu2019 when the option u2018Would you like to attach an edited report to the e-mail?u2019 is display), the re

  • Auto mapping of Columns to custom XML tags

    Hello: I would like to build interface to my Oracle database. Instead of exposing the column names, I would like to translate them to business-savvy XML tags. Of course, I can do this by using the AS construct in my SELECT statements. I would like to

  • Overdrive

    I updated my overdrive app and now it will not let me open it. I reloaded adobe but I do not know how to open on an iPad. Any suggestions

  • Delay with PAP2T connected with Intercom

    Hi guys, maybe you have some hints for me. At the office entrance we've got a doorbell/intercom. If you ring - the intercom connects to the voip telephone system. We connected the RJ11 of the intercom to the PAP2T. So far, the system's running but th