Google Track

Monday, March 12, 2012

Another approach to Time Intelligence


Best Parctices for Time Scale solution
This is an original method that I use when I build SSAS Cubes and it is time to share it with you

Time Intelligence is a common issue for every OLAP structure because Time as dimension apperars in every OLAP project, in every Cube you build, despite business model or type. To handle Time Intelligence good in calculations, aggregations and optimization, you need to use Timescale as well. With Timescale I mean: MonthToDate (MTD), YearToDate (YTD), LastYear(LY) etc..., all these very important to everyday use of Business Intelligence solutions.

Now I will take to technical steps to implement this genius way of handling with Timescale and Time calculations.
First you create a Table for Timescale in the source (in you DB, DWH or Data Mart), with 3-4 columns and 3-4 records for example. Here is a sample for that:


Based on this table you create a Dimension Timescale where Columns are Attributes and Records are Members of that Dimension.
After that, I go to DSV of our Cube, on every Fact Table that needs Timescale (usually all need Timescale) I add Named Calculation FK_Timescale with value 'PE', as in the image above:





















I create a relationship FK_Timescale of the Fact Table to Timescale table in Data Source View (DSV) and after I build the Cube I do the same in Dimension Usage, where I create Regular relation between Fact Table and Timescale Dimension as shown above:




















I create 2 name sets for MTD and YTD right after Calculate; and the MDX for that is shown above :

CALCULATE;
-- Period to date
-- Month to Date
[Timescale].[Timescale].[MTD] = Sum(MTD([Time Dim].[Hierarchy].CurrentMember),[Timescale].[Timescale].[PE]);
-- Year to Date
[Timescale].[Timescale].[YTD] = Sum(YTD([Time Dim].[Hierarchy].CurrentMember),[Timescale].[Timescale].[PE]);

Now, you have ready implemmented Timescale in the Cube for all your Measures, so you do not need to calculate Timescales for each Measure. Instead of having MTD(YTD) Revenue, you just use Revenue measure and change Timescale from PE to MTD(YTD). Test this with Excel, through Data Connection to OLAP Cube and enjoy possibilities. This way is proven more dynamic, flexible and optimized for query performance.

I would be very pleased and that will help me keeping posting good things about BI, if you find time from your busy schedule to suggest, critic or to share with love this blog or this particular content.

Regards,
Besim

Friday, March 9, 2012

TS: Microsoft SQL Server 2008, Business Intelligence Development and Maintenance


TS: Microsoft SQL Server 2008, Business Intelligence Development and Maintenance

Skills Being Measured

This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam.The higher the percentage, the more questions you are likely to see on that content area on the exam. The information after “This objective may include but is not limited to” is intended to further define or scope the objective by describing the types of skills and topics that may be tested for the objective. However, it is not an exhaustive list of skills and topics that could be included on the exam for a given skill area. You may be tested on other skills and topics related to the objective that are not explicitly listed here.

Implementing an SSIS Solution (17%)
•Implement control flow. This objective may include but is not limited to: checkpoints; debug control flow; transactions; implement the appropriate control flow task to solve a problem; data profiling and quality
•Implement data flow. This objective may include but is not limited to: debug data flow; implement the appropriate data flow components
•Implement dynamic package behavior by using property expressions. •Implement package logic by using variables. This objective may include but is not limited to: system variables; user variables; variable scope
•Implement package configurations.
•Implement auditing, logging, and event handling. This objective may include but is not limited to: use system variables for auditing; use event handlers; propagate events; use log providers; data profiling
•Extend SSIS packages by using .NET code.

This objective may include but is not limited to: use the script task; use the script component; use custom assemblies Configuring, Deploying, and Maintaining SSIS (15%)
•Install and maintain SSIS components. This objective may include but is not limited to: implement disaster recovery for SSIS
•Deploy an SSIS solution. This objective may include but is not limited to: deploy SSIS packages by using DTUTIL; deploy SSIS packages by using the deployment utility; deploy SSIS packages to SQL or file system locations
•Manage SSIS package execution. This objective may include but is not limited to: schedule package execution by using SQL Server Agent; execute packages by using DTEXEC; execute packages by using SQL Server Management Studio; execute packages by using the SSIS .NET API
•Configure SSIS security settings. This objective may include but is not limited to: MSDB database roles; package protection levels
•Identify and resolve issues related to SSIS solution deployment.

This objective may include but is not limited to: validate deployed packages; deploy packages and dependencies between servers Implementing an SSAS Solution (21%)
•Implement dimensions in a cube. This objective may include but is not limited to: translations; attribute relations; hierarchies
•Implement measures in a cube. This objective may include but is not limited to: measure groups •Implement a data source view. This objective may include but is not limited to: named calculations; named queries
•Configure dimension usage in a cube. This objective may include but is not limited to: implement reference dimensions; implement many to many relationships; implement fact relationships; implement role-playing relationships; define granularity
•Implement custom logic in a cube by using MDX. This objective may include but is not limited to: actions; key performance indicators (KPI); calculated members; calculations
•Implement data mining.

This objective may include but is not limited to: implement data mining structures and models; query data mining structures by using DMX; data mining views
•Implement storage design in a cube. This objective may include but is not limited to: aggregations; partitions; storage modes; proactive caching Configuring, Deploying, and Maintaining SSAS (17%)
•Configure permissions and roles in SSAS. This objective may include but is not limited to: server roles; SSAS database roles; cube roles; enable client application access; implement custom access to data
•Deploy SSAS databases and objects. This objective may include but is not limited to: Deployment Wizard; BIDS; SSMS; SSIS Analysis Services Execute DDL task
•Install and maintain an SSAS instance. This objective may include but is not limited to: disaster recovery
•Diagnose and resolve performance issues. This objective may include but is not limited to: use SQL Profiler; performance monitor counters; DMVs; Usage Based Optimization Wizard
•Implement processing options. Implementing an SSRS Solution (17%)
•Implement report data sources and datasets. This objective may include but is not limited to: query types; dynamic data sources; filter location (dataset vs. query)
•Implement a report layout.

This objective may include but is not limited to: apply conditional formatting; page configuration; headers and footers
•Extend an SSRS solution by using code. This objective may include but is not limited to: custom .NET assembly; private code
•Create an SSRS report by using an SSAS data source. This objective may include but is not limited to: MDX in an SSRS report; DMX in an SSRS report
•Implement report parameters. This objective may include but is not limited to: databound parameters; multi-value parameters
•Implement interactivity in a report. This objective may include but is not limited to: drilldown; drillthrough; interactive sorting
•Implement report items.

This objective may include but is not limited to: matrix; table; chart; image; list; grouping
•Embed SSRS reports in custom applications. This objective may include but is not limited to: use the Windows Forms Report Viewer; use the Web Forms Report Viewer; use the SSRS Web service Configuring, Deploying, and Maintaining SSRS (13%)
•Configure report execution and delivery. This objective may include but is not limited to: subscriptions; report caching; schedules; snapshot history
•Install and configure SSRS instances. This objective may include but is not limited to: deploy an SSRS Web farm
•Configure authentication and authorization for a reporting solution. This objective may include but is not limited to: configure server-level and item-level role-based security; configure Windows authentication and custom authentication
•Deploy an SSRS solution. This objective may include but is not limited to: RS.exe scripts; Report Builder; BIDS
•Configure SSRS availability. This objective may include but is not limited to: key management; migrate SSRS databases

BIandIT.com, a website that is going to have all important things in BI

My web site is Under Construction and is going to have the hotest topics and trends in Business Intelligence. You can find elegant solutions in Business Intelligence, special calculated members, Time Intelligence, Customer Intelligence, Competition Intelligence, Market Intelligence, Spatial Intelligence and Predictive Analytics. The site will have also Office Templates for Business Start-ups, for Market Analysis, ROI, First Year Costs etc... www.biandit.com is comming SOON :)

How I do Predictive Analytics without Data Mining?

This hot topic is comming soon. I will just describe a bit what will this topic will include. This topic is going to show how to do Predictive Analytics on your data without using Data Mining or DMX and just using MDX. How can Data Mining prediction Algorithms be "translated" from DMX to MDX. How accurate are they and what is the benefit of using MDX?

Wednesday, March 7, 2012

MDX Studion Online

Mosha Pasumansky, father of OLAP and MDX

Mosha Pasumansky is one of the inventors of the MultiDimensional eXpressions (MDX) language, a query language for online analytical processing (OLAP) databases. Pasumansky is also one of the architects of the Microsoft Analysis Services, and an OLAP expert. Mosha Pasumansky is well known in the OLAP community for his Microsoft OLAP information website which contains a collection of technical articles and other resources related to Microsoft OLAP and Analysis Services. He also has a blog dedicated to MDX and Analysis Services. He spoke at Microsoft conferences such as TechEd and PASS, and he published the book Fast Track to MDX. As of 29 December 2009, Mr. Pasumansky had shifted his focus[1] to Bing, the Microsoft Search Engine, and is no longer maintaining his active stewardship of the BI Community. We are going to miss him and his articles regarding OLAP, MDX and Business Intelligence in general.

Source Wikipedia

This is an online version of the MDX Studio product build by Mosha. The full version can be downloaded from http://www.mosha.com/msolap/mdxstudio.htm For discussion, bug reports, feature suggestions etc - please visit our blogg here. Here is the link to MDX Studio Online: http://mdx.mosha.com/default.aspx

Wednesday, June 22, 2011

Predictive Analytics vs Data Mining

Technology Cycle:
Data warehousing is a mature technology, with approximately 70 percent of Forrester Research survey respondents indicating they have one in production. Data mining has endured significant consolidation of products since 2000, in spite of initial high-profile success stories, and has sought shelter in encapsulating its algorithms in the recommendation engines of marketing and campaign management software. Statistical inference has been transformed into predictive modelling. As we shall see, the emerging trend in predictive analytics has been enabled by the convergence of a variety of factors.

Technology Hierarchy:
In the technology hierarchy, data warehousing is generally considered an architecture for data management. Of course, when implemented, a data warehouse is a database providing information about (among many other things) what customers are buying or using which products or services and when and where are they doing so. Data mining is a process for knowledge discovery, primarily relying on generalizations of the "law of large numbers" and the principles of statistics applied to them. Predictive analytics emerges as an application that both builds on and delimits these two predecessor technologies, exploiting large volumes of data and forward-looking inference engines, by definition, providing predictions about diverse domains.

Methods:
The method of data warehousing is structured query language (SQL) and its various extensions. Data mining employs the "law of large numbers" and the principles of statistics and probability that address the issues around decision making in uncertainty. Predictive analytics carries forward the work of the two predecessor domains. Though not a silver bullet, better algorithms in operations research, risk minimization and parallel processing, when combined with hardware improvements and the lessons of usability testing, have resulted in successful new predictive applications emerging in the market. (Again, see Figure 1 on predictive analytics enabling technologies.) Widely diverging domains such as the behaviour of consumers, stocks and bonds, and fraud detection have been attacked with significant success by predictive analytics on a progressively incremental scale and scope. The work of the past decade in building the data warehouse and especially of its closely related techniques, particularly parallel processing, are key enabling factors. Statistical processing has been useful in data preparation, model construction and model validation. However, it is only with predictive analytics that the inference and knowledge are actually encoded into the model that, in turn, is encapsulated in a business application.

Definition
This results in the following definition of predictive analytics: Methods of directed and undirected knowledge discovery, relying on statistical algorithms, neural networks and optimization research to prescribe (recommend) and predict (future) actions based on discovering, verifying and applying patterns in data to predict the behavior of customers, products, services, market dynamics and other critical business transactions. In general, tools in predictive analytics employ methods to identify and relate independent and dependent variables - the independent variable being "responsible for" the dependent one and the way in which the variables "relate," providing a pattern and a model for the behavior of the downstream variables.

In data warehousing, the analyst asks a question of the data set with a predefined set of conditions and qualifications, and a known output structure. The traditional data cube addresses: What customers are buying or using which product or service and when and where are they doing so? Typically, the question is represented in a piece of SQL against a relational database. The business insight needed to craft the question to be answered by the data warehouse remains hidden in a black box - the analyst's head. Data mining gives us tools with which to engage in question formulation based primarily on the "law of large numbers" of classic statistics. Predictive analytics have introduced decision trees, neural networks and other pattern-matching algorithms constrained by data percolation. It is true that in doing so, technologies such as neural networks have themselves become a black box. However, neural networks and related technologies have enabled significant progress in automating, formulating and answering questions not previously envisioned. In science, such a practice is called "hypothesis formation," where the hypothesis is treated as a question to be defined, validated and refuted or confirmed by the data.

Friday, June 17, 2011

PowerPivot in Excel 2010

PowerPivot gives users the power to create compelling self-service BI solutions, facilitates sharing and collaboration on user-generated BI solutions in a Microsoft SharePoint Server 2010 environment, and enables IT organizations to increase operational efficiencies through Microsoft SQL Server 2008 R2-based management tools.