.NET的开放,免费,多维数据集数据结构

Ken*_*art 5 .net olap cube

我正在开展一个项目,允许用户以类似于OLAP系统中提供的方式对数据进行切片和切块.但是,数据不存储在OLAP系统中,而是作为来自关系系统的平面记录提供给前端.

我最初的想法是,我可能需要获取该平面数据并使用它填充客户端多维数据集数据结构,然后可以通过编程接口查询.虽然这样的数据结构听起来很有趣并且难以自我编写,但我想知道是否已经有一个我可以利用的免费开放实现.

理想情况下,它会:

  • 在定义维度,级别,成员和属性方面提供了很大的灵活性
  • 支持计算的措施
  • 提供一个很好的界面来查询多维数据集
  • 是免费的,开源的,并且解开任何特定的接口技术

有谁知道我可以使用的这样一个项目?

Fil*_*tos 0

.NET 提供了非常简单的方法来访问 Analysis Services OLAP-Cube。所以我建议您使用数据创建一个 SSAS 多维数据集。确保您使用正确的数据方案(星型或雪花方案)

创建多维数据集后,您可以使用 .NET 轻松访问它,读取 Analysis Services 目录中所有多维数据集的维度、级别和成员:

    AdoConn = new ADODB.Connection();
    AdoConn.Open("provider=msolap;Data Source=localhost;initial catalog=Final;", "", "", 0);            

    catalog = new ADOMD.Catalog();
    catalog.ActiveConnection = AdoConn;
    cubes = catalog.CubeDefs;

    foreach (ADOMD.CubeDef cube in cubes) //Read all Cubes
    { 
     cube.Name.ToString();
     foreach (ADOMD.Dimension dimension in cube.Dimensions) //Read all Dimensions of each Cube
     { 
      dimension.Name.ToString();
      foreach (ADOMD.Hierarchy hierarchy in dimension.Hierarchies) //Read all Hierarchies of each Dimension
      { 
       hierarchy.Name.ToString();
       foreach (ADOMD.Level level in hierarchy.Levels) //Read all Leves of each Hierarchy
       { 
        level.Name.ToString()
       }
      }
     }
    }
   AdoConn.Close();
Run Code Online (Sandbox Code Playgroud)