上回我们说到,如何部署SSAS表格模型。接下来我们将要介绍,如何进行数据刷新。
从SSMS端连接SSAS模型,我们看到,每个SSAS数据库,有三个子项:
- Connections (连接) ,即我们配置的数据源。
- Tables (表),是模型里的表格,是模型的基本构成之一。
- Roles (角色),用来控制模型的权限。
我们可以对单张表格刷新数据,也可以对整个模型统一刷新。
单张表格刷新
1、右键某表,选择【处理表】(Process Table)。
2、在弹窗中选择【处理全部数据】(Process Full),点确定即可。
整个模型刷新
处理整个模型的方法跟单张表类似,只是要在整个模型上点右键选择【处理数据库】(Process Database),再选择【全部处理】(Process Full),如下图所示。
定时刷新
定时刷新,需要在SQL Services上设置【作业】(job)。
1、用SSMS连接SQL Server。
2、在【SQL代理】下找到【作业】,并右键【新建作业】。
3、在弹出的窗口中命名,并依次编辑【步骤】和【计划】。
4、在【步骤】窗口中,点新建,并在下方命令中输入如下脚本,如图所示。
代码语言:javascript复制{
"refresh": {
"type": "full",
"objects": [
{
"database": "TabularProject1"
}
]
}
}
脚本命令中,"database"后面填写SSAS模型的名称,如TabularProject1。其他复制即可。
5、新建【计划】,按需填写即可。
6、按上述操作完,大概率还是无法定时刷新。接下来还要配置权限。回到SSAS模型,选择选择【角色】并右键【新建角色】。创建一个【完全控制】权限的角色。
然后选择左侧【成员身份】,添加用户“NT ServiceSQLAgentXXX”。其中,XXX部分因人而异。具体在SQL Server 的【安全性】子项的【登录名】中查看。
添加完后,既可以实现自动刷新功能。
最后,感谢【白茶】和【透明人】在我摸索过程中的帮助和指点!