【问题标题】:Issue in Partition in SSAS tabular model with DirectQuery Mode使用 DirectQuery 模式的 SSAS 表格模型中的分区问题
【发布时间】:2021-07-23 15:42:51
【问题描述】:
我正在尝试在 DirectQuery 模式下为表格模型数据库创建示例分区,在设置过滤器并尝试导入后出现以下错误:
“无法将修改保存到服务器:返回错误:'具有使用 DirectQuery 模式的分区和完整 DataView 的表在 DirectQuery 模式下只能有一个分区。在此模式下,表 'FactInternetSales' 的分区设置无效。您可能需要合并或删除分区,以便在 DirectQuery 模式下只有一个分区具有完整数据视图。”
谁能帮我理解这个问题。谢谢
【问题讨论】:
标签:
ssas
ssas-tabular
ssas-2012
【解决方案1】:
DirectQuery 模型是一种不在模型中缓存数据的模型。相反,当查询 DirectQuery 模型时,它会在查询时生成针对后端 SQL 数据源的查询。这与提前导入源数据并在内存中压缩以实现快速查询性能的导入模型进行比较。导入模型需要定期刷新,因此数据不会过时。 DirectQuery 模型不需要刷新,因为它们始终反映源系统中的内容。
你得到的错误是不言自明的。 DirectQuery 模型每个表应该只有一个分区,并且该分区的查询应该覆盖您的模型应该为该特定表覆盖的日期范围的 100%。因此,请检查 FactInternetSales 分区并删除除一个以外的所有分区,并从分区查询中删除 WHERE 子句。