A Temporal Multidimensional Model and OLAP Operators

A Temporal Multidimensional Model and OLAP Operators

Waqas Ahmed, Esteban Zimányi, Alejandro Ariel Vaisman, Robert Wrembel
Copyright: © 2020 |Pages: 32
DOI: 10.4018/IJDWM.2020100107
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Usually, data in data warehouses (DWs) are stored using the notion of the multidimensional (MD) model. Often, DWs change in content and structure due to several reasons, like, for instance, changes in a business scenario or technology. For accurate decision-making, a DW model must allow storing and analyzing time-varying data. This paper addresses the problem of keeping track of the history of the data in a DW. For this, first, a formalization of the traditional MD model is proposed and then extended as a generalized temporal MD model. The model comes equipped with a collection of typical online analytical processing (OLAP) operations with temporal semantics, which is formalized for the four classic operations, namely roll-up, dice, project, and drill-across. Finally, the mapping from the generalized temporal model into a relational schema is presented together with an implementation of the temporal OLAP operations in standard SQL.
Article Preview
Top

Introduction

Typically, the Business Intelligence (BI) process is supported by a centralized repository called a Data Warehouse (DW), which integrates data coming from different sources (Vaisman & Zimányi, 2014). A DW is typically represented using the multidimensional (MD) model, where data are represented as a collection of facts, measures, dimensions, levels, and hierarchies. These notions are informally introduced next in a streamlined fashion, through a running example which represents sales in a fictitious retail company. The DW schema is depicted in Figure 1, using the MultiDim (Vaisman & Zimányi, 2014) notation.

Multidimensional Data Model

In a DW, data are perceived in an n-dimensional space. In this space, a fact is a subject of interest, e.g., a business event. Each observation in a fact is called a fact member. A fact is quantified by one or more measures, which are typically numerical quantities. Dimensions provide context to facts. For instance, sales events can be perceived in a three-dimensional Sales fact, each one representing information about when and where a specific product was sold at a certain price. In this case, the Product, the Time of the sale, and the City where the product was sold represent the dimensions, and the Amount sold is a measure. Levels provide dimension values, which in turn are described by attributes. For example, a level Day provides all possible values for dimension Date. Instances of a level are called level members or members. A DW may contain multiple levels, and various facts may share these levels. A level is connected to a fact if it provides values for any dimension in that fact. Such a level determines the granularity of a dimension, which determines the level of detail at which measures are recorded. For example, in the fact Sales in Figure 1, values for the Date dimension come from level Day, meaning that the granularity of the dimension is at the Day level. A level may provide values for more than one dimension in a fact, and such dimensions are called role-playing dimensions.

The relationship between levels is called an aggregation relationship, which associates the members of a parent level and a child level, where the latter is the level defined at a finer granularity in the relationship. An aggregation relationship can be named. Further, the cardinality of a relationship between dimension levels indicates how level members relate to each other. Analogously, the cardinality of a relationship between a fact and a level indicates how fact members are associated with level members. As usual in conceptual modeling, cardinalities can be one-to-one (1-1), many-to-one (m-1), and many-to-many (m-m). Furthermore, the cardinality can be optional (denoted 0) for any of the two participating entities of a relationship, meaning that the participation of members of an entity is not mandatory in the relationship. For example, the cardinality between level Product and fact Sales is many-to-one, meaning that a sales transaction contains one product, and a product member may appear in multiple sales transactions. Note that aggregation relationships can be recursive, meaning that members of a level are the parent members of the same level. For example, the relationship Supervisor between members of level Employee is a recursive relationship, since both supervisors and their subordinates are members of level Employee.

A hierarchy is a collection of logically related aggregation relationships and allows aggregating measure values to a coarser level of detail from values at a finer level of detail. In a strict hierarchy, all aggregation relationships are many-to-one, whereas, in a non-strict hierarchy, at least one aggregation relationship has a many-to-many cardinality.

The notion of summarizability refers to the correctness of the aggregation of measure values from a lower level to a higher level of granularity. Ensuring summarizability is an essential condition of any MD model. Summarizability conditions where defined by (Lenz & Shoshani, 1997), which state that members in a dimension level L must define a partition of the members in the level immediately below L. It follows that non-strict hierarchies are non-summarizable since they contain many-to-many relationships.

Figure 1.

An example data warehouse to analyze the sales and inventory of a retail company

IJDWM.2020100107.f01

Complete Article List

Search this Journal:
Reset
Volume 20: 1 Issue (2024)
Volume 19: 6 Issues (2023)
Volume 18: 4 Issues (2022): 2 Released, 2 Forthcoming
Volume 17: 4 Issues (2021)
Volume 16: 4 Issues (2020)
Volume 15: 4 Issues (2019)
Volume 14: 4 Issues (2018)
Volume 13: 4 Issues (2017)
Volume 12: 4 Issues (2016)
Volume 11: 4 Issues (2015)
Volume 10: 4 Issues (2014)
Volume 9: 4 Issues (2013)
Volume 8: 4 Issues (2012)
Volume 7: 4 Issues (2011)
Volume 6: 4 Issues (2010)
Volume 5: 4 Issues (2009)
Volume 4: 4 Issues (2008)
Volume 3: 4 Issues (2007)
Volume 2: 4 Issues (2006)
Volume 1: 4 Issues (2005)
View Complete Journal Contents Listing