Introducing sparse structures

An InfoCube can store a value for any combination of its dimension’s members– for example a three dimensional InfoCube has a cell for any (month, product, customer) triplet. The virtual size of an InfoCube is the maximum number of cells it has. For example considering 24 months, 500 products and 1000 customers, the virtual size of a month-product-customer InfoCube is of 24x500x1000=12,000,000 cells. After loading data into the InfoCube, generally only a small fraction of the total InfoCube cells really contain data. The ratio between the actual number of cells containing data and the total number of cells of the InfoCube (obtained multiplying the number of members of each dimension) is the InfoCube density.

Board does not create a cell for any possible value of an InfoCube’s dimensions. Different compression methods exist. The most significant method is the sparse management.

Let’s consider a company which has a large number of both products and customers, a food and beverages company for example, selling to small retail shops, restaurants, hotels, catering companies, hospitals, schools etc. If you consider an average customer, you will find that he is only buying a small basket of products out of the entire products list. A hospital will probably buy a different set of products to a hotel or a school. A customer does not buy all possible products and vice-versa. When this is true then we say that Customer and Product are sparse. If customer C1 buys product P1 then (C1-P1) is called a sparse combination.

A sparse structure is a combination of two or more entities (not hierarchically related) for which the number of distinct combination of values is small compared to the total number of potential combinations. Sparse combinations are created when data is loaded into InfoCubes. When a sparse structure is defined, disk space is allocated only for the sparse combinations created while loading, therefore disk space overhead is minimal.

Sparse structures are defined when creating InfoCube versions.

Time entities cannot be included in a sparse structure. Note that some degree of disk space compression also occurs on dimensions that are not part of a sparse structure.


When you create an InfoCube version with two or more dimensions, use the following guidelines to define a sparse structure: