About Cubes
A Cube is the element of Board’s multidimensional Data model for storing and retrieving data using the multidimensional metaphor. A Cube is made of dimensions (usually Entities, but also entire Relationships), providing different perspectives on data: they determine the data granularity and the ability of the Cube to show, drill, slice and dice data. The intersection of the dimensions of a Cube is a cell: a cell is the smallest element within a Cube.
For example, a Sales Amount Cube which has the dimensions Month, Product, and Customer can be viewed based on any of its dimensions (axes), such as total sales by Product, total sales by Month, or by Customer, as well as based on any of the intersections of its dimensions, such as sales by Product in a given Month or for a given Customer.
When a dimension of a Cube is part of a Relationship, the Cube can be viewed at any aggregation level of said Relationship. You can easily build views for every possible intersection of two or more Entities that belong to different Relationship trees.
In our previous example, you can view total sales by:
- Quarter or Year, as they aggregations of the Month Entity
- City or by State, as they aggregations of the Customer Entity
- Product Group or Product Type, as they are aggregations of the Product Entity
To access the Cubes section of a Data model, access the designer space of the desired Data model and click on the Cubes tile.
In the Cubes page, you can see all existing Cubes in the Data model and their main information: the table is sortable and searchable using the interactive header fields. You can also show or hide columns to your liking, by clicking the Column chooser button in the upper right corner of the table.
You can perform different actions on one or more Cubes by selecting them and by clicking on the different buttons above the Cube list.
Click anywhere on the corresponding row to view the details of a Cube: a dedicated panel on the right-hand side of the page will appear, showing the complete information about the selected Cube.
The Cube section of each Data model in Board allows you to:
- Create, edit, delete, and clear Cubes
- Switch to User view mode. The User View mode shows all Cubes by Group and allows you to reorder Cubes in a Group or move them to other Groups by dragging and dropping them anywhere in the list. The order you configure reflects the order in which the end user will see the Entities in the Layout editor
- Edit the primary structure of Cubes
- Add, edit, and delete Cube versions
- Align versions of each Cube
- See where each Cube is used in Board (Data readers, Data flows, Screens, Procedures), which Entities are in the Cube primary structure, and which Sparsities are used by the Cube
Each time a Cube is created, Board creates a physical name for it. The physical name is then used to refer to the Cube across Board: reports, Procedures, Data readers, and other objects will all refer to a single Cube using its physical name. Consequently, changing the Cube name will not affect existing reports, Procedures, or other Data model objects in any way.
Cube data types
Board Cubes support numeric and alphanumeric data, stored in the following types of Cubes:
- Numeric Cubes, having the following data types:
- Single. Floating-point numeric type (4 Bytes). Each cell occupies 4 bytes. Numbers that need more than 4 bytes to be saved will be rounded. The value of a single cell must be between -3.4028235E+38 and +3.4028235E+38.
The rounding occurs only when writing data to a single cell of the Cube, so if your data source provides data in single precision or in an 8 character field, we recommend you use this data type. When used in Procedures and reports, single precision Cubes are aggregated using double precision variables therefore virtually no aggregation occurs.
This data type should be preferred for numeric Cubes because it offers a good trade-off between accuracy and space requirements.
- Double. Floating-point numeric type with double precision (8 Bytes). Each cell occupies 8 bytes. The value of a single cell must be between -1.79769313486232E+308 and +1.79769313486232E+308
- Integer. Integer numeric type. Each cell occupies 8 bytes. The value of a single cell must be between -9,223,372,036,854,775,808 and 9,223,372,036,854,775,807
- Currency. Fixed 5 decimal format with the same accuracy as the Double type. Each cell occupies 8 bytes.
- Single. Floating-point numeric type (4 Bytes). Each cell occupies 4 bytes. Numbers that need more than 4 bytes to be saved will be rounded. The value of a single cell must be between -3.4028235E+38 and +3.4028235E+38.
- Text Cubes, having the following data types:
- Text. Text Cubes can be used to store text information in unformatted text format. For example, a Cube with only the Customer Entity in its structure can be used to store customer addresses, or a Cube having the Product and Country Entities in its structure can be used to store product names, which may vary according to the language of the country. As another example, a Cube structured by the Profit & Loss and Month Entities can be used to store textual comments for each month's closure next to the profit and loss line.
The Text data type is dynamic and unlimited, although it is recommended to limit the text in a single cell to a reasonable size: one to a maximum of two thousand characters, in order to properly and fully display the text in a single cell of a Data view or in other Objects.
- Since they store text, Text Cubes do not support aggregation.
- Given the dynamic nature of text Cubes, if you use ASCII Data readers to populate one, we recommend you change the Data reader format from "fixed width" to "CSV". If you have a Procedure that extracts a text Cube to a file, we recommend you set the extracted file to "tab-delimited" in CSV format.
- When a text Cube is extracted, the carriage-return (new line) and tabulator characters are omitted, so any comments on multiple lines are converted to text on a single line. - RTF. RTF Cubes are a specific kind of BLOB Cubes that store text information in Rich Text Format (RTF) format, thus allowing the user to add a certain degree of formatting, including bolding, italicization, custom fonts, and custom colors. RTF documents can also contain images, such as .JPG and .PNG files, embedded within their text.
RTF Cubes can be used in conjunction with certain Board Screen Objects, such as the Dynawrite Object, to allow end users to edit their content in Play mode via data entry actions.
- Text. Text Cubes can be used to store text information in unformatted text format. For example, a Cube with only the Customer Entity in its structure can be used to store customer addresses, or a Cube having the Product and Country Entities in its structure can be used to store product names, which may vary according to the language of the country. As another example, a Cube structured by the Profit & Loss and Month Entities can be used to store textual comments for each month's closure next to the profit and loss line.
- Date Cubes. Date type Cubes can be used for service level analysis. Board supports calculation between dates: the difference between two date Cubes returns the number of days between two dates. Adding an integer (a production lead time, for example) to a date (an order date for example) returns the delivery date.
It is not possible to aggregate date Cubes, however if you create an aggregated view on a date Cube using the Data view Object, the highest and lowest dates are returned. For example, suppose we have a date Cube called DueDate structured by an entity named Project and another entity called Department, the latter being parent of Project.
A report on DueDate by Department returns the smallest and highest dates found for projects related to the department.A date is physically stored in numerical format (an integer value where 1 represents 01/01/1900). When viewed by a user, the date is displayed in short date format following the user's operating system regional settings.
- BLOB Cubes. BLOB Cubes are Cubes that can store files in their cells. A BLOB Cube can hold a collection of MS-Word or Excel documents, image files, PDF documents or other types of files.
BLOB Cubes can be used to handle a set of documents - such as commentaries, images or other types of attachments - in a multidimensional manner. For example, in a Financial Planning application you can use a BLOB Cube to allow users to attach a lengthy commentary or an Excel worksheet to a particular account (e.g. Revenues) for a particular month (e.g. February).
Board BLOB Cubes support the following data types:
The content of a BLOB Cube can be displayed in a Data view, in its cells or in a tooltip using the Tooltip-by option.
Once loaded through a Data reader or via data entry, the embedded files are compressed and encrypted into the BLOB Cube, so they can only be accessed from the Capsule environment. Just like other Cubes, BLOB Cubes are subject to the database security settings, so you can configure user rights in order to assign read-write privileges to some users or read-only to others.- Picture. Board supports .jpg, .jpeg, .png, .gif, and .bmp file types
- Microsoft Excel. Board supports only Microsoft Excel Workbooks created with Excel 2007 and newer (files with the .xlsx extension)
- Microsoft Word. Board supports only Word documents created with Word 2007 and newer (files with the .docx extension)
- Microsoft Power Point. Board supports only Power Point presentations created with Power Point 2007 and newer (files with the .pptx extension)
- Custom. This data type can be used to have a BLOB Cube store files with a custom extension other than those supported natively