SSAS表格-仅处理行为新行或已修改的数据

时间:2019-09-13 10:27:06

标签: sql ssas tabular

我有一个SSAS多维数据集,可从源系统导入数据视图。每次执行此处理时,它都会导入完整视图,但是我想通过仅处理自上次处理以来新的或已更改的行来提高性能。谁能建议最好的方法?

该视图具有一个ID列,以及创建日期和修改日期(如果有帮助的话)?

即使在谷歌搜索后也不知道尝试什么

2 个答案:

答案 0 :(得分:0)

您的模型处理策略是什么?你为什么要Process Full

有一个名为Process Add的选项,它根据条件允许仅加载尚未在多维数据集中配置的新数据,该条件允许您对所有未在模型中添加的已修改数据进行分段。

以下是流程添加逻辑的简短片段:

[Reflection.Assembly]::LoadWithPartialName("Microsoft.AnalysisServices")
$server = New-Object Microsoft.AnalysisServices.Server
$server.connect("localhostK12")
$db = $server.Databases.Item("AdventureWorks Tabular Model SQL 2012")
$dsv = $db.DataSourceViews.GetByName("Sandbox")
$cube = $db.Cubes.GetByName("Model")
$measureGroup = $cube.MeasureGroups.GetByName("Internet Sales")
$partition = $measureGroup.Partitions.GetByName("Internet Sales")
$queryBinding = New-Object Microsoft.AnalysisServices.QueryBinding( $dsv.DataSourceID, "SELECT * FROM FactInternetSales **WHERE OrderDateKey >= 20120215**" )
$partition.Process( "ProcessAdd", $queryBinding )
$server.Disconnect()

答案 1 :(得分:0)

使用以下查询过滤最近修改的记录

pause