Demographics dimension and Logical Key.

Hello,
I have a simple star schema where there is a fact table linked to four dimensions. One of the dimensions is Customer Demographics. Others are Product, Time and Dealer.
Am I correct in using surrogate key of the demographics dimension as Logical Key for Demographics dimension in the BMM layer? Could you please let me know?
Thanks,
Manoj.

If the requirement is to do lots of "demographic" type queries - like sales amounts by race, gender, age, etc. - then snowflaking it off of a "person" dimension would really hurt query performance. Typically you only have demographic dimensions when either:
1. You don't have a person dimension at all - it's only the demographics you are interested in, or
2. You have a person dimension with millions of members, and splitting the demographics out into a separate dimension (typically a few thousand rows) means you can do a small join between the fact and a 3 thousand row demographics dimenion instead of doing a join between the fact table and a multi million row dimension table
In either case, snowflaking off of a person dimension table is either impossible or very bad for performance.
Thanks,
Scott

Similar Messages

  • Time Dimensions and Logical dimension "..that not join to any fact source"

    Hi Guys,
    I get the following error on the ANSWERS front end:
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 14026] Unable to navigate requested expression: ToDate(SPECIFICG:[DAggr(RFACT.SPECIFIC [ ] by [ EFact.NO [ ] , Year.ID [ ] ] )], [Level Years]). Please fix the metadata consistency warnings. (HY000)
    SQL Issued: SELECT EFact.NO saw_0, Fact.YTD_E saw_1, EFact.MTD_E saw_2 FROM "E#1" ORDER BY saw_0
    The consistency manager shows no errors and the tables are physically joined up via foreign key i.e.
    fact year monthday
    data - date - date
    year month
    day
    [see screen print|www.metallon.org/test/foreign.jpg]
    I would be thankfull for any suggestions!

    Hello wildmight.
    I followed this tutorial:
    http://www.rittmanmead.com/2007/04/30/obi-ee-time-dimensions-and-time-series-calculations/
    Why should this layout not work?
    Do you have a better idea?
    When you say "it has to be one table" do you mean
    that quartermonthday and year need to be ONE?
    I just rememered that Oracle Hyperion Planning has to have
    time and months seperated.
    Hello mod100.
    What do you mean hierachy over the time dimension?
    Is it not obvious from the screen print that I have a hierachy
    i.e. yeartotal - years and
    quarters - months- days.
    I read that by default the LEVELS are set to the lowerst. so thats fine. I set them by myself to the lowest as well but the ERROR is still the same.
    no, I have not set the levels as in
    http://obiee-tips.blogspot.com/2009/10/logical-levels.html

  • Time dimension and chronological key

    HI ALL
    I WORK ON OBIEE 11G REPORTS
    WHAT IS THE EXACT USE OF TIME CHECK BOX AND CHRONOLOGICAL KEY??
    AND HOW CAN I USE IT
    ANY HELP ??

    Hi,
    What is the chronological key use?
    A. Typically time dimension differs from all other dimensions in one way and that is,
    all other dimensions dont care about the order of the values in it.
    e.g. in region_dim the values are north, south, west and east. Here nobody wants to see whether north comes first or south comes first. i.e. no order is required here.
    in the case of time dimension there needs to be a particular order for all the values present in it.
    e.g. 2010 is earliest and 2004 is older. Dec-10 is earliest and jan-10 is older. i.e. the values in the time dimensiion needs to follow a particular sorting order. So the chronological key is the key which tells the obiee that the data is incrementing based on the chronological column.
    Here you may get another doubt. i.e. you are having columns like year, half_year, quarter, month, week and day. Here which one should become the chronolgocial key?
    Analyse it yourself. If you kept year as chro key then obiee will be confused whether jan-10 is earliest or feb-10 is earliest. Because it knows only that 2010 is earliest and 2009 is older.
    So always it should be the lowest level oif the dimension which needs to be the chronological key. In the abouve case it should be date.
    You can select either date or date_id(this could be a sequence generator values).
    2. what is the use time dimension?
    A.If all you want is to achieve drills from Month, Quarter and Year then treat it as a normal dimension and create the levels. But if you want to do calculations like YTD, QTD and MTD then you need to create a time dimension.
    http://oraclebizint.wordpress.com/2007/11/05/oracle-bi-ee-101332-understanding-todate-and-ago-achieving-ytd-qtd-and-mtd/
    Refer the above link for time dimension.
    Award points it is useful.
    Thanks
    satya
    Edited by: Satya Ranki Reddy on May 2, 2012 12:29 AM

  • Clash of Mac and Logic Key Command Assignments

    Greetings to all
    I use a Mac Powerbook G4 laptop 15" Model 5,8
    In Logic I have keys F9-F12 programmed as the slow and fast rewind forward and back ( ie 4 commands in all)
    The Mac factory programmed short cuts, F11 and F12 are usually used for Expose/Mac functions but are reprogrammable, so I went into System Preferences/Keyboard and reprogrammed them as OPTION F11 and F12 for Mac functions.
    This then allowed me to use F11 and F12 for the dedicated Logic function.
    However, Apple System Preferences for some reason does not 'remember' the reprogrammed keyboard short cut ... which means that each time I boot up Logic, I have to go into System Preferences and reprogramme the short cuts in Apple again.
    Can anyone suggest a solution?
    Powerbook G4   Mac OS X (10.4.8)  

    Hi
    Sounds like you are still using the (old) Logic 8 (?) key commands. Zoom was changed in the Logic 9 defaults to Control+Option and the arrow keys.
    Control Arrow L/R controls Mission Control in Lion (ie 'Spaces').
    You could change the defaults in System Preferences:
    CCT

  • Day dimension and surrogate keys

    Hello,
    I'm trying to create a 'day' dimension using OWB. I was thinking about a set of levels like this:
    - 'date_id'
    - 'special_value' (such as unknown)
    - 'calendar_date'
    - 'month_day'
    - 'month'
    - 'year'
    How can I implement something similar with OWB? I have to create one level for each dimension column? And how can I determine the value of date_id in the mapping?
    Thanks in advance for the help
    Cosma

    Hi Cosma,
    There's an example for this in the Oracle-by-Example session for OWB: http://www.oracle.com/technology/obe/obe9ir2/obe-dwh/owb/owb.htm
    Around halfway through you'll find it.
    Good luck, Patrick

  • Primary Key & Logical Key in Hierarchy

    Am a bit confused with the primary key in Dimensions.....
    1. Can anyone explain the use of Primary key and the criteria to define the primary key for a level if the level has more than one level keys....
    2. If a level has more than 2 logical keys and both of them are used for drilldown (use for drilldown checked) then what will happen.... lets say we have 2 keys key1 & key2 then which key is used for drilldown in answers.....

    1. Can anyone explain the use of Primary key and the criteria to define the primary key for a level if the level has more than one level keys....The level key defines the unique elements in each logical level. The dimension table logical key has to be associated with the lowest level of a dimension and has to be the level key for that level.A logical level can have multiple level keys. When that is the case, specify the key that is the primary key of that level.
    2. If a level has more than 2 logical keys and both of them are used for drilldown (use for drilldown checked) then what will happen.... lets say we have 2 keys key1 & key2 then which key is used for drilldown in answers.....With "use for drilldown" checked for 2 logical keys , when you drill form the parent level both the keys will be displayed in the report.
    Rgds,
    Dpka

  • Logical Key for Degenerate Dimension

    Hi Gurus,
    Need some help on the degenerate dimensions in the BMM layer.
    I have one fact table with dimension attributes and I would like to move the attributes into separate logical table and treat it as dimension.
    Now my newly created dimension has the Fact LTS and I would like to assign a logical key to the newly created table and then create the logical dimension.
    Can anyone provide some inputs on we can assign the logical key to the column?
    Thanks

    Hi Srini,
    Since my main logical fact table consists of two LTS and the dimension being created from this table will also have 2 LTS, the content level will be set to all levels on which the fact is joined.
    So I would like to create a logical dimension based out of my dimension and then assign the content level at the detail level.
    Please let me know if I am not clear.
    Thanks

  • Define logical Key on Logical Dimension Table

    It's recommended to define a logical key for any logical dimension table - in 10g there was a function on the right mouse button, as far as I remember - but in 11g there is no such functionality ? the foreign key can be added by "green plus" button, but not the primary key ?? you have to type in the name of the key, then you can choose the column and then you select as primary key ... funny.
    bug or undocumented feature?

    Hi Srini,
    Since my main logical fact table consists of two LTS and the dimension being created from this table will also have 2 LTS, the content level will be set to all levels on which the fact is joined.
    So I would like to create a logical dimension based out of my dimension and then assign the content level at the detail level.
    Please let me know if I am not clear.
    Thanks

  • Primary Key and Chronological Key for Time Dimension

    Could someone please shed light whether it's better to use normal PK or Calendar Date (which is a chronological key on the most detailed level). I tried both and haven't noticed any difference. But my understanding is that I still need to have the PK key on the most detailed level in time hierarchy.
    Thanks

    Matt,
    the PK of the Time Dimension is a regular sequence numeric key. I have it defined as a logical PK for the dimension. However, I guess I was talking about hierarchy key. I tested it either way and the query time is the same. So I guess it doesn't really matter.
    --------Year
    Year (chronological key and primary key)
    ------------------Quarter
    Quarter (key)
    Quarter+Year (primary key, chronological key)
    ---------------------------------Day Detail
    PK (key)
    Date (primary key , chronological key)
    I hope it makes sense.

  • Foreign keys in SCD2 dimensions and fact tables in data warehouse

    Hello.
    I have datawarehouse in snowflake schema. All dimensions are SCD2, the columns are like that:
    ID (PK) SID NAME ... START_DATE END_DATE IS_ACTUAL
    1 1 XXX 01.01.2000 01.01.2002 0
    2 1 YYX 02.01.2002 01.01.2004 1
    3 2 SYX 02.01.2002 1
    4 3 AYX 02.01.2002 01.01.2004 0
    5 3 YYZ 02.01.2004 1
    On this table there are relations from other dimension and fact table.
    Need I create foreign keys for relation?
    And if I do, on what columns? SID (serial ID) is not unique. If I create on ID, I have to get SID and actual row in any query.

    >
    I have datawarehouse in snowflake schema. All dimensions are SCD2, the columns are like that:
    ID (PK) SID NAME ... START_DATE END_DATE IS_ACTUAL
    1 1 XXX 01.01.2000 01.01.2002 0
    2 1 YYX 02.01.2002 01.01.2004 1
    3 2 SYX 02.01.2002 1
    4 3 AYX 02.01.2002 01.01.2004 0
    5 3 YYZ 02.01.2004 1
    On this table there are relations from other dimension and fact table.
    Need I create foreign keys for relation?
    >
    Are you still designing your system? Why did you choose NOT to use a Star schema? Star schema's are simpler and have some performance benefits over snowflakes. Although there may be some data redundancy that is usually not an issue for data warehouse systems since any DML is usually well-managed and normalization is often sacrificed for better performance.
    Only YOU can determine what foreign keys you need. Generally you will create foreign keys between any child table and its parent table and those need to be created on a primary key or unique key value.
    >
    And if I do, on what columns? SID (serial ID) is not unique. If I create on ID, I have to get SID and actual row in any query.
    >
    I have no idea what that means. There isn't any way to tell from just the DDL for one dimension table that you provided.
    It is not clear if you are saying that your fact table will have a direct relationship to the star-flake dimension tables or only link to them through the top-level dimensions.
    Some types of snowflakes do nothing more than normalize a dimension table to eliminate redundancy. For those types the dimension table is, in a sense, a 'mini' fact table and the other normalized tables become its children. The fact table only has a relation to the main dimension table; any data needed from the dimensions 'child' tables is obtained by joining them to their 'parent'.
    Other snowflake types have the main fact table having relations to one or more of the dimensions 'child' tables. That complicates the maintenance of the fact table since any change to the dimension 'child' table impacts the fact table also. It is not recommended to use that type of snowflake.
    See the 'Snowflake Schemas' section of the Data Warehousing Guide
    http://docs.oracle.com/cd/B28359_01/server.111/b28313/schemas.htm
    >
    Snowflake Schemas
    The snowflake schema is a more complex data warehouse model than a star schema, and is a type of star schema. It is called a snowflake schema because the diagram of the schema resembles a snowflake.
    Snowflake schemas normalize dimensions to eliminate redundancy. That is, the dimension data has been grouped into multiple tables instead of one large table. For example, a product dimension table in a star schema might be normalized into a products table, a product_category table, and a product_manufacturer table in a snowflake schema. While this saves space, it increases the number of dimension tables and requires more foreign key joins. The result is more complex queries and reduced query performance. Figure 19-3 presents a graphical representation of a snowflake schema.

  • Partitioning SCD Type 2 dimensions and possible update sto partition key

    Hi,
    We have a fact table which only gets inserts and are considering range partitioning this on sell_by_date (as can archive off products which long past sell by date) and hash sub-partition on product_id.
    Heard about partition wise joins and are considering partitioning the SCD Type 2 product dimension in similar way, range partition on product_sell_by_date and sub-partition by hash on product_id in oredr to gte benefiit of partition-wise joins.
    However, is possibility that product_sell_by_date could be updated via delta loads which maintian the SCD type 2 - in theory this attribute shouldn't be updated much.
    Any thoughts, generally on partitioning dimension tables and partition keys which can be updated.
    Many Thanks

    1. Create a function as mentioned by you "max value +1 on grouping of data "on target schema.
    2. Map to the target column
    3. select TARGET as exection area in interface ( don't select source or staging) for this column in interface mapping...
    4. select option only INSERT ( remove de-select UPDATE option) for this column in interface mapping.
    5. Execute the interface.
    Please let me know if this works
    Edited by: neeraj_singh on 6 Aug, 2012 10:38 PM
    Edited by: neeraj_singh on 7 Aug, 2012 1:55 AM

  • The table name or tcode to count the number of Dimensions and Key Figures

    Hi all,
    Do you have an idea about the table name or tcode to count the number of Dimensions and Key Figures of an Infocube WITHOUT installing the cube from Business Content?
    Thanks in adv.
    Ajay

    Hi,
    You can't do that because there's no active table in the system for the Business Content since it hasn't been installed yet...
    One thing you could do is go to the Business Content Tab, select "Infoproviders by InfoArea" on the left side, look for the Cube or DSO you want to check, right click on it and select "Display Description".
    On the window that opens you'll have a list of all InfoObjects and Key Figures. You also have the option to Display it as Start Schema, where you can see the Dimensions, etc.
    Hope this helps.
    Luis

  • How to determine the logical Keys of logical fact table in BMM layer?

    Hello guys
    I'd like to know more about how to know what columns of the logical fact table should be used as key in BMM layer. How OBIEE behaving differently when different keys are selected?
    In my situation, I have 1 fact table that physically joins to 20 dimensions in physical layer. Therefore, in physical layer, this fact table has about 20 foreign keys but no primary keys..
    In the logical layer, this fact table is logically joined to the same group of dimension tables. So in this case, how do I know what columns in logical fact table I should use as keys?
    Please advice
    Thanks

    thanks for the reply...
    The interesting thing I notice is that, when I start using fragmentation with the fact tables in its LTS, if not primary key is defined in the logical fact table, then I will be getting errors:
    [nQSError: 10058] A general error has occurred. [nQSError: 14023] None of the fact sources for columns are compatible with the detail filter []. (HY000)
    When I create the key by choosing random columns from the fact table as the logical key columns, this error goes way and the correct SQL is generated according to the frag..
    Because of such behavior, I'd really like to know how logical key really works in BMM layer.

  • Creating dimension and levels

    Hi ,
    I need drilling functionality in reporting...and i have tried few things but its not working...need ur help for the same....
    I have two dimension table
    1>Corporate
    2>Departments
    I need drilling functionality...so that when i click on Corporate i moved to Depatrments...
    I did the following...
    1>Right click on Department Table and selected "create dimension"
    I got the following structure for dimension at this moment...
    DepartmentDim
    DepartmentTotal
    DepartmentDetail
    2>Now i right at "DepartmentDetail" and since i need parent of the Department...i selected Parent Level from the right click menu....
    The structure at this moment is:
    DepartmentDim
    DepartmentTotal
    Corporate.......................................(This is the name i gave in Parent Level Selection)
    DepartmentDetail
    3>I right clicked at "Corporate" and selected Logical Key from the option....
    Thats it....this is what i did....
    and after this in Answers...in column Corporate i selected the Drilllling functionality....but things are not working....
    Need help for the same....
    Even if you can provide me some link or document from where i can find some leads will be helpful...
    Looking forward for help
    Vishal

    I am able to resolve this issue...

  • Building Dimensions and Cubes in 11.1

    Hi Experts,
    Can anyone provide me a weblink or atleast steps as to how to create a Dimensions and Cubes in OWB 11.1.
    For practice purpose i am accessing HR User. In there i have selected Locations and Countries table and is using it to create the Place_Dim (Place Dimension)
    Issues:
    1. What are Levels and Heirarchiies
    (In ROLAP its asking me to use the surrogate Key i both the levels)
    2. It is asking me to bound it to table or view. I have never seen any help regarding in bounding and out bounding in the tool.
    Please help.
    Regards,
    Ravi Remje

    Many Thanks Dave for your help. The links are very helpfull.
    I have a silly doubt in my mind. Kindly apologize for my dumbness.
    Concerns:
    I went through the OWB tool and came to the conclusion that the DIMENSIONS and CUBES are logical object. However, if i want to use it as a Physical table, is it any way as in how we can use the simple tables as different types of dimensions and facts by changing their loading type. Is it any possible way to implement the same feature for DIMENSION and CUBE objects. I dont want them to be used as views but as a table.
    Please help.
    Regards,
    Ravi Remje

Maybe you are looking for

  • Regarding Updating Purchase order status

    Hi, Could any one tell me how we relate equipment(IE02/IE01-EQUNR) with purchase order(AUFK-AUFNR). how we will find that for a single equipment how many purchase orders are existed. and i want to update user status in purchase order could any one te

  • How To change my Game Center Account's Apple ID?

    Hi, i want to change my Game Center account's Apple ID because i used another apple ID a long time ago and i have a lot of points and of games attached with this account. I want to attach my apple ID (the one wich i use now) with my Game Center accou

  • ECC 6.0 Installation error @ @ @ @

    Hi, I am installing ECC 6.0 on win 3k server and oracle 10g. I  get this error SDM deployment failed. Please any one know how to solve this problem let me know soon. Thanks in advance

  • Flex Txt Input Controls

    I'm new to flex and need some help... I have a combo box which have 2 options get data from SQL based on either Employee Name or Employee ID and next to it is text input box to enter the name or id. This is all in my mainapp.mxml. In my EmpRef.mxml I

  • Is it possible to add a JPanel to a JMenuItem? - HELP!!!!!!!!!!!!!!!!!!!!!!

    Is it possible to add a JPanel to a JMenuItem? If so how would you do this. What I'm trying to do is add a JPanel that has a bunch of JButtons added to the panel and then add the JPanel to the JMenuItem. This allows you to have more items added to on