We have already had a problem where data is missing from Analytics, and I've heard from at least one other organization that has had a related problem. I also understand that during customization, since the cube is all inner joins, it's easy to accidentally suppress a lot of data by joining to a table that doesn't match up correctly. So I've started putting together a dashboard that will let me see at a glance whether all of the data is sill available. Has anybody else done this? Here's what I have so far:
In Analytics, I have a dashboard with the following widgets. All are "Indicator" style. Each of them should tie back to the BI views in Impresario, but I only have some of that working.
Most of the ones where I'm not sure how to generate the values are cases where the data dictionary says that the Tessitura view is "ETL stored procedure: dbo.POST_TRANSACTION", which presumably means that it's assembled by that procedure and so the view in Tessitura won't be useful. The exception is # of unique Order ID. The data dictionary seems to say that it comes from VT_DW_TICKET_HISTORY and VT_DW_ORDER_DETAIL. select count(distinct h.dw_order_no) from bi.VT_DW_TICKET_HISTORY (nolock) h returns the wrong value. select count(distinct o.order_no) from bi.VT_DW_ORDER_DETAIL (nolock) o ran for 4 minutes and generated a different wrong value.
I feel like I'm on the right track for Contributions, Memberships, and Plans, but I'm stuck on Ticketing and Finance. Any advice on those three would be much appreciated. Obviously, in a production environment, the live values would go out of sync with the Analytics values fairly quickly, but they would at least be close. I'm considering creating a procedure that takes a snapshot of these values when the load kicks off so that I can compare against that.
Any other thoughts on how to solve my problems and/or make this all work better would be much appreciated.
Thanks!
-Galen