数据仓库之建立多维数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据仓库之建立多维数据库相关的知识,希望对你有一定的参考价值。

 

1.有了生产库, 通过cdc捕获数据变化,  通过ssis 将数据保存到数据仓库里面, 现在要做的就是建立多维数据集SSAS进行数据统计分析.

 

2.本地环境搭建好多维数据集之后, 如何发布到正式环境呢?   总不该说在正式服务器上也装一个 VS吧.

  经过研究发现, 可以使用XMLA 查询 来完成.

 

  首先在测试环境上,搭建多维数据集, 然后通过 如下的这种方式, 可以生成 xmla  脚本, 这个是 xmla查询, 

   技术分享

 

 需要将xmla文件的 数据源的数据库连接改一下, 这个就是 抽取数据的来源.

技术分享

 

 部署到正式环境上,有一个地方要注意下, 那就是 多维数据集的分区设置 .

 

技术分享

     同样右键生成xmla文件到新窗口, 可以看到 分区规则( 同一个数据源分区, 用的是 查询绑定, 主要查看 where 条件的界限值)

如果要创建新的分区, 只需要 将xmla文件的  分区的Id 和 name 修改一下, 然后下面的 sql语句建立好对应的查询规则, 就可以设置新的分区了.

技术分享

 

设置分区的目的是为了将各个时间段的数据分开, 比如 生产数据 1-3月份的数据,到了4月份的时候,之前的历史数据可能有的已经发生了更改 ,

统计报表到4月份再来校验 第一季度1到3月份数据的时候,就会发现有对不上的情况. 所以我们将每个月, 分开单独建立一个分区进行统计, 统计1-3月份的数据,

就只将1,2,3 3个月的分区的数据合并在一起, 而不是到数据仓库区去 直接查 where  month  in (1,2,3) .

 

另外,有时会新增字段或删除字段,  多维数据集cube 结构改变了,  建立的分区啊什么的,可能都会受影响.所以及时做好 cube 备份也是必须的.

 同样的, 数据库右键备份, 然后可以看到 在 "帮助" 旁边有一个 "脚本" , 通过这个可以看到该操作的脚本,没错,又是 xmla ,这里要说一下, 下面的设置密码保存

 先去掉.

 

技术分享

 

 备份的脚本如下

<Backup xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
  <Object>
    <DatabaseID>JGBOLAPDBSln</DatabaseID>
  </Object>
  <File>JGBOLAPDBSln.abf</File>
</Backup>

 其中 databaseid 是当前要备份的数据库, <file>里面存放的是备份的文件, 后罪名是 .abf文件

 

多维数据集这边所要处理的问题大概就这些了. 加字段,删字段什么的,这个暂时还没研究. xmla 语法比较特殊,

以及后续的 mdx 查询语句, 跟普通的 sql查询 不是一回事. 

 

以上是关于数据仓库之建立多维数据库的主要内容,如果未能解决你的问题,请参考以下文章

理解Kylin中CubeCuboidCube Segment

商务智能数据仓库 ( 多维数据模型 | 多维数据分析 )

基于Hadoop生态圈的数据仓库实践 —— 环境搭建

数据仓库的多维数据模型定义

Docker数据管理与网络通信之私有仓库建立

万字详解ETL和数仓建模