![]() |
VOOZH | about |
dotnet add package Hiperspace --version 2.5.52
NuGet\Install-Package Hiperspace -Version 2.5.52
<PackageReference Include="Hiperspace" Version="2.5.52" />
<PackageVersion Include="Hiperspace" Version="2.5.52" />Directory.Packages.props
<PackageReference Include="Hiperspace" />Project file
paket add Hiperspace --version 2.5.52
#r "nuget: Hiperspace, 2.5.52"
#:package Hiperspace@2.5.52
#addin nuget:?package=Hiperspace&version=2.5.52Install as a Cake Addin
#tool nuget:?package=Hiperspace&version=2.5.52Install as a Cake Tool
Hiperspace is an Object technology that uses a key-addressable store to expand an application data-model beyond the limits of memory that can be directly referenced in main memory.
Elements are not duplicated or changing to match database shapes.
Elements are serialized directly using Protocol Buffers to and from key/value structure for storage in memory stores including CXL
expanded and pooled memory, shared cache , local SSD or key-value durable databases.
Elements that are not currently being used are released from main memory, and transparently (and quickly) reloaded when referenced. Memory stores allows petabytes of data to be addressed.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 3 NuGet packages that depend on Hiperspace:
| Package | Downloads |
|---|---|
|
Hiperspace.Rocks
HiperSpace RocksDB adaptor |
|
|
Hiperspace.Heap
Hiperspace heap store for session, edge and testing purposes |
|
|
Hiperspace.SQL
Package Description |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.5.52 | 6,745 | 5/9/2026 |
| 2.5.50 | 9,995 | 4/24/2026 |
| 2.5.47 | 10,007 | 4/15/2026 |
| 2.5.43 | 10,557 | 4/1/2026 |
| 2.5.39 | 13,776 | 3/20/2026 |
| 2.5.35 | 11,117 | 2/27/2026 |
| 2.5.33 | 14,411 | 2/14/2026 |
| 2.5.32 | 16,296 | 1/30/2026 |
| 2.5.29 | 17,660 | 1/17/2026 |
| 2.5.28 | 19,329 | 12/31/2025 |
| 2.5.26 | 20,409 | 12/21/2025 |
| 2.5.21 | 22,581 | 12/10/2025 |
| 2.5.18 | 24,606 | 12/3/2025 |
| 2.5.13 | 24,122 | 11/24/2025 |
| 2.5.8 | 24,106 | 11/15/2025 |
| 2.5.2 | 24,147 | 11/6/2025 |
| 2.5.1 | 24,094 | 10/23/2025 |
| 2.5.0 | 24,135 | 10/20/2025 |
| 2.4.6 | 24,154 | 9/23/2025 |
| 2.4.4 | 24,198 | 8/7/2025 |
https://www.cepheis.com/hiperspace/20260509
# Overview
This release is a minor update to support the presentation Cube data in Graph views with **Hiperspace.DB**, and minor updated to external references.
## Cube enhancement
### Aggregation
Hiperspace **Cubes** are declarative and stream-calculated by `Hiperspace.DB`, and viewable in graphs as a *Node* with Measures and a `TypeName` begining with `"Cube:"` (for aggregates) or `"Fact:"` for leaves within a *Cube* hierarchy. This release changes the presentation of *Cube* nodes that do not relate to any underlying facts:
* Do not return a facts collection when the `Facts` property is zero
* Do not return leaf dimensions (to a Pivot-Table) when there are no child dimensions or Measures
### Validation
Validation rules have been relaxed to create **cubes** even if it doesn't have any measures. **Cubes** provide summary information for a single or multiple *Dimensions*, but sometimes the only *measure* you need is the number of connections included:
```
entity Customer = Node () (Id : Int32) {Name : String} [TypeName = "Customer"];
entity Order = Node (), Edge (From = Customer, To = this, TypeName= "Order"), Edge_ (From = this, To = Product, TypeName = "Ordered" )
(Id : Int32) {Customer : Customer, Product : Product} [Name = Customer.Name + "-" + Product.Name, TypeName = "Order"];
entity Product = Node () (Id : Int32) {Name : String} [TypeName = "Product"];
```
[image]Sites/hiperspace/cube/spread.svg[/image]
If we're not interested in each order, a **Cube** can be used to simplify the graph to
[image]Sites/hiperspace/cube/summary1.svg[/image]
by changing the model to
```
@CubeDimension entity Customer = Node () (Id : Int32) {Name : String} [TypeName = "Customer"];
@CubeFact entity Order (Id : Int32) {Customer : Customer, Product : Product};
@CubeDimension entity Product = Node () (Id : Int32) {Name : String} [TypeName = "Product"];
```
If any of the *dimensions* to a **Cube** can be viewed as a *Node*, the `_Cube` and `_Fact` elements become a `Node` with *Drilldown* `Edge` to each dimension.
This change enables **Cube** to be used to simplify a *graph*, even when the only thing being measured is the number edges being replaced.
### View enhancement
The addition of the Cube summaries enhances the presentation of Graphs but introduced a level of detail that might be a distration for analysis. If you have a trade *cube* with dimensions {Sector, Product, Country} and drilldown to the lowest level of detail, a Graph search will include each level of detail all with *node* `"Cube:Contract_Cube"` and *edges* `"Cube:Drilldown"` and `"Cube:Dimension"`. Too enable more targeted analysis, *node* `TypeName` has been enhanced to include the number of dimensions included in each cube:
* {Sector} Cube has TypeName `"Cube:Contract_Cube:1"` with Sector->Cube (TypeName `"Cube:Drilldown:1"`
* {Sector, Product} Cube has TypeName `"Cube:Contract_Cube:2"` with Sector->Cube (TypeName `"Cube:Drilldown:2"`
* {Sector, Product, Country} Cube has TypeName `"Cube:Contract_Cube:3"` with Sector->Cube (TypeName `"Cube:Drilldown:3"`
---
## Element enhancement
The `IElement` interface of `Element<TElement>` has been updated to include an `ISetSpace` reference for the transformation of `ICubeFact` *facts* to the acyclic directed graph needed to render **Cubes** as a *Pivot-Table* with *drilldown* to futher details.
## HiLang enhancement
Extent expressions do not *normally* need `#id` to be recorded because they are not stored (calculated when needed from an element), but this is not the case for cube measures. Source editing has been added to carry forward the same `id` as the model changes.
---
Release also includes updates to referenced libraries