SSAS Tabular 表格模型建模(关系)及部署
表格模型是 Analysis Services 中的内存中数据库。 使用最先进的压缩算法和多线程查询处理器,xVelocity 内存中分析引擎 (VertiPaq) 可通过报表客户端应用程序(如 Microsoft Excel 和 Microsoft Power View)来快速访问表格模型对象和数据。
表格模型通过两种模式支持数据访问:缓存模式和 DirectQuery 模式。 在缓存模式中,可以集成多个源的数据,包括关系数据库、数据馈送和平面文本文件。 在 DirectQuery 模式中,可以绕开内存中模型,允许客户端应用程序直接在(SQL Server 关系)源上查询数据。
在 SQL Server Data Tools (SSDT) 中使用新的表格模型项目模板创建表格模型。 您可以从多个源导入数据,然后通过添加关系、计算列、度量值、KPI 和层次结构来丰富模型。 然后可以将模型部署到客户端报告应用程序可以连接到的 Analysis Services 实例。 可以在 SQL Server Management Studio 中管理已部署的模型,就像管理多维模型一样。 还可以对它们进行分区以便优化处理,并使用基于角色的安全性保护行级数据安全。
=========以上摘自 MSDN===========================
现在说的是建模过程中的问题总结:
1、假如在创建表关系时,少了 事实表->维度表 的一条联系系:DIST AgingStock[City_Code] -/->Geographys[City_Code]
excel 客户端拉取透视表的行标签《维表Geographys中City字段》以及数值《事实表DIST AgingStock中的列字段stock<经DAX函数编辑后>AgingStock作为度量值》时,
度量值 AgingStock:=sum([stock])
会出现如下BO度量值的情况:
数值都是一样的,BO QTY并没有按照city的维度切分,因为它们之间没有建立维度!!!
模型经修改后,重新在excel中分析:
另:如果建立关系,但是CITYCode映射不正确,会出现如下情况:
设置透视表选项,显示行/列中的空数据后,则会出现:
二、表格模型部署(deployMent Wizard)
表格模型设计完成后,需要通过部署与处理的作业,部署到正式机远端服务器上,使数据库资料载入设计好的模型中,以供使用者使用。
测试时--SSDT就可以部署模型(VS)
正式部署:Microsoft SQL Server 2012 -->Analysis Services -->Deployment Wizard部署工具
VS设计好的模型重新编译后:如下,NEXT,NEXT,NEXT...部署完成!
小注:
1、部署过程中,如果数据库不存在,则创建,否则覆盖,故用户需有权限,避免出现以下错误--需管理员权限授予权限:
2、部署过程中,若出现:OLE或者ODBC无法连接数据库XXX等,需要重新填写数据源(数据库)登录账户及名称。
若后续需要更改数据源连接--使用脚本方式 script.xmla :
好处:在VS设计Model时连接的数据源为测试库,部署到SQL Server上之后连接正式机数据源。如果重新部署VS设计好的model,则会覆盖字符串连接。
另外:
还可以设置角色,分角色管理用户权限。
VS:
SQL AS:
...
FINISHED!
验证数据正确性:
以excel作为客户端连接AS模型,拖出透视表--以《沈阳市》为例:
在正式机数据源DB中查询:
FINALLY ...FINISHED!!!
最讨厌写博客啦~~~