Release 15th February 2025
Change Control note --version 2.1.1 (Hilang --version 2.1.6)
Overview
This release is primarily concerned with updates to match changes to .NET 9.0 with the release of Visual Studio 17.13 and related libaries. It also includes an Update to Hiperspace.Rocks to reflect similar changes to RocksDB.
The implementation of OLAP cube support has also been changed to simplify its use for client applications and allow Fact tables to be used with BI tools that cannot use the binary CubeKey, OLAP Cube Facts now include references to the dimensions. This allows the removal of BKey (Key represented as an array of bytes) that us unhelpful for Hiperspace.SQL and JSON serialization.
Fact tables
Fact tables store calculated summaries of the underlying data, but aggregated for real-time access without the need to reevaluate calculations. Hiperspace Fact tables also support to store of Hierarchy of values - in this example the sum
of transaction values are stored in the slice "20" for CustomerAccount (sum of all Transactions for an Account) and slice "3" for Customer (sum of all Transactions for a Customer). Both Customer and CustomerAccount elements have navigation reference to CustomerAccount_Fact to retrieve summaries directly.
Hiperspace OLAP doesn't just store the sum of transactions for fast read, but allows deltas to be added without the need for rerun a complete aggregation. The @deltaindex
on Transaction allows only the changes within an epoch (transactions between the last aggregation and last update) to be selected, and deltasum
calculates only the difference since the last time the cube was calculated - this enables real-time aggregation to be performed.
As the CustomerAccount_Fact
table is versioned, it is possible to view the history of a cube-slice (in a graph) and calculate regression analysis without the need to drill-down to detail rows.