You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SSMS/XMLA修改Power BI增量刷新策略:调整刷新窗口

通过SSMS/XMLA修改Power BI增量刷新窗口

操作步骤

  • 打开SSMS,连接到Power BI工作区的XMLA端点:
    • 选择「分析服务」作为服务器类型,输入工作区的XMLA地址(格式:powerbi://api.powerbi.com/v1.0/myorg/[工作区名称])
    • 使用拥有工作区编辑权限的Power BI账号完成登录
  • 在对象资源管理器中,依次展开目标工作区(数据库)→「模型」→「表」,找到需要修改增量刷新策略的表

XMLA修改脚本示例

针对单个表,修改增量刷新窗口为3个月的XMLA脚本如下,需替换[表名]、[日期列名]和YourDataSourceID为实际值:

<Alter xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
  <ObjectDefinition>
    <Table xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500">
      <Name>[表名]</Name>
      <Partitions>
        <Partition>
          <Name>[表名]_Incremental</Name>
          <Source>
            <QueryPartitionSource>
              <Query>
                <DataSourceID>YourDataSourceID</DataSourceID>
                <CommandText>SELECT * FROM [源表] WHERE [日期列名] &gt;= RangeStart AND [日期列名] &lt; RangeEnd</CommandText>
              </Query>
            </QueryPartitionSource>
          </Source>
          <PartitionManagement>
            <RefreshPolicy>
              <IncrementalWindowOffset>-P3M</IncrementalWindowOffset> <!-- 原配置为-P6M,修改为3个月 -->
              <RangeStart>
                <Dynamic>
                  <Expression>DateTime.Date(DateTime.AddMonths(DateTime.UtcNow(), -3))</Expression>
                </Dynamic>
              </RangeStart>
              <RangeEnd>
                <Dynamic>
                  <Expression>DateTime.Date(DateTime.UtcNow())</Expression>
                </Dynamic>
              </RangeEnd>
              <RollupPolicy>
                <WindowSize>P3M</WindowSize> <!-- 滚动窗口大小改为3个月 -->
                <Boundary>Month</Boundary>
              </RollupPolicy>
            </RefreshPolicy>
          </PartitionManagement>
        </Partition>
      </Partitions>
    </Table>
  </ObjectDefinition>
</Alter>

注意事项

  • 批量修改:如果6个表的修改逻辑一致,可批量生成脚本,替换对应表名和日期列后依次执行
  • 执行脚本后不会触发全量刷新,后续增量刷新会自动使用新的3个月窗口
  • YourDataSourceID需与目标表的数据源ID匹配,可在SSMS中查看表的属性获取该ID
  • 操作前建议通过SSMS导出模型脚本做备份

内容的提问来源于stack exchange,提问作者jhowe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 13:43:10