Archive

Archive for the ‘Notes From an Install’ Category

Ah, The Frustration

February 2nd, 2010 No comments

I remember it well. Long night spent trying to figure out how best to line metrics up next to each other. Hours spend trying to figure out if it’s more work just creating you’re own logical table to solve that stupid cross join problem that won’t go away. I’m reticent to consult the MicroStrategy web site because it really does just feel like I’m copping out…

If you have a static warehouse that the designers are committed to, what else is your option?

Late night..

Addendum: You know sometimes I forget that SQL optimization is just that…optimization. I can some time putting together a quality query that’s going to return data on a specific products ships and returns. Let’s assume that each of these products have a distinct way of being tracked. I might throw together a hand done query that populates the list of these specific reference numbers from the ship table so that I can do a left join against the shipping data so I can see specific returns against the specific ships, and then aggregate those solutions, but did you see what I just did? I went through the trouble of matching thousands of records against each other…and for what? So that I can later aggregate the data with some sort of group by.

Enter SQL optimization. Solves the problem in a quicker way that I probably wouldn’t have crossed my mind since it works in a linear fashion.

  1. Get ships.
  2. Get returns.
  3. Left join ships to returns based on unique ID.
  4. Count records in relevant columns.
  5. Group by necessary items.

But…why is the detail necessary?

MicroStrategy fixes.

(
select a12.date,
count(a11.sales_number) SALES_COUNT
from sales a11
where (a11.item_desc = ‘widget’)
group by
a11.date
) pa11

full outer join

(
select a11.date,
count(a11.rma_number) RMA_COUNT
from rma a11)
where (a11.item_desc = ‘widget’)
group by
a11.date
) pa12

on
(pa11.date = pa12.date)

Makes much more sense. Why join early when all you care about is the aggregate…join on the aggregate!

Duh.

Categories: Notes From an Install Tags:

Starting Over – Notes From an Install

January 28th, 2010 No comments

Starting Fresh.

I’m creating a Demo MicroStrategy Development install for the new place. The ultimate goal, I think is to get away from the in house development, which can be tedious, and move towards the fully SOA solution.

The Beginning

I already have SQL Development Server on my laptop, so I’m going to be using that as the Metadata/Statistics/History Database. I have to fun of bridging to a Teradata Database for the actual project…which is going to be interesting, considering I’ve always used SQL normalized data warehouses, so this will be a welcome change.

I’m using Windows 7 on a Dell Latitude E4300 Laptop, P9600 @ 2.53 gHz and 4 gigs of RAM. So, it should be fine for Demo Purposes.

First off, I forgot how quick the install process is (all things considered), as well as how simple the interface is for defining your various data sources. Make sure also to install the Tutorial if you’re new to the process. You can learn more from the Tutorial and Analytics projects than any manual that MicroStrategy provides, at least for me. Based on my new job functions, I’m becoming increasingly interested in the statistical modeling capabilities of MicroStrategy.

As a side note: if you want to waste some time, and you have an error on your Intelligence Server when you try to start it that states:

“Failed to start service Error Code: -1 Error Message: StartUpManager::StartUpManager():LoadServerDef failed. Return Code: 0×80041404′”

Here’s a hint for you…maybe you’re like me, and you gave the ODBC access to your MetaData read only…which is stupid. I admit it.

On with the development!! I’ll post as I see fit.

Categories: Notes From an Install Tags: