创建要在 DirectQuery 模式下使用的模型时,必须先配置设计环境以支持使用 DirectQuery。 为此,请参阅“启用 DirectQuery 设计模式”(SSAS 表格)。
准备好部署模型时,必须设置一些其他属性,使用户能够使用其中一种 DirectQuery 模式访问模型:
必须指示针对模型的查询是否应使用缓存数据或关系数据源。 可使用混合模式或仅使用 DirectQuery。
如果使用分区,则必须指示要用作 DirectQuery 数据源的分区。
您必须为将会访问 SQL Server 数据源的用户配置模拟选项。
此过程介绍如何在设计器中为 DirectQuery 模型设置首选连接方法。 它还介绍了如何在部署模型后在 SQL Server Management Studio 中更改此属性。
设置 DirectQuery 模型的首选连接方法
在 SQL Server Data Tools (SSDT)中,打开 DirectQuery 模型的解决方案文件。
在 Visual Studio 的 “项目” 菜单中,选择“ 属性”。
在 “属性 ”窗格中,将属性 DirectQueryMode 更改为支持 DirectQuery 用法的值之一:
InMemory 与 DirectQuery:如果使用此选项,则部署模型,但必须先处理缓存,然后才能对模型运行查询。
具有 InMemory 的 DirectQuery:如果使用此选项,则缓存将可供客户端使用(如果已处理)。 如果使用此设置部署模型,并且不处理缓存,则某些客户端在尝试连接到模型时必须收到错误。
仅 DirectQuery:使用此选项时,会部署元数据,但模型中没有数据。 尝试使用 In-Memory 模式进行连接的客户端将收到错误,指示模型不存在或尚未处理。
如果存在错误,请在 Visual Studio 中打开 “错误列表 ”并解决任何阻止模型在 DirectQuery 模式下部署的问题。
验证或更改 DirectQuery 模型的首选连接方法
在 SQL Server Management Studio 中,连接到部署 DirectQuery 模型的实例。
右键单击模型数据库,然后选择“ 属性”。
在 “属性 ”窗格中,将属性 DirectQueryMode 更改为以下值之一:
仅限 DirectQuery
InMemory 与 DirectQuery
DirectQuery 与 InMemory
请注意,这些属性与在 Visual Studio 中部署之前在项目上设置的属性相同。 只要已将模型配置为支持 DirectQuery 用法,可以随时更改 DirectQuery 模式的首选连接模式。