上一篇已经创建了多维数据集的结构。

接下来我们将多维数据集的架构定义发送到Analysis Services实例,部署到AS上去。

文章提纲

  • 部署和浏览多维数据集
  • SSMS使用简介
  • 总结

一、部署和浏览多维数据集

1. 部署项目

在Solution Explorer中,直接右键项目名称并选择Deploy.

当部署AS项目时,SSDT首先会构建你已经创建的项目,并检查初步的警告和错误,例如无效的定义。

如果项目定义不存在任何错误,SSDT会将你在项目中所创建的所有对象和定义打包,并将其发送到AS实例。

默认情况下,这些定义会发送到 localhost上的AS实例,创建一个与项目同名的数据库,在项目中所有对象也会在该数据库中创建。

在部署时,SSDT不仅要发送你所创建的对象的所有架构定义,还要发送一条命令以处理该数据库。

如果要部署到其他计算机上,右击该项目并选择Properties

部署过程中会看到一系列状态信息。如果部署成功,在Output中会显示如下信息:

========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========

========== Deploy: 1 succeeded, 0 failed, 0 skipped ==========

接下来我们可以浏览成功部署的多维数据集。

在多维数据集设计器中,打开 Adventure Works DW2012.cube,切换到Browser页面。

2. Browser页面构成

左侧部分主要包括Cube和相应Cube的量值组及维度信息,如下:

右侧部分有两个水平分隔的窗格。

上面的窗格是Filter窗格,可以在窗口中指定筛选条件。

下面是Report窗格,用于对结果进行分析。

可以将度量值和维度从Metadata窗格拖放到Report窗格来对数据进行分析。

3. 分析示例

我们来做个简单的分析:

1.将Dim Promotion维度的English Promotion Category特性以及Dim Sales Territory维度的Sales Territory Group特性拖放到Report窗格

2.将Sales Amount度量值从Fact Internet Sales度量值组拖放到Report窗格。

现在,将看到与English Promotion Category和Sales Territory Group特性的不同值的交集相对应的度量值。与维度特性值的交集相对应的每个度量值被称为一个单元。

我们再添加一个筛选条件,把欧洲的筛选出来。

切换到语句模式

可以看到,建好cube后,进行多维分析会非常简单和便捷(因为事先已经聚合好了)

二、SSMS 使用简介

基本上SSMS做的事情在SSDT中可以直接做,我们简单说明一下SSMS。

打开SQL Server, 选择 Analysis Services即可,可以把它简单的类比成关系型数据库对应的Database Engine.

找到我们部署的AS项目, 展开后可以发现结构和SSDT类似,就不多做介绍了。

使用MDX查询编辑器进行查询

MDX是一种语言,通过这种语言,可以按照与SQL在查询关系数据库时所用的方法类似的方法查询多维数据库。

MDX可以从Analysis Services多维数据集或维度中提取信息。SQL一般是沿两个轴返回结果,即行和列,而MDX沿多个轴返回数据。

典型MDX查询语法

SELECT [<axis_specification>

[,<axis_specification>…]]

FROM [<cube_specification>]

[WHERE [slicer_specification]]

在SSMS中使用MDX查询类似于使用SQL.

直接点击New Query即可打开查询窗口。

我们运行第一个查询测试一下:查找不同轴的成员以及对应的单元值。

我们可以把刚刚SSDT中生成的复杂查询语句粘贴过来:

SELECT NON EMPTY { [Measures].[Sales Amount] } ON COLUMNS,

NON EMPTY { ([Dim Sales Territory].[Sales Territory Group].[Sales Territory Group].ALLMEMBERS * [Dim Promotion].[English Promotion Category].[English Promotion Category].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION,

MEMBER_UNIQUE_NAME ON ROWS FROM ( SELECT ( { [Dim Sales Territory].[Sales Territory Group].&[Europe] } )

ON COLUMNS FROM [Adventure Works DW2012]) CELL PROPERTIES VALUE,

BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

执行后可以看到相同的结果。

通过可视化界面自动生成的语句可以帮助我们学习,有问题时对照看看是个不错的学习方法。

三、总结

至此,我们将SSAS相关工具的初步使用都做了介绍。

大家需要熟悉SSDT的开发界面,熟悉常用的MDX语法(关于MDX现在只需要做初步了解,后续文章有一篇专题讲解,会把常用的场景都罗列出来)

下一篇起将会逐步深化,针对主题进行深入讲解。

相关文章列表:

首发博客园 by MiroYuan,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。

BI之SSAS完整实战教程4 -- 部署至SSAS进行简单分析的更多相关文章

  1. BI之SSAS完整实战教程7 -- 设计维度、细化维度中 :浏览维度,细化维度

    上篇文章我们已经将Dim Geography维度设计好. 若要查看维度的成员, AS需要接收该维度的详细信息(包括已创建的特性.成员属性以及多级层次结构), 通过XMLA与AS的实例进行通信. 今天我 ...

  2. BI之SSAS完整实战教程6 -- 设计维度、细化维度上:创建维度定义特性关系

    前面我们使用过数据源向导.数据源视图向导.Cube向导来创建相应的对象. 本篇我们将学习使用维度向导来创建维度. 通过前面几个向导的学习,我们归纳一下共同点,主要分成两步 1. 使用某种对象类型的向导 ...

  3. BI之SSAS完整实战教程5 -- 详解多维数据集结构

    之前简单介绍过多维数据集(Cube)的结构. 原来计划将Cube结构这部分内容打散,在实验中穿插讲解, 考虑到结构之间不同的部分都有联系,如果打散了将反而不好理解,还是直接一次性全部讲完. 本篇我们将 ...

  4. BI之SSAS完整实战教程2 -- 开发环境介绍及多维数据集数据源准备

    上一篇我们已经完成所有的准备工作,现在我们就开始动手,通过接下来的三篇文章创建第一个多维数据集. 传统的维度和多维数据集设计方法主要是基于现有的单源数据集. 在现实世界中,当开发商业智能应用程序时,很 ...

  5. BI之SSAS完整实战教程1 -- 开篇, BI简介 & SSAS简介

    文章提纲 商业智能(BI, Business Intelligence)基本概念 SSAS(SQL Server Analysis Services)相关工具(开发.管理和客户端) 总结 一.商业智能 ...

  6. BI之SSAS完整实战教程3 -- 创建第一个多维数据集

    上一篇我们已经完成了数据源的准备工作,现在我们就开始动手,创建第一个多维数据集(Cube). 文章提纲 使用多维数据集向导创建多维数据集 总结Cube设计器简介 维度细化 总结 一.使用向导创建多维数 ...

  7. Android简易实战教程--第四话《最简单的短信发送器》

    首先配置一个布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmln ...

  8. .Net Core 在 Linux-Centos上的部署实战教程(四) ---- 总结

    问题: 1.网站部署上访问不了,可能是防火墙/安全组的原因 2.在后台运行这块上 我查了一些类似的部署博客 好多人都是用守护进程搞的,本人也算Linux小白  不懂这样做的好处是啥  有大佬的话  可 ...

  9. 用grunt搭建自动化的web前端开发环境实战教程(详细步骤)

    用grunt搭建自动化的web前端开发环境实战教程(详细步骤) jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用!前端自动化, ...

随机推荐

  1. sqlite 的比较等运算是根据不同的值而不同的,并不是根据的字段类型,因为 sqlite 是弱类型字段

    sqlite 的比较等运算是根据不同的值而不同的,并不是根据的字段类型,因为 sqlite 是弱类型字段   --------------------------------------------- ...

  2. ECSHOP会员登录后直接进用户中心

    ECSHOP系统在会员登录成功后,不是直接进入用户中心,而是跳转回了上一个页面或者是跳转到了首页. 注意:这里说的是,用户没有主动点击前往哪个页面,让系统自动跳转. 那如何让会员登录成功后自动进入“用 ...

  3. VS2010+Opencv+SIFT以及出现的问题-关于代码sift_3_c的说明

    http://blog.sina.com.cn/s/blog_a6b913e30101dvrt.html 一.前提 安装Opencv,因该版本的SIFT是基于Opencv的. 下载SIFT源码,见Ro ...

  4. Rxlifecycle(三):坑

    坑1 Observable.just("hello world!") .compose(this.<String>bindUntilEvent(ActivityEven ...

  5. 微软MVC对架构的一点思考

    毕业即将三年,在学校学习.做毕设一直使用拖控件的 Winform\WebForm,工作后公司采用MVC3架构做项目. 下面使用mvc的个人总结 : 1.架构上分层清晰.便于研发,耦合性好 2.缓存机制 ...

  6. 数据仓库与ODS的区别

    我在公司的数据部门工作,每天的订单类数据处理流程大致如下: 删除分析数据库的历史订单数据 全量更新订单数据到分析数据库.(由于订单核心数据不大,所以经受得起这么折腾) 将数据简单清洗,并生成数据集市层 ...

  7. apk签名

    参考:http://stackoverflow.com/questions/13578134/how-to-automate-keystore-generation-using-the-java-ke ...

  8. Java Bytecode Instructions List

    monic Opcode(in hex) Other bytes Stack[before]→[after] Description aaload 32   arrayref, index → val ...

  9. Backbone之旅——Model篇

    Backbone作为前端的MVC框架,把后端的设计思想带到前端,使前端代码更加清晰.可维护性大大提高 Backbone依赖于underscore.js和jquery,所以在使用backbone的时候一 ...

  10. C#的设计模式分为3大类23种

    创建型: 1. 单件模式(Singleton Pattern) 2. 抽象工厂(Abstract Factory) 3. 建造者模式(Builder) 4. 工厂方法模式(Factory Method ...