我的模型中有几个事实表,每个事实表都有几十个带日期的分区,每个分区约有300万行
当我通过SSMS(表->分区->删除)或通过TMSL删除任何这些分区时,
{
"delete": {
"object": {
"database": "XXXX",
"table": "MYTABLE",
"partition": "XXXXXXXXXXXX"
}
}
}
它成功删除,但是当我通过Excel浏览模型时,得到:
“该表达式引用了'MYTABLE'[COBId]和'Date'[COBId]之间的关系,该关系不包含任何数据,因为需要重新计算它”
我已确认在删除分区(任何分区)之前可以使用这些措施,并且此后立即将其中断
奇怪的是,如果我随后在受影响的表中的any一个分区上处理Default,那么所有这些都将再次起作用
任何人都可以阐明这种行为吗?
删除分区需要您在数据库上运行Process Recalc(或包含Recalc的Process Default)。基本上,删除分区会使某些关系,计算的列和层次结构失效,因此需要重建它们。