RLS(行级安全)是否限制 DAX 查询中扫描的数据?

Does RLS (Row Level Security) Limit The Data Scanned in a DAX Query?

我很好奇这里是否有人可以告诉我 RLS 是否会限制 DAX 度量中扫描的数据量?我的 RLS Table 通过标准星型模式中的双向关系连接到我的事实 table。由于需求,我已经建立了一套非常复杂的措施,我担心一旦这个模型处理了所有数据,它可能会表现不佳。目前,数据仅由组织内的几个实体组成,但一旦处理完整,模型将接近 50 亿条记录。我正在使用大量的迭代器,我希望他们不需要迭代整个集合。

谢谢!

在评估措施之前应用 RLS 过滤。但是,根据您放置 RLS 过滤器的 table 以及 RLS 过滤器表达式的复杂性,您可能会遇到 RLS 过滤器本身性能不佳的情况!

如果您的模型是一个设计良好的星型模式,并且 RLS 应用于没有太多行(< 100.000)的维度 table,那么您应该没问题!

不过,双向关系可能会造成一些麻烦,所以要小心!通常,您应该始终避免使用 bi-di,而是在您实际需要双向行为的那些度量中使用 CROSSFILTER 函数。

跨越十亿行的迭代器不一定是问题除非迭代表达式执行上下文转换(当您使用CALCULATE或引用度量时可能会发生这种情况在迭代中。

但最终,对于表格模型,正如意大利人所说:It Depends™

你总是 - 总是 - 必须进行测试,以了解最终的表现。