SSAS 2008 Using multiple (three) fact tables in the same cube

Hi, I have three fact tables in my cube,
Actions
Events
Visits
Events captures anything that happens, any transaction.  It contains parent actions and parent visits, plus other things that business deems as "actions" that change all the time.
Actions captures a subset of Events and has its own transactional structure.  Each action has an event, but not every event has an action.
Visits is a completely different subset of Events with a very different transactional structure from both events and actions.  Each condition can have an event, but not every event has a condition.
These facts don't have many overlapping dimensions, perhaps a couple of outrigger look-up dimensions, like Codes and Dates.
I am struggling to reorganize the cube in such a way that I don't have to process with errors and unknown dimension members.  Is there any specific guidance re: what to do in these situations?

@Victor Rocca
Some dimensions are common, like Dates and Codes, but mostly they are their own dimensions.  Visits
and Actions facts have foreign keys from Events in them, so I would prefer to join directly, anyway.

Similar Messages

  • Distinct count for multiple fact tables in the same cube

    I'm fairly new to working with SSAS, but have been working with DW environments for many years.
    I have a cube which has 4 fact tables.  The central fact table is Encounter and then I also have Visit, Procedure and Medication.  Visit, Procedure and Medication all join to Encounter on Encounter Key.  The relationship between Encounter
    and Procedure and Encounter and Medication are both an optional 1 to 1.  The relationship between Encounter and Visit is an optional 1 to many.
    Each of the fact tables join to the Patient dimension on the Patient Key.  The users are looking for a distinct count of patients in all 4 fact tables.  
    What is the best way to accomplish this so that my cube does not talk all day to process?  Please let me know if you need any more information about my cube in order to answer this.
    Thanks for the help,
    Andy

    Hi Andy,
    Each distinct count measure cause an ORDER BY clause in the SELECT sent to the relational data source during processing. In SSAS 2005 or later, it creates a new measure group for each distinct count measure(it's a technique strategy for improving perormance).
    Besides, please take a look at the following distinct count optimization techniques:
    Create Customized Aggregations
    Define a Processing Plan
    Create Partitions of Equal Size
    Use Partitions Comprised of a Distinct Range of Integers
    Distribute the Hash of Your UserIDs
    Modulo Function
    Hash Function
    Choose a Partitioning Strategy
    For more detail information, please refer to the article below:
    Analysis Services Distinct Count Optimization:
    http://www.microsoft.com/en-us/download/details.aspx?id=891
    In addition, here is a good article about SSAS Best Practices for your reference:
    http://technet.microsoft.com/en-us/library/cc966525.aspx
    If you have any feedback on our support, please click
    here.
    Hope this helps.
    Elvis Long
    TechNet Community Support

  • "you can not use multiple instance of Program at the same time"

    Hello @ all,
    I have a Problem, after the installing from Acrobat Testversion and acrobat reader in version in "all Combination" 8 an 9.
    I get this misstake information "you can not use multiple instance of Program at the same time" if I want open more then 1 .pdf.
    If I have no pdf open, but acrobat/reader so i can´t open with the same Misstake.
    I have deinstalled and installed, Allways I bekame the same information. I tryed all things to clean and know i don`t know forward.
    Important: by Drag an Drop in the Acrobat Reader it is going, but by direct click on the pdf i get mistake.
    Maybe, you know what I can do!
    Thanks for help!

    Installation of both Acrobat and Reader in the same Windows machine is not advisable. If I were you, I would remove both completely and then reinstall the one you want to keep.

  • Problem using 2 Fact tables with the same dimension

    Hi,
    I have noticed a very strange behaviour in Presentation Services / BI Administrator. I have 2 cubes (created in OWB) which are in the same business model, they are set up with foreign keys etc. and works as they should using them separately. Problem is (sometimes!) when I want to use the common dimension (Project) against both of the fact tables (Sales Order and Purchase Order).
    Scenario 1:
    If I use Project Id, Purchase Amount, Sales Amount I get either an amount in Sales Amount or in Purchase Amount, BUT if the Project Id starts with a letter (not starting with a number) it will show the correct amount for both Sales- and Purchase Amount.
    Scenario 2:
    I use Project Description (even followed by Project Id or not), Sales Amount, Purchase Amount I get the correct numbers for all projects. Project Description must come before Project Id or else it will not work.
    I only noticed this problem when using both of the Fact tables since I want to compare Sales Amount and Purchase Amount in each Project. The Dimension for Project consist of Project, Sub Project and Activity and works fine. If I only use Sales Amount or Purchase Amount with Project Id I don't get this error. Only when both numbers are used.
    I would be very happy if anyone have a good solution/explanation to this problem! Seems like could be something in the BI Server memory that goes wrong somewhere.

    The strange thing is that the results from the queries are correct running them in SQL Developer. This is one that works:
    SELECT Project.Project saw_0, "- SalesOrderFact"."Sales Amount" saw_1, "- PurchaseOrderFact"."Purchase Amount" saw_2, REPORT_SUM(saw_1 BY ), REPORT_SUM(saw_2 BY ) FROM SalesOrder ORDER BY saw_0
    SALES ORDER:
    select T3032.PROJECT_DESCRIPTION as c1,
    sum(T161.SALES_AMOUNT_LOCAL) as c2
    from
    DIM_PROJECT_V T3032,
    CUBE_SALES_ORDER T161
    where ( T161.DIM_PROJECT = T3032.DIMENSION_KEY )
    group by T3032.PROJECT_DESCRIPTION
    order by c1
    PURCHASE_ORDER:
    select T3032.PROJECT_DESCRIPTION as c1,
    sum(T3020.TOTAL_BUY_AMOUNT) as c2
    from
    DIM_PROJECT_V T3032,
    CUBE_PURCH_ORDER T3020
    where ( T3020.DIM_PROJECT = T3032.DIMENSION_KEY )
    group by T3032.PROJECT_DESCRIPTION
    order by c1
    And this will give the wrong result in Answers (correct in SQL..):
    SELECT Project."Project Id" saw_0, "- SalesOrderFact"."Sales Amount" saw_1, "- PurchaseOrderFact"."Purchase Amount" saw_2, REPORT_SUM(saw_1 BY ), REPORT_SUM(saw_2 BY ) FROM SalesOrder ORDER BY saw_0
    SALES_ORDER:
    select T3032.PROJECT_KEY_NAME_ID as c1,
    sum(T161.SALES_AMOUNT_LOCAL) as c2
    from
    DIM_PROJECT_V T3032,
    CUBE_SALES_ORDER T161
    where ( T161.DIM_PROJECT = T3032.DIMENSION_KEY )
    group by T3032.PROJECT_KEY_NAME_ID
    order by c1
    PURCHASE_ORDER:
    select T3032.PROJECT_KEY_NAME_ID as c1,
    sum(T3020.TOTAL_BUY_AMOUNT) as c2
    from
    DIM_PROJECT_V T3032,
    CUBE_PURCH_ORDER T3020
    where ( T3020.DIM_PROJECT = T3032.DIMENSION_KEY )
    group by T3032.PROJECT_KEY_NAME_ID
    order by c1
    As you can see the SQL look very familiar, and I cannot see anything in SQL that should be the cause of this error. I think the error must be in the BI Memory or something.
    Any ideas?

  • Using multiple refinement web parts on the same page but have them hidden until needed

    I have a search results page that has several different Core Results web parts on it (each is connected to a different result source). all hidden by tabs using the HillbillyTabs interface
    http://www.sharepointhillbilly.com/Lists/Posts/Post.aspx?ID=42
    unfortunately you cant share a refinement web part across multiple results web parts. So I am left trying to figure out how to hide several refinement web parts and only show the active refinement webpart when the result source tab is selected.
    The template im using is an OOTB standard search results template with the refinement panel on the left navigation zone and the core results web parts configured in the main content zone.
    Scenario:
    Search text box passes query to multiple results web parts on a page. Only one results web part is displayed at a time (active tab). The refiner for the active tab shows and displays its refiners in the navigation panel.
    There are multiple refinement web parts in the navigation panel associated with each core results web part in the main content zone. These refiner web parts are configured with custom refiners.
    the results page displays just one results web part at a time via tabbed interface.
    I am trying to figure out how to make the refiner web parts show and hide depending on which tab is selected.
    Any help pointing to someone thats already attempted this would be appreciated! 
    Eric

    Hi,
    For your issue, you can consider using SharePoint Search Navigation which can achieve a similar feature but not on the same page.
    Search Navigation allows users to move quickly between search experiences listed in the Navigation. Navigation is displayed in the Quick Launch control on search pages, and can also be shown as a drop-down menu from the search box.
    For more information, you can refer to the blog:
    http://blogs.technet.com/b/tothesharepoint/archive/2013/11/13/how-to-add-a-customized-search-vertical-to-your-search-results-page-in-sharepoint-2013.aspx
    Best Regards,
    Eric
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • Dimension and Fact table have the same grain

    Hi All,
    How can we join a dimension and a fact table if they have the same grain ? In my case it is a contract number.
    Thanks

    Your Impression is right, In terms of Dimensional Modeling. You have to consider this when you are designing your warehouse tables.
    But now if you already have these tables in database, OBIEE does not care how many rows a table have, it just need to know what is fact and what is Dimension and it will generate sql queries based on join conditions.

  • Using multiple different IP's on the same computer

    I'm running 10.6, I figure you need to do something on the command line to do this...
    Let's say that I have 3 connections coming into my computer - a WIFI, an ethernet, and a dial-up, and each has a unique IP.
    How do I specify what application uses what IP? For example, let's say I want Safari to access the internet via the Airport IP, Firefox to access via the ethernet IP, and Opera to access via the dial-up IP.
    Thank you for your help.

    OK, so let me ask another question:
    Here is my printout from ifconfig -a:
    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    inet6 ::1 prefixlen 128
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
    inet 127.0.0.1 netmask 0xff000000
    gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    stf0: flags=0 mtu 1280
    en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
    inet6 fe80::21f:f3ff:fe4e:68f9%en0 prefixlen 64 scopeid 0x4
    inet 192.168.1.103 netmask 0xffffff00 broadcast 192.168.1.255
    ether 00:1f:f3:4e:68:f9
    media: autoselect (100baseTX <half-duplex>) status: active
    supported media: autoselect 10baseT/UTP <half-duplex> 10baseT/UTP <full-duplex> 10baseT/UTP <full-duplex,hw-loopback> 10baseT/UTP <full-duplex,flow-control> 100baseTX <half-duplex> 100baseTX <full-duplex> 100baseTX <full-duplex,hw-loopback> 100baseTX <full-duplex,flow-control> 1000baseT <full-duplex> 1000baseT <full-duplex,hw-loopback> 1000baseT <full-duplex,flow-control> none
    en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
    ether 00:1f:5b:ca:24:fc
    media: autoselect status: active
    supported media: autoselect
    fw0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 4078
    lladdr 00:1f:5b:ff:fe:12:40:48
    media: autoselect <full-duplex> status: inactive
    supported media: autoselect <full-duplex>
    en4: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    inet6 fe80::21c:42ff:fe00:8%en4 prefixlen 64 scopeid 0x7
    inet 10.211.55.2 netmask 0xffffff00 broadcast 10.211.55.255
    ether 00:1c:42:00:00:08
    media: autoselect status: active
    supported media: autoselect
    en5: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    inet6 fe80::21c:42ff:fe00:9%en5 prefixlen 64 scopeid 0x8
    inet 10.37.129.2 netmask 0xffffff00 broadcast 10.37.129.255
    ether 00:1c:42:00:00:09
    media: autoselect status: active
    supported media: autoselect
    en0 is ethernet and en1 is airport. So now, all my traffic will be going out through en0 because it's listed higher, correct? Now, if I go to my network control panel, go to set service order, and put airport (en1) higher than ethernet (en0) then all my traffic will go out through airport, correct? Now I did do that, and I typed ifconfig -a again, but the listing still showed the same, so do I need to restart to make the change effective or is there a command for the system to flush and change the order immediately?
    And how do I check for sure on which interface my outbound traffic is going through?

  • Plaf: Using multiple Look'n'Feels at the same time

    Hi
    in our application we use different color schemes. I know have a bug that forces me two provide two different UI implementations for the same class (JTextField). One UI in the normal context (grey) and one in a special edit context (kinda yellow).
    Id like to know what is the best practice to solve this issue? I would prefer not to write a special constructor which contains the desired UI-Name but rather as such that the parent Panel knows "i am yellow, so my kids need to be yellow too"...
    What is the best way to accomplish this. Has anyone a "best pratice" idea or does swing support "conditional look and feels" ?
    Thanks in advance!
    Matthias

    This is very strange, difficult to guess the cause... never had such an issue. Normally when the object to which the audio is attached disappears the audio stops. So in your case going to a next slide should stop the audio of the previous slide. Same with object audio.
    Do you have the different audio clips (one per slide) in the Library? Could you try to delete the audio on the slide and drag it again from the Library to see if you have the same result? And what happens when you attach the audio clip to an object on the slide (you can create a totally transparent rectangle with no stroke that will not be visible to attach the audio).
    Lilybiri

  • Export multiple schemas and tables in the same time

    Please help with this
    If I need to export 3 schemas SCH1, SCH2 and SCH3, also table tab1 and tab2 in schema SCH4, can anyone write only one parfile to export them in once.

    Are you going to use original exp/imp or data pump?
    It's not easy to do this in one shot if it's even possible.

  • Using multiple but different keyboards on the same machine

    I have a MBP with a default English keyboard layout. I plan to buy a wired Apple keyboard with numeric keypad with a Japanese layout. I will definitely go back and forth between the two keyboards.
    I am wondering if there are other people out there using two different keyboard types or who know about Japanese keyboard layouts on the Macs. Are there problems that occur typing or changing input sources using different keyboard types interchangably.
    I have several input sources: U.S. Extended, Kotoeri(Hiragana[kana], Katakana[kana], Romaji, full-width Romaji, half-width Katakana), Handwriten Chinese with trackpad, Traditional Chinese with Pinyin input.

    I don't have experience with the setup you are proposing, but I think the problem may be that the Mac can only recognize one keyboard type at a time, and JIS is quite different than ISO or ANSI.  So if it works right with your JIS keyboard, the layout on the internal one may not be totally correct, and vice versa if it works right with your internal one.  How much of a problem this would be depends on your own usage patterns.  Changing the keyboard type is sometimes not very easy.
    But you really should hear from someone who has done this.

  • Can source and target tables be the same

    Hi there,
    I need to restate profit center column in the delivery fact table. Historical Profit Centers need to be populated since today is the first time we brought in Profit Center field from LIPS table. The source for the delivery fact table is SAP LIPS table. so what I did is:
    joined the LIPS and delivery fact table on (LIPS.delivery number = deliveryfacttable.delivery number & LIPS.delivery line item number = deliveryfacttable.delivery line item number) to get the profit center.
    So the source and the target delivery fact table are the same. Is this a good practice becuase Data services warns me that the source and target tables are the same.
    Please let me know a better alternative approach to this OR a better approach to restate fields for historical data. Thanks in advance.
    Regards,
    samqiue

    Arun,
    actually the LIPS resides on another server and in order to fetch data I have to write an R3 ABAP data flow, so I cant use it directly in a lookup.
    Except what Im thinking based on your reply to use a lookup table is: that I will extract 3 colums (delivery number, delivery line item number and profit center) to a table and then use the lookup.
    Thanks.
    Regards,
    samique

  • Reg: Using Multiple fact tables in the RPD!

    Hello everyone,
    Can I get some help with the following scenario?
    We use OBIEE 11g.
    We have a report that uses only 1 fact table to retrieve the data and it takes hell lot of time to bring up the data in the report.
    My question here is is there a way to bring up the performance of the report if we split the data in 1 fact table to 2 fact tables and make the report use the 2 fact tables.
    Are there any other ways of tuning the report for better performance.
    Thanks for the help in advance!
    Ajay.

    Hi Ajay,
    Follow the following steps for the tuning;
    1. Try to tune the SQL query first generated by the report, and make necessary changes. (Put indexes on required column so that your query is scanning the index instead of entire table)
    2. You can try to create agg fact table and use the agg navigation for improving the performance. (Idea is to reduce the data set on which sql is fired)
    3. You can try to create partitions on the FACT table in the DB and so that required partitions are queried as per filters.
    4. In the Last if all the above doesn't tune your query you can try splitting the FACT table in to TWO or More as per your decision and then use fragmentation content in the BMM layer of the RPD so it will hit appropriate tables as per you report.
    Mark Correct/Helpful if it helps.
    Best of Luck,
    Kashi

  • No fact table at the requested level error.

    I have one dimension
    Account
    Two fact tables
    Threshold and Transaction
    These tables are joined to the Account Dim using Account Number.
    Now when I create an analysis using Account Numbers from all three tables, it says no fact table at the requested level. If I include any other fact from both the fact tables, it populates null. It works right when I create an analysis from one dimension and either of the fact tables.
    Why do we get this error and how else should it be modeled.
    Edited by: 979130 on Dec 29, 2012 12:52 AM

    I'm not sure about your data.. I give couple of options try them out any of one should work.
    Assuming both facts are at same granular: You need to create Logical Fact table in BMM add first fact as source then, open properties wizard and add other fact table.
    Assuming both facts are at Different or Same granular: You need to create Logical Fact table in BMM add first fact and then add 2nd fact as 2nd logical table source and set the content tab for both facts
    Using any of the option you'll be going for metrics and use them in report.
    In general: You need to let BI server let know how data is spread across tables so that BI Server can respond as you expected.
    Hope this helps, Appreciate if you mark as correct/helpful
    Edited by: Srini VEERAVALLI on Dec 29, 2012 12:58 PM

  • Find list of FACT tables in the cubes

    Hi experts,
      Pls help me to find list of FACT tables in the cube and Dimension table associated with the Fact table. your answer will be very helpful for me.
    Thanks

    hi,
    Go to Analysis Server (SSMS)-> use
    --All Measures
    SELECT [CATALOG_NAME] as [DATABASE],
    CUBE_NAME AS [CUBE],[MEASUREGROUP_NAME] AS [FOLDER],[MEASURE_CAPTION] AS [MEASURE],
    [MEASURE_IS_VISIBLE]
    FROM $SYSTEM.MDSCHEMA_MEASURES
    WHERE CUBE_NAME ='Adventure Works DW2012'
    ORDER BY [MEASUREGROUP_NAME]
    You can use below link ;
    http://bennyaustin.wordpress.com/2011/03/01/ssas-dmv-queries-cube-metadata/
    Thanks

  • Why is the FactAdditionalInternationalProductDescription a fact table in the AdventureworksDW2008R2 database?

    Was wondering why this table is a fact table in the AdventureworksDW2008r2 database?  It has no measures that I can tell. 
    Here is the schema for the table....
    [ProductKey] [int] NOT NULL,
    [CultureName] [nvarchar](50) NOT NULL,
    [ProductDescription] [nvarchar](max) NOT NULL

    Yes, I think it should be a dimension also.
    The dimDate table has translation for month, dyas, etc in other languages.  They don't put those translations in a fact table.  Also, fact tables have measures, you can not perform math on those columns except maybe count...
    The only thing I could think of is maybe it is some sort of intermidiate table... like if you have a many to many and need a one to many for SSAS, but still trying to wrap my head around some of these concepts.
    I have just been studying this stuff for about a year or so, so wasn't sure.  Studying for 70-463 hope to get MCSE someday too.
    Mike

Maybe you are looking for

  • Creative Audigy 2 NX Bit Depth / Sample Rate Prob

    This is my first post to this form Down to business: I recently purchased a Creative Audigy 2 NX sound card. I am using it on my laptop (an HP Pavilion zd 7000, which has plenty of power to support the card.) I installed it according to the instructi

  • Scanner no longer recognized

    Elements 10 Organizer no longer recognizes HP Photosmart Plus scanner  after attempt to install Inspiration upgrade.  Inspiration would not recognize it, so I removed it and returned to PSE 10.  What can I do?  

  • Sap Faq's  in Recruitng Interview

    Hi Guys, In one of my interviews i have faced these type of questions.So can some one Pls. give me  idea on this? 1)Describe a situation where there was a conflict with the client over an issue and how did you handle it. 2) Give an example of a situa

  • Special Ledger - Plan version 0

    Hi all! I have setup Special Ledger with plan version 0 active.  If I manually create planning on plan  version 0 on projects or cost centers, the plan $ are replicated in SPL as whished.  But If I plan hours in a network activity, the plan values ar

  • Jdeveloper 11g Tech Preview 2 can't see my stored java

    Environment win 2000 hitting oracle 9.2.0.6. Trying this tool to see if it will allow me to trace some poorly documented java which generates convoluted sql.