Happy New Year! Here are my goals:
2. Avoid Snowflakes!
3. Learn more data mining and the DMX query language (and blog about it.)
4. Learn more about Master Data Services (and blog about it.)
5. Become a master at MDX
6. Architect an enterprise solution in which Contoso buys AdventureWorks and Northwind (and blog about it.)
7. One presentation per quarter and at least one really good blog entry per month
8. Mentor someone outside of the company I work
9. Keep a personal log in which I will plan each day and reflect on the previous day every morning.
10. Publish Segment Analyzer on Codeplex (and blog about it.)
Segment Analyzer is an idea I have to help analyze various customizable groups of customers, products, or any type of dimension in an analysis services cube. The main force behind the solution is a .Net application that can run against any data warehouse that uses a standard table and column naming scheme. It won’t matter what the naming scheme is as long as it is consistent, that criteria would be configurable.
An analyst uses a GUI interface to create criteria for segments to be analyzed. The criteria is based on dimensional attributes, and aggregated and non-aggregated facts and supports complex parenthetical and/or logic at many levels. Drop downs are populated based on the distinct values in the dimensional attributes and mathematical operations for the numeric information. Which attributes and which metrics are featured in the interface is handled through a one-time configuration process. Segments can have parent segments in which the criteria of the parent is inherited to infinite levels of children. This will be accomplished by parsing the segment criteria into dynamic SQL that populates bridge tables to support many to many dimensions in Analysis Services. The segment dimension itself uses the parent child hierarchy feature in SSAS. Two known query performance killers, I know; but, the features would only be used on specialized cubes or databases just for this purpose.
Examples of segments of customers from adventure works:
Customers that visited the store within the last six months who are female, are between 16 and 24 years old, live within 25 miles of the store and have spent at least $100 in the past six months and redeemed two promotional coupons.
Customers that visited the store within the last year, are male, live in the 12345 zip code, own one car, spent at least $200 in the past year, and redeemed 0 promotions.