OLE DB:组件数据库的强大助力
1. OLAP 数据支持
在线分析处理(OLAP)提供了一种将原始数据整合为多维视图的方法。例如,一个 OLAP 报告可能会按地区和销售人员细分展示计算机的销售数量。
为了支持 OLAP,OLE DB 定义了一种多维表达式语言(MDX)。使用 MDX 编写的多维查询可以通过标准的 OLE DB 命令对象提交给 OLAP 数据提供者。同时,还为 MDX 方言定义了一个特殊的 GUID(MDGUID_MDX),以便能够同时支持 SQL 和 MDX 查询的提供者区分这两种查询。
普通消费者可以通过标准的行集抽象来查看 MDX 查询的结果,在这种视图中,查询结果会被扁平化处理成表格视图。而 OLAP 消费者通常需要沿着多个维度导航和操作 MDX 查询的结果,为此,OLE DB 定义了一个名为数据集的多维数据对象,它提供了用于在多个维度上导航和访问 MDX 查询结果的接口。
除了 MDX 查询语言的规范和用于操作多维数据的数据集对象外,OLE DB 几乎不需要进行扩展就能支持 OLAP 数据。相同的连接模型、命令和行集仍然适用于 OLAP 数据提供者。虽然 OLE DB 为立方体、度量、维度、层次结构、级别、属性和成员定义了额外的元数据模式,但这些元数据可以通过会话对象上的 IDBSchemaRowset 接口进行访问,就像访问其他元数据一样。通过请求将 MDX 查询的结果作为扁平化的行集返回,通用消费者可以以与关系型或其他基于命令的提供者相同的方式与 OLAP 数据提供者进行交互。
2. OLE DB 服务
2.1 添加通用连接设施
Microsoft Data L