Designing and implementing a web-based data warehouse solution for cost analysis

University essay from Chalmers tekniska högskola/Institutionen för data- och informationsteknik

Abstract: Data warehousing is a term for the theory and techniques used for extracting, transforming and loading data from multiple sources and providing advanced analysis on the resulting information. A common representation of the data within the data warehouse is the multidimensionalapproach using facts and dimensions which can be designedand implemented by an OLAP solution. The facts correspond to the measurable numerical values of interest in the analysis while the dimensionsare used for giving a context to the facts and built up bymultiple levels within hierarchies.During this master thesis a web application has been developed offering business intelligence analysis for telecom related invoice data.The development has been conducted within the agile Scrum methodology with two week iterations. The invoice source data has been extracted from an external system and then transformed into a more structural form which has been loaded into an OLAP cube running Microsoft SQL Server Analysis Services. Because the analyzed data is read-only within the cube techniques for pre-calculation of resultsacross hierarchical levels of granularity are made possible which has been shown to be very effective performance wise.This report describes different techniques and components used when designing and building the data warehouse as well as the graphical user interface developed resulting in the final business intelligence application. Different techniques for optimizing the performance are mentioned as well as main differences and comparisons with a normal relational database design. The resulting application supports decision makers at potential customers with interesting analysis possibilities as well as providing fast responses to user requests. A comparison between the implemented multidimensional OLAP solution versus a corresponding relational database shows the response time in this case is highly significantlyreduced and in this case with a factor greater than ten to one.

Sammanfattning

Data warehousing är ett samlingsnanm för den teori och de tekniker som används för att samla data från olika källor och utföra avancerad analys på denna data. En vanlig representation av datan i ett data warehouse är att dela upp den i fakta och dimensioner — även kallat flerdimensionell lagring — vilket kan realiseras m.h.a. en OLAP-kub.Faktadatan utgörs då av de mätvärden som analysen avser medans dimensionerna används för att gruppera och aggregera dessa mätvärdenpå olika nivåer.Under examensarbetet har ett webbaserat system tagits fram som syftar till att erbjuda analysmöjligheter för telecom-relaterad faktureringdata.Arbetetet utfördes med den agila Scrum metodiken med tvåveckors iterationer. Faktureringsdatan hämtas från ett externt system och läses sedan in i en OLAP-kub som kör ovanpå Microsoft SQL Server Analysis Services. Genom att den analyserade datan endast skrivs till systemet periodvis så har tekniker för att i förväg kalkylera aggregererade mätvärden kunnat användas med framgång, vilket har visat sig vara mycket effektivt ur en prestandasynpunkt.Rapporten beskriver de tekniker och metoder som har använts för att utvinna, omvandla samt modellera datan som lagras i OLAP-kuben samt utveckligen av det gränssnitt som används för analysen. Utläsningen av datan från OLAP-kuben jämförs även med motsvarande utläsning via en relationsdatabas. Resultaten visar på kraftigt förbättrad svarstid för analyser som körs mot den multidimensionella databasenjämförelsevis med relationsdatabasen.

  CLICK HERE TO DOWNLOAD THE WHOLE ESSAY. (in PDF format)