表格模型数据访问

Analysis Services 中的表格模型数据库可由大多数用于从多维模型中检索数据或元数据的客户端、接口和语言访问。 有关详细信息,请参阅多维模型数据访问(Analysis Services - 多维数据)。

本主题介绍使用表格模型的客户端、查询语言和编程接口。

客户

以下 Microsoft 客户端应用程序支持与 Analysis Services 中表格模型数据库的原生连接。

Excel

可以使用 Excel 中的数据可视化和分析功能连接到 Excel 中的表格模型数据库,以便处理数据。 若要访问数据,请定义 Analysis Services 数据连接,指定在表格服务器模式下运行的服务器,然后选择要使用的数据库。 有关详细信息,请参阅 连接到 SQL Server Analysis Services 或从 SQL Server Analysis Services 导入数据

Excel 也是建议在 SQL Server Data Tools (SSDT)中浏览表格模型的应用程序。 该工具包括“ 在 Excel 中分析 ”选项,该选项启动 Excel 的新实例、创建 Excel 工作簿,以及打开从工作簿到模型工作区数据库的数据连接。 在 Excel 中浏览表格模型数据时,请注意 Excel 使用 Excel 数据透视表客户端针对模型发出查询。 因此,在 Excel 工作簿中的操作会导致 MDX 查询被发送到工作区数据库,而不是 DAX 查询。 如果使用 SQL Profiler 或其他监视工具监视查询,则预期会看到 MDX,而不是探查器跟踪中的 DAX。 有关“在 Excel 中分析”功能的详细信息,请参阅“在 Excel 中分析”(SSAS 表格)。

Power View

Power View 是在 SharePoint 2010 环境中运行的 Reporting Services 报告客户端应用程序。 它将数据浏览、查询设计和演示文稿布局合并到集成的即席报告体验中。 无论模型是托管在表格模式下的 Analysis Services 实例上,还是通过使用 DirectQuery 模式从关系数据存储中检索,Power View 都可以使用表格模型作为数据源。 若要在 Power View 中连接到表格模型,必须创建包含服务器位置和数据库名称的连接文件。 可以在 SharePoint 中创建 Reporting Services 共享数据源或 BI 语义模型连接文件。 有关 BI 语义模型连接的详细信息,请参阅 PowerPivot BI 语义模型连接(.bism)。

Power View 客户端通过向指定数据源发送请求来确定指定模型的结构,该数据源返回客户端可以使用该架构创建针对模型的查询作为数据源并基于数据执行作。 Power View 用户界面中用于筛选数据、执行计算或聚合以及显示关联数据的后续作由客户端控制,不能以编程方式作。

Power View 客户端发送到模型的查询作为 DAX 语句发出,可以通过在模型上设置跟踪来监视这些语句。 客户端还会针对初始架构定义向服务器发出请求,该定义根据概念架构定义语言(CSDL)提供。 有关详细信息,请参阅 商业智能的 CSDL 注释(CSDLBI)

SQL Server Management Studio

可以使用 SQL Server Management Studio 管理托管表格模型的实例,以及查询其中的元数据和数据。 可以处理模型或模型中的对象、创建和管理分区,以及设置可用于管理数据访问的安全性。 有关详细信息,请参阅以下主题:

可以使用 SQL Server Management Studio 中的 MDX 和 XMLA 查询窗口从表格模型数据库中检索数据和元数据。 但是,请注意以下限制:

  • 在 DirectQuery 模式下部署的模型不支持使用 MDX 和 DMX 的语句;因此,如果需要在 DirectQuery 模式下针对表格模型创建查询,则应改用 XMLA 查询 窗口。

  • 打开 “查询 ”窗口后,无法更改 XMLA 查询窗口的数据库上下文。 因此,如果需要将查询发送到其他数据库或不同的实例,则必须使用 SQL Server Management Studio 打开该数据库或实例,并在该上下文中打开新的 XMLA 查询 窗口。

可以针对 Analysis Services 表格模型创建跟踪,就像在多维解决方案中一样。 在此版本中,Analysis Services 提供了许多可用于跟踪内存使用情况、查询和处理作以及文件使用情况的新事件。 有关详细信息,请参阅 Analysis Services 跟踪事件

警告

如果跟踪表格模型数据库,可能会看到一些事件被分类为 DMX 查询。 但是,表格模型数据不支持数据挖掘,对数据库执行的 DMX 查询仅限于模型元数据上的 SELECT 语句。 事件仅分类为 DMX,因为 MDX 使用相同的分析程序框架。

查询语言

Analysis Services 表格模型支持大多数与多维模型相同的查询语言。 例外情况是在 DirectQuery 模式下部署的表格模型,该模型不从 Analysis Services 数据存储检索数据,而是直接从 SQL Server 数据源检索数据。 不能使用 MDX 查询这些模型,但必须使用支持将 DAX 表达式转换为 Transact-SQL 语句(如 Power View 客户端)的客户端。

德国DAX指数

无论模型是作为已启用 PowerPivot 的 Excel 工作簿存储在 SharePoint 上还是 Analysis Services 实例上,都可以使用 DAX 在所有类型的表格模型中创建表达式和公式。

此外,可以使用 XMLA EXECUTE 命令语句上下文中的 DAX 表达式将查询发送到已在 DirectQuery 模式下部署的表格模型。

有关使用 DAX 的表格模型中的查询示例,请参阅 [DAX 查询语法参考](/dax/dax-syntax-reference

MDX

可以使用 MDX 针对使用内存中缓存作为首选查询方法的表格模型创建查询(即,尚未在 DirectQuery 模式下部署的模型)。 尽管 Power View 等客户端同时使用 DAX 来创建聚合和查询模型作为数据源,但如果熟悉 MDX,它可以是在 MDX 中创建示例查询的快捷方式,请参阅 MDX 中的生成度量值

CSDL

概念架构定义语言不是查询语言,但可用于检索有关模型和模型元数据的信息,稍后可用于创建报表或针对模型创建查询。

有关如何在表格模型中使用 CSDL 的信息,请参阅 商业智能 (CSDLBI) 的 CSDL 注释

编程接口

用于与 Analysis Services 表格模型交互的主体接口是架构行集、XMLA 以及 SQL Server Management Studio 和 SQL Server Data Tools 提供的查询客户端和查询工具。

数据和元数据

可以使用 ADOMD.NET 从托管应用程序中的表格模型中检索数据和元数据。 有关在表格模型中创建和修改对象的应用程序的示例,请参阅以下资源:

可以在非托管客户端应用程序中使用 Analysis Services 9.0 OLE DB 提供程序来支持访问表格模型。 启用表格模型的访问需要更新版本的 Analysis Services OLE DB 提供程序。 有关用于表格模型的提供程序的详细信息,请参阅 在 SharePoint Server 上安装 Analysis Services OLE DB 提供程序

还可以以基于 XML 的格式直接从 Analysis Services 实例检索数据。 可以使用DISCOVER_CSDL_METADATA行集来检索表格模型的架构,也可以对现有 ASSL 元素、对象或属性使用 EXECUTE 或 DISCOVER 命令。 有关详细信息,请参阅以下资源:

操作 Analysis Services 对象

可以使用 XMLA 命令或使用 AMO 创建、修改、删除和处理表格模型和对象,包括表、列、透视、度量值和分区。 AMO 和 XMLA 都已更新,以支持表格模型中用于增强报告和建模的其他属性。

有关如何使用 AMO 和 XMLA 编写表格对象脚本的示例,请参阅以下资源:

  • Codeplex 上的表格模型 AMO 示例

  • CodePlex 上的 AdventureWorks 示例

可以使用 PowerShell 管理和监视 Analysis Services 的实例,以及创建和监视用于表格模型访问的安全性。 有关详细信息,请参阅 Analysis Services PowerShell

模式行集

客户端应用程序可以使用架构行集来检查表格模型的元数据,并从 Analysis Services 服务器检索支持和监视信息。 在此版本的 SQL Server 中,添加了新的架构行集并扩展了现有的架构行集,以支持与表格模型相关的功能,并增强 Analysis Services 的监视和性能分析。

此版本中没有针对 OLE DB for Data Mining 架构行集的更新。

警告

不能在已在 DirectQuery 模式下部署的数据库中使用 MDX 或 DMX 查询;因此,如果需要使用架构行集对 DirectQuery 模型执行查询,则应使用 XMLA 而不是关联的 DMV。 对于返回服务器整体结果的动态管理视图(DMVs),例如SELECT * FROM $system.DBSCHEMA_CATALOGS或DISCOVER_TRACES,可以在以缓存模式部署的数据库内容中执行查询。

另请参阅

连接到表格模型数据库(SSAS)
PowerPivot 数据访问
连接至分析服务