MDX问题,多个存在层次关系的维度表如何关联

sweetBug 2011-04-11 04:57:37

MDX语句是这样:

SELECT NON EMPTY {
[Measures].[sold amount]
} ON COLUMNS, NON EMPTY { (
[dim d_Date].[Full Date Alternate Key].[Full Date Alternate Key].ALLMEMBERS
* [dim d_prov].[prov_id].[prov_id].ALLMEMBERS
* [dim d_city].[city_id].[city_id].ALLMEMBERS
) }
FROM [TTSLPMRPT_MINOS]
where ([dim d_Date].[Date SID].&[2011022110])


其中,d_Date,dim d_country和dim d_prov分别为维度表时间,省和市。省与市有层次关系,市维度表中有一个prov_id为外键。
不过按上面的MDX写法,省与市好像做乘法了?应该如何关联这两个维度表呢,就像SQL一样:where d_prov.prov_id = d_city.prov_id?

求赐教~
...全文
265 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cj549224060 2012-10-12
  • 打赏
  • 举报
回复
回复一下
sweetBug 2011-05-08
  • 打赏
  • 举报
回复
谢谢各位大侠了,不好意思最近消失,未来得及结账!
zxhx 2011-04-17
  • 打赏
  • 举报
回复
*不是乘法,是笛卡尔积
你的mdx也没写对,语法错误
华芸智森 2011-04-15
  • 打赏
  • 举报
回复
省和市。省与市有层次关系,市维度表中有一个prov_id为外键。
===========
你的立方有问题.

1.省市应该放到一个地区表.
2.区分地区类型,在属性里,标注出.筛选时再过滤.
快溜 2011-04-12
  • 打赏
  • 举报
回复
有时间真得学学BI。
dawugui 2011-04-12
  • 打赏
  • 举报
回复
不懂,帮顶,学习,蹭分.
myccc456 2011-04-12
  • 打赏
  • 举报
回复
乘法或者用Crossjoin函数,相当于是笛卡尔积,在家nonempty函数, 就已经能到达你要的结果了。
1. jpivot加入其它应用中 解压jpivot.war 文件,在你的应用当中你需要下面的这些文件: /wcf/** /jpivot/** /WEB-INF/wcf/** /WEB-INF/jpivot/** /WEB-INF/lib/** 最后你还需要对比 jpivot.war 里的 web.xml 文件去修改你自己的 web.xml 文件。 2. 例子说明 一个Schema的xml文件,定义立方体;(feeSchema.xml) 一个jsp文件(fee.jsp),使用jpivot的标签(jp:mondrianQuery),写入多维查询表达式。 2.1. 数据库连接  直接用jdbc  在应用服务器中定义数据源 例子在tomcat中定义了数据源feeDS 2.2. 各种维度类型  一般维度 例子中定义了维度:[term].[所有终端] 按终端id统计缴费情况。  多level维度 例子中定义了维度:[agentTerm].[所有终端] 按代理商,终端两级统计缴费情况  有父子关系维度 例子中定义了维度:[area].[所有地区] 按组织机构级别统计缴费情况 在定义父子级别时,要指定parentColumn和nullParentValue 且要定义Closure,如果不定义,指标钻取的数据有问题。 Closure表针对维度表计算distance,Closure表的生产参见例子中的存储过程sp_zycreateorgclosure 例如: 3. Mondrian Schema详解 3.1. Schema Schema 定义了一个多维数据库。包含了一个逻辑模型,而这个逻辑模型的目的是为了书写 MDX 语言的查询语句。这个逻辑模型实际上提供了这几个概念: Cubes (立方体)、维度( Dimensions )、层次( Hierarchies )、级别( Levels )、和成员( Members )。而一个 schema 文件就是编辑这个 schema 的一个 xml 文件。在这个文件中形成逻辑模型和数据库物理模型的对应。 3.2. Cube 一个 Cube 是一系列维度 (Dimension) 和度量 (Measure) 的集合区域。在 Cube 中, Dimension 和 Measure 的共同地方就是共用一个事实表。 Cube 中的有以下几个属性: 属性名 含义 name Cube 的名字 caption 标题 , 在表示层显示的 cache 是否对 Cube 对应的实表用 mondrian 进行存储 , 默认为 true enabled 是布尔型的 , 如果是被激活 ,Cubes 就执行 , 否则就不予理睬,默认为 true Cube 里面有一个全局的标签定义了所用的事实表的表名 3.3. Dimension 他是一个层次( Hierarchies )的集合 , 维度一般有其相对应的维度表 . 他的组成是由层次( Hierarchies )而层次( Hierarchies )又是有级别( Level )组成 . 其属性如下: 属性名 含义 name Dimension 的名称 type 类型,有两个可选的类型: StandarDimension 和 TimeDimension ,默认为 StandardDimension caption 标题 , 在表示层显示的 UsagePrefix 加前缀 , 消除歧义 foreignKey 外键,对应事实表中的一个列,它通过 元素中的主键属性连接起来。 3.4. Hierarchy 你一定要指定其中的各种关系 , 如果没有指定 , 就默认 Hierarchy 里面装的是来自立方体中的真实表 . 属性如下: 属性名 含义 name Hierarchy 的名称,该值可以为空,为空时表示 Hirearchy 的名字和 Dimension 的名字相同。当一个 Dimension 有多个 Hierarchy 时,注意 name 值要唯一。 hasAll 布尔型的 , 决定是否包含全部的成员 member allMemberName 所有成员的名字 , 也就是总的标题 , 例如: allMemberName= “全部产品” allLevelName 所有级别的名字,它会覆盖其下所有的 Member 的 name 和所有的 Level 的 name 属性的值。 allMemberCaption 例如 : allMemberCaption= “全部产品”这个是在表示层显示的内容 PrimaryKey 通过主键来确定成员,该主键指的是成员表中的主键,该主键同时要与 Dimension 里设置的 foreignKey 属性对应的字段形成外键对应关系 primaryKeyTable 如果成员表不只一个,而是多个表通过 join 关系形成的,那么就要通过这个属性来指明 join 的这些表中,哪一个与 Dimension 里设置的 foreignKey 属性形成外键关系。通过该属性来指明主表 caption 标题 , 在表示层显示的 defaultMember memberReaderClass 设定一个成员读取器,默认情况下 Hierarchy 都是从关系型数据库里读取的,如果你的数据不在 RDBMS 里面的话,你可以通过自定义一个 member reader 来表现一个 Hierarchy 。 3.5. Level 级别 , 他是组成 Hierarchy 的部分。属性很多,并且是 schema 编写的关键,使用它可以构成一个结构树, Level 的先后顺序决定了 Level 在这棵树上的的位置,最顶层的 Level 位于树的第一级,依次类推。 Level 的属性如下: 属性名 含义 name 名称 table 该 Level 要使用的表名 column 用上面指定的表中某一列作为该 Level 的关键字 nameColumn 用来显示的时候使用,如果不定义,那么就采用上面的 column 的值来进行显示。 oridinalColumn 定义该 Level 上的成员的显示顺序,如果不指定,那么采用 column 的值。 parentColumn 在一个有父 - 子关系的 Hierarchy 当中,当前 Level 引用的是其父成员的列名。好比是一张部门表,在一张表里表现部门的上下级关系,一个是主键,肯定还有一个字段为连接到该主键的外键的列名,这里的 parentColumn 指的就是这个列名。 nullParentValue 如果当前的 Level 是有上下级关系(设置了 parentColumn 属性),如果该 Level 又处于顶级,我们需要将顶级的数据取出来,这里指的是位于顶级的父成员的值,有些数据库不支持 null, 那么也可以使用 ’0’ 或 ’-1’ 等,这就表示顶级的成员的父 ID 为 ’0’ 或为 ’-1’ 。 type 数据类型,默认值为 string 。当然还可以是 Numeric 、 Integer 、 Boolean 、 Date 等。 uniqueMembers 该属性用于优化产生的 SQL ,如果你知道这个级别和其父级别交叉后的值或者是维度表中给定的级别所有的值是唯一的,那么就可以设置该值为 true ,否则为 false 。 levelType 该 Level 的类型,默认为 regular (正常的),如果你在其 Dimension 属性 type 里选择了 TimeDimension 那么这里就可以选择 TimeYears 、 TimeQuarters 、 TimeMonth 、 TimeWeeds 、 TimeDays 。 hideMemberIf 在什么时候不隐藏该成员,可选的值有三个: Never 、 IfBlankName 、 IfParentName approxRowCount 该属性可以用来提高性能,可以通过指定一个数值以减少判断级别、层次、维度基数的时间,该属性在通过使用 XMLA 连接 Mondrian 很有用处。 caption 标题 , 在表示层显示的 captionColumn 用来显示标题的列 formatter 该属性定义了 Member.getCaption() 方法返回的动作值,这里需要是一个实现了 mondrian.olap.MemberFormatter 接口的类,用来对 Caption 地值进行格式化。 3.6. Join 对于一个 Hierarchy 来说,有两种方式为其指定:一种是直接通过一个 Table 标签指定;一种是通过 Join 将若干张表连接起来指定。一旦采用 Join 的话,那么就要在 Hierarchy 里的 primaryKeyTable 属性指定主表。 3.7. Measure Measure 就是我们要计算的数值,操作的核心。它的属性如下: 属性名 含义 name 名称 aggregator 要采用的计算函数 column 要计算的列名 formatString 计算结果的显示格式。 visible 是否可见 datatype 数据类型,默认为 Numeric formatter 采用类来对该 Measure 的值进行格式,具体参考 Level 的 formatter 属性。 caption 标题,用来显示时使用。 4. JPivot标签库使用详解 4.1. Introduce JPivot 是一套基于 Mondrian 的 OLAP 前端展现工具,它提供了一套标签库来解决的 OLAP 的展现层问题。 在一个 JSP 页面当中,如果要使用 JPivot 标签库,除了要配置相关的配置文件外,我们需要在 JSP 头的位置声明对 JPivot 标签库的引用,引用方法如下: <%@ taglib uri = "http://www.tonbeller.com/jpivot" prefix = "jp" %> JPivot 标签库包含以下几个标签: chart chooseQuery clickable destroyQuery mondrianQuery navitator print scalarQuery setParam table testQuery xmlaQuery 接下来我们将详细介绍这些标签的具体用法及相关参数的含义。 4.2. chart 创建一个图表组件,这个图表组件的标签不能直接产生可见输出,它必须通过 WCF 的渲染标签才行。 chart 标签的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID visible 否 boolean 是 用来设置该组件是否可见,当该属性为 false 时 WCF 标签半角不显示该组件。 role 否 String 是 Role 的名称,如: role=”tomcat” 就允许当前用户角色为 tomcat 的访问该控件, role=”!tomcat” 则就允许除角色为 tomcat 以外的所有的用户访问。 query 是 OlapModel 是 一个 mondrianQuery 标签的 ID 值 baseDisplayURL 否 String 是 显示图表的链接,链接的后面还要添加参数“ ?=filename=[ 临时图表文件的名称 ] ” controllerURL 否 String 是 链接到 JPivot Controller 的 URL ,该属性在一些复杂环境下比如 Portal 之类就很有用。 4.3. chooseQuery 从前面创建的若干个查询当中选择一个合适的查询(通过查询名称进行选择),例如: SELECT ... SELECT ... ... 它的属性比较简单,只有 id 和 queryName 两个,而且比较容易理解。 4.4. clickable 该标签的作用是给一个 dimension 或一个 level 里的所有的 members 加上超链,使得它们变的可以进行点击操作。生成的 URL 中包含这个 member 的唯一名称,这个标签必须要在一个 table 或一个 query 的标签里嵌套使用。 这个动作还依赖于该标签的 sessionParam 属性,如果该属性存在,那么参数值将在页面显示之前写到 com.tonbeller.jpivot.param.SessionParamPool 当中,如果不存在该属性,参数将会被编码到超链接当中。 例如: select .. from Sales 该标签的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 urlPattern 否 String 是 该属性已过时,使用 page 属性替代它。 page 否 String 是 目标页面的名称,该属性的值必须要以“ / ”开始,如果不设置,那么会采用当前页面的名称。 uniqueName 否 String 是 一个 dimension 或 hierarchy 或 level 的唯一名称,用来标识哪个 member 将可以点击。 menuLabel 否 String 是 如果多次定义 clickable ,那么它将通过一个右键来进行显示,这里的值就是右键菜单的名称。 sessionParam 否 String 是 参数名称,它将会被回写到 com.tonbeller.jpivot.param.SessionParamPool 当中。 propertyName 否 String 是 该属性如果存在,该 member 属性的值将会被带到 com.tonbeller.jpivot.param.Parameter 的 sqlValue 的属性当中。 propertyPrefix 否 String 是 如果存在该属性,多个 SessionParam 将会被创建,每一个 member 的名字的开始部分将采用该属性的值。 providerClass 否 String 是 如果存在该属性,这个类的实例将会从当前的 member 中获取 SessionParam 对象的实例,这里的类必须实现 com.tonbeller.jpivot.table.navi.ClickableMember.ParameterProvider 接口。 4.5. destroyQuery 该标签的主要作用是销毁所有的查询,它的用法如下: 它只有一个 ID 属性。 4.6. mondrianQuery 该标签的主要作用是让 mondrian 执行指定的查询,该标签需要指定一个 JDBC 的 datasource 或单独指定 JDBC 连接的各个属性从而可以让 mondrian 连接到指定的数据库。 它的用法如下: select {[Measures].[Unit Sales], [Measures].[Store Cost], [Measures].[Store Sales]} on columns, {[Product].[All Products]} ON rows from Sales where ([Time].[1997]) 它的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID jdbcDriver 否 String 是 要连接到目标数据库的驱动类名 jdbcUrl 否 String 是 目标数据库的 URL jdbcUser 否 String 是 登录数据库的用户名 jdbcPassword 否 String 是 登录数据库的密码 dataSource 否 String 是 可以连接到数据库的 JNDI 名称,如 jdbc/SampleDB ,当使用它时另外四个单独连接数据库的属性不可以再用。 catalogUri 是 String 是 Mondrian Schema 文件所在的路径,指定路径时需要从 web 应用的根开始,如 /WEB-INF/FoodMart.xml 。 role 否 String 是 指定角色,该角色的值来自 Mondrian Schema 里定义的角色。 dynResolver 否 String 是 指定一个用来解析 Mondrian Schema 里定义的动态变量的解析类。 connectionPooling 否 String 是 当该值为 false 时,将从连接池里阻止 Mondrian dynLocale 否 String 是 设置动态解析 Mondrian Schema 里的 Local dataSourceChangeListener 否 String 是 指定一个类用来检测 datasource 的变化。 queryName 否 String 是 这个属性允许保留多个查询,对于每一个查询,最后一个查询将会被存储下来,可以使用 chooseQuery 标签在查询间进行切换。 stackMode 否 boolean 是 如果设置为 false ,那么所有的查询将同时被处理;如果设置为 true ,那么将保持其原有的顺序,例如: 查询名称为 qn1 的创建后,标签就马上将其显示出来 ; 接下来创建 qn2 ,现在 stack 里有 qn1 和 qn2 , qn2 也将被显示出来。 4.7. navigator 创建一个导航组件,这个组件不会直接输出,它必须通过 WCF 的标签来 render 输出。 示例用法: 该标签的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID query 是 OlapModel 是 指定一个 mondrianQuery 标签的名称 visible 否 boolean 是 设置该组件是否可见,如果设置为 false 那么 WCF 的 render 标签将不会 render 该组件。 role 否 String 是 角色的名称,可以加前缀“!”,表示“除 … 角色之外”都可以访问该组件,否则就是只有该角色才能访问该组件。 4.8. print 创建一个打印控件,该控件不能直接输出,你必须创建 WCF form 来调用打印的 servlet 来生成 XLS/PDF 文件。 该标签只有一个 ID 属性。 4.9. scalarQuery 创建一个包含由单个单元格的组成的 OLAP 结果的会话属性,它的值由标签的属性提供。 示例用法: formattedValue="#{some.bean.otherProperty}" caption="Some Caption" /> 它的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID value 是 String 是 是一个 EL 的表达式,通过 EL 表达式来计算值,这里是一个数字。 formattedValue 否 String 是 用一个 EL 表达式来计算格式化后的值,是一个字符串 caption 否 String 是 用一个 EL 表达式来生成 caption 的值,这里是一个字符串 queryName 否 String 是 请参考 mondrianQuery 标签 stackMode 否 boolean 是 请参考 mondrianQuery 标签 4.10. selectProperties 创建一个选择属性的组件,该组件不会直接输出,必须要与 WCF 的 render 标签结合。 示例用法: 它的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID table 是 TableComponent 是 该属性用来指定一个表格组件。 visible 否 boolean 是 设置该组件是否可见,如果设置为 false 那么 WCF 组件将不会显示该组件。 role 否 String 是 指定角色,同样可以使用“!” 4.11. setParam 通过 get 或 post 或 session 里的值为 MDX 查询设置查询参数。示例用法: SELECT ... Parameter("Param01", ... WHERE ... mdxParam="Param01"/> or mdxParam="Param01"/> 它的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 query 是 OlapModel 是 指定一个 mondrianQuery 标签的名称 httpParam 否 String 是 http 参数的名称,如果存在该属性,那么它的值将会被告解析并设置到 mdx 查询的 parameter 当中 sessionParam 否 String 是 Session 的参数名称 mdxParam 是 String 是 MDX 的 parameter 的名称 4.12. table 创建一个 pivot 的表格组件,该组件要借助于 WCF 的 render 标签输出。 示例用法: 该标签的主要属性如下: 属性名 必须 数据类型 是否能动态计算指定 描述 id 是 String 是 标签的 ID visible 否 boolean 是 设置组件是否可见,如果为 false 那么 WCF 的标签将不会将其 render 。 role 否 String 是 可访问该组件的角度,支持“!”用法 query 是 OlapModel 是 指定一个 mondrianQuery 标签的名称 5. 多维查询表达式 5.1. 什么是 MDX MDX 的全称是 Mutil Dimensional Expressions ,是由 Microsoft , Hyperion 等公司研究多维查询表达式,是所有 OLAP 高级分析所采用的核心查询语言。 MDX 可以用来进行以下操作: 1. calculated members (计算成员) 2. Calculated Cells (计算单元) 3. Security Settion (安全设置) 4. Custom member formula ( 自定义函数 ) 5. Custom level rollup () 6. Actions (动作) 7. Named “ sets ” ( 命名集合 ) 8. Server side formatting (服务器数据格式化) 5.2. MDX 的基本结构 MDX 的基本结构有三种: Members 、 Tuple 、 Set 。 5.2.1. Members 指的是维度树上的一个节点,这里有一点需要指出,量度也是一个特殊的维度,所以对于普通维度上的 Member 可以有几下几种表示方法: [Customer] 或 [Time].[1996] 等,对于特殊的维度——量度而言,也可以表示一个 Member ,如: [Measures].[ unit sales] 等。 Member 的表示方法就是用中括号的形式,“ [……] ”。 5.2.2. Tuple Tuple :是由若干个 Members 组成,每一个维度上最多只能有一个 Member ,对于一个 Tuple 而言至少有一个维度,多则不限,同时对于没有列出来的那就表示为默认的 Member 。 Tuple 的表示方法是小括号“ () ”,因为其又有 Member 构成,所以通常的格式为“ ([…],[…][…],…) ”;示例: a) ([Regin ].[USA]) b) ([product].[ computers],[time].[2008]) 。 5.2.3. Sets 同一维度上若干个 Members 的集合,或者是若干个 Tuples 的集合,但这里有一个地方需要注意,那就是如果是若干个 Tuple 组成的集合是,各个 Tuple 里的 Member 之间存在着一定的对应关系。集合的表示方法用大括号“ {} ”,所以可能的表示方法为: a) {[time].[2008],[time].[2009],[time].[2000]} ,这里 Set 是由同一维度的若干个 Member 组成。 b) {([computer],[usa ]),([ mobile],[china])} ,这个 Set 是由两个 Tuples 组成,这里大家可以看到,在第一个 Tuple 当中,第一个 Member 是名为 computer 的产品,所以后面的 Tuple 的第一个 Member 也必须是一个产品,所以我们这里看到的是 mobile ,第一个 Tuple 里第二个 Member 是一个国家,所以第二个 Tuple 的第二个 Member 也必须是一个国家名,依次类推。 5.3. MDX 查询语句 一个标准的 MDX 查询语句就是由我们前面介绍的 MDX 的三个基本对象构成,也就是 Member 、 Tuple 、 Set 。 一个标准的 MDX 查询的语法如下: SELECT Set ON COLUMNS, Set ON ROWS FROM Cube WHERE Tuple 示例: SELECT {[time].[ 1997],[time].[1998]} ON COLUMNS, {([product].[drink],[customer].[gender].[F]),( [product].[food],[customer].[gender].[M])} ON ROWS FROM [Sales] WHERE ([Measures].[ StoreSales ]) 这个 MDX 查询就表示:查询时间为 1997 和 1998 两年的 drink 类产品,女消费者和 food 类产品男消费者的 Store Sales 。 5.4. MDX 表达式 5.4.1. children 它的作用是列出指定分类下的所有项,如 1. [product type].[food].children ,这就表示列出产品类型为 food 的所有产品。 2. [region ].[country].children ,这就表示列出所有的国家名称。 该函数不能用在 Tuple 中 5.4.2. CurrentMember 当前某个 Member ,举例: 某个产品销售额贡献度计算,对于某一个产品或一种类型的产品而言它的销售额贡献度指的是它的销售额与所有产品销售额的比值,此时,如果我们要用 MDX 来计算这个贡献度的值是可以采用 CurrentMember 来实现,如: 此时我们的 MDX 表达可以是: ([product].currentMember ,[ Measures].[stores sales]) / ([product].[ all products],[Measures].[stores sales]) 同时因为默认情况下指的就是 currentMember ,所以上面的 currentMember 可以去掉: ([Measures].[ stores sales]) / ([product].[ all products],[Measures].[stores sales]) 所有 MDX 表达式的写法是由若干个 Tuple 组成 ,比如上面的这个表达式就是由两个 Tuple 的相除构成。 5.4.3. prevMember 和 nextMember 这两个元素分别指的是当前 Member 的上一个 Member 和当前 Member 的下一个 Member 。 利用这两个元素我们可以来实现实际当中常见的同期比(前期比),所谓的同期比指的 是: (当前 member- 当前 member 的前一个 member ) / 当前 member 的前一个 member 对应到 MDX 表达式我们可以用 prevMember 和 nextMember 来实现,如: (([time].currentMember ,[ Measures].[store sales])-([time].prevMember ,[Measures].[storessales ])) / ([time].prevMember ,[ Measures].[store sales]) 当然因为 currentMember 可以省略,所以上面的写法也可以是: (([ Measures ].[store sales])-([time].prevMember ,[Measures].[storessales ])) / ([time].prevMember ,[ Measures].[store sales]) 5.4.4. Parents 、 FirstChild 、 Descendants 下面的这张图就显示一个树 这张图中 all 这个节点是 97 和 98 的 parents , 97 和 98 也是 all 的 children ,同时 97 是 all 的 firstChild 如果我们要取到 97 下的所有的月份,那么我们就需要用 Descendants 来实现,它的语法是: Descendants( [time].[97],month) ,这里的 month 是一个 level 的名称。所有它的格式为: Descendants([ 一个 Member], 一个 level 的名称 ) 比如在食品销售当中,我们要知道哪一类的食品更受消费者欢迎,这样我们需要只知道各类食品的销量,比如食物( food )、饮料 (drink) 等的具体销量 (unit sales) ,然后再计算出所有食品总的销量( total sales ) , 如果采用 MDX 我们可以很容易的实现,采用 MDX 后的计算哪种食品更受欢迎的表达式如下: ([food].currentMember ,[ Measures].[unit sales]) / ([food].currentMember.parent ,[ Measures].[total sales]) 因为 currentMember 可以省略,所以上面的写法又可以是: ( [ Measures].[unit sales]) / ([food].currentMember.parent ,[ Measures].[total sales]) 5.5. 参见MDX的基本语法及概念.pdf 6. 常见问题 6.1. MDX编辑器中文乱码  web.xml中添加过滤器 Set Character Encoding com.tonbeller.wcf.charset.CharsetFilter encoding UTF-8 Set Character Encoding /* 注意,该filter-mapping放在所有filter-mapping的最前面  jsp页面编码用UTF-8(testpage.jsp) 6.2. pdf中文显示“#” 1).在WEB-INF\jpivot\print目录下建立userconfig.xml文件。内容如下:(仅配置黑体,fontBaseDir属性我也没有配置,源码中有) 2). 下载Apache的FOP包,应用所需JAR包,生成simhei.xml。Java命令行为: java -cp D:\op\fop.jar;D:\op\avalon-framework-4 .2.0.jar;D:\op\commons-logging-1.0.4.jar;D:\op\commons-io-1.1.jar;D:\op\xmlgraph ics-commons-1.4.jar org.apache.fop.fonts.apps.TTFReader C:\WINDOWS\Fonts\simhei. ttf simhei.xml 3). 将simhei.xml,以及simhei.ttf文件放到WEB-INF\jpivot\print目录下。 4 ). 修改WEB-INF\jpivot\table目录下的fo_mdxtable.xsl文件,把所有的font-family对应成SimHei,(以SimHei开头)。 6.3. pdf格式修改(原格式行太宽) 修改jpivot\WebRoot\WEB-INF\jpivot\table\fo_mdxtable.xsl 中font-size,line-height,padding 6.4. 钻取数据的格式化 在利用jpivot钻取的时候,发现出来的数字数据都精确到了小数点后两位,我可不想所有数字都这么精确,连带出来的id值也被这样格式化了,悲惨! 我的解决方法:取消格式定义 找到wcf.jar,修改com.tonbeller.wfc.format.config.xml 删除double和nandouble的定义 6.5. mondrian 的志的配置 将log4j.xml放置到web-inf/classes下 文件内容如下: 6.6. schema workbench schema的编辑器,界面化编辑schema。 但不知道为什么,在我的本机上,在打开,新建schema文件,都非常慢。 可以到http://sourceforge.net/projects/mondrian/files/下载,最新版本psw-ce-3.2.1.13885 7. 参考资料 http://mondrian.pentaho.com/documentation/ mondrian的官方网站 http://jacky6024.javaeye.com/ 比较有用的中文资料
完整清晰 PDF 扫描文档 这个PDF文件是我花钱买来的,现在为了挣积分,拿出来与大家分享!! SQL Server 2008商业智能完美解决方案 1/3 SQL Server 2008 2010 商业智能完美解决方案 作者:兰吉特(Lynn Langit) 出版社:人民邮电出版社; 第1版 (2010年8月1日) ISBN:7115231117, 9787115231116 页码:545 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》: 利用Microsoft SQL Server 2008实现灵活的商业智能解决方案使用Microsoft 完善的BI工具构建B0解决方案的必备指南,使用SQLServer 2008设计、开发和部署更有效的数据集成、报表、分析解决方案所需的权威操作指南。不论是商业智能(B0)编程的新手还是老手,都会从中受益。通过专家团队的真实示例和高明见解,读者能够掌握构建商业智能解决方案的概念、工具和技术,从而真正提供客户所需的智能性商业价值。 《SQL Server 2008商业智能完美解决方案》研究如下内容: 管理开发生命周期,打造BI团队; 深入研究SQL Servet Analysis Services、Integration Services和 Reporting Services; 使用Business Intelligence Development Studio(BIDS); 编写对销售数据进行分级、排序和深化的查询; 开发提取、转换、加载(ETL)解决方案; 添加源代码控制系统; 通过加密和凭据保护部署的包; 用MDX和DMX查询设计器构建基于OLAP多维数据集和数据挖掘模 型的报表; 用NET代码建立并实现自定义对象; 在Microsoft Office Excel和Office SharePoint Server中查看报表。 微软公司US-SQL Analysis Services 首席开发经理Donaod Farmer倾力作序 内容提要 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》介绍如何使用Microsoft SQL Server 2008开发商业智能(BI)解决方案。《SQL Server 2008商业智能完美解决方案》共分为4部分。第一部分阐述了商业智能基础、可视化商业智能结果、构建有效的商业智能流程、商业智能解决方案的物理架构、面向架构师的OLAP逻辑设计概念;第二部分面向Analysis Services开发人员,详细介绍了如何使用BIDS以及BIDS的所有功能,提供了使用SSAS构建OLAP多维数据集和数据挖掘模型的指南;第三部分面向Integration Services开发人员,详细介绍如何使用SSIS开发ETL软件包,利用ETL包加载OLAP多维数据集和数据挖掘结构;第四部分详细介绍了SSRS的架构,以及Excel、Visio或Office SharePoint Server 2007作为BI客户端的实现。 《SQL Server 2008商业智能完美解决方案》结合专家团队提供的实际示例和丰富经验进行介绍,让读者能够直观轻松地掌握构建商业智能(BI)解决方案的概念、工具和技术,是一本不可多得的商业智能开发参考指南。无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分 面向商业决策者和架构师的商业智能 第1章 商业智能基础 3 1.1 商业智能和数据建模 3 1.2 OLTP和OLAP 4 1.2.1 联机事务处理 4 1.2.2 联机分析处理 6 1.3 常用BI术语 9 1.3.1 数据仓库 9 1.3.2 数据市场 10 1.3.3 多维数据集 11 1.3.4 决策支持系统 11 1.3.5 数据挖掘系统 11 1.3.6 提取、转换和加载系统 12 1.3.7 报表处理系统 12 1.3.8 关键绩效指标 12 1.4 Microsoft BI解决方案的核心组件 12 1.4.1 SQL Server 2008 Analysis Services 13 1.4.2 SQL
SQL Server 2008商业智能完美解决方案 3/3 SQL Server 2008 2010 商业智能完美解决方案 作者:兰吉特(Lynn Langit) 出版社:人民邮电出版社; 第1版 (2010年8月1日) ISBN:7115231117, 9787115231116 页码:545 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》: 利用Microsoft SQL Server 2008实现灵活的商业智能解决方案使用Microsoft 完善的BI工具构建B0解决方案的必备指南,使用SQLServer 2008设计、开发和部署更有效的数据集成、报表、分析解决方案所需的权威操作指南。不论是商业智能(B0)编程的新手还是老手,都会从中受益。通过专家团队的真实示例和高明见解,读者能够掌握构建商业智能解决方案的概念、工具和技术,从而真正提供客户所需的智能性商业价值。 《SQL Server 2008商业智能完美解决方案》研究如下内容: 管理开发生命周期,打造BI团队; 深入研究SQL Servet Analysis Services、Integration Services和 Reporting Services; 使用Business Intelligence Development Studio(BIDS); 编写对销售数据进行分级、排序和深化的查询; 开发提取、转换、加载(ETL)解决方案; 添加源代码控制系统; 通过加密和凭据保护部署的包; 用MDX和DMX查询设计器构建基于OLAP多维数据集和数据挖掘模 型的报表; 用NET代码建立并实现自定义对象; 在Microsoft Office Excel和Office SharePoint Server中查看报表。 微软公司US-SQL Analysis Services 首席开发经理Donaod Farmer倾力作序 内容提要 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》介绍如何使用Microsoft SQL Server 2008开发商业智能(BI)解决方案。《SQL Server 2008商业智能完美解决方案》共分为4部分。第一部分阐述了商业智能基础、可视化商业智能结果、构建有效的商业智能流程、商业智能解决方案的物理架构、面向架构师的OLAP逻辑设计概念;第二部分面向Analysis Services开发人员,详细介绍了如何使用BIDS以及BIDS的所有功能,提供了使用SSAS构建OLAP多维数据集和数据挖掘模型的指南;第三部分面向Integration Services开发人员,详细介绍如何使用SSIS开发ETL软件包,利用ETL包加载OLAP多维数据集和数据挖掘结构;第四部分详细介绍了SSRS的架构,以及Excel、Visio或Office SharePoint Server 2007作为BI客户端的实现。 《SQL Server 2008商业智能完美解决方案》结合专家团队提供的实际示例和丰富经验进行介绍,让读者能够直观轻松地掌握构建商业智能(BI)解决方案的概念、工具和技术,是一本不可多得的商业智能开发参考指南。无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分 面向商业决策者和架构师的商业智能 第1章 商业智能基础 3 1.1 商业智能和数据建模 3 1.2 OLTP和OLAP 4 1.2.1 联机事务处理 4 1.2.2 联机分析处理 6 1.3 常用BI术语 9 1.3.1 数据仓库 9 1.3.2 数据市场 10 1.3.3 多维数据集 11 1.3.4 决策支持系统 11 1.3.5 数据挖掘系统 11 1.3.6 提取、转换和加载系统 12 1.3.7 报表处理系统 12 1.3.8 关键绩效指标 12 1.4 Microsoft BI解决方案的核心组件 12 1.4.1 SQL Server 2008 Analysis Services 13 1.4.2 SQL Server 2008 Reporting Services 15 1.4.3 SQL Server 2008 15 1.4.4 SQL Server 2008 Integration Services 15 1.5 Microsoft BI解决方案的可选组件 17 1.6 BI解决方案中使用的查询语言 18 1.6.1 MDX 18 1.6.2 DMX 19 1.6.3 XMLA 19 1.6.4 RDL 19 1.7 小结 19 第2章 商业智能结果可视化 21 2.1 将业务案例与BI解决方案对应起来 21 2.1.1 BI范围十大问题 22 2.1.2 BI解决方案的组成部分 23 2.2 从用户的角度理解商业智能 26 2.2.1 用Excel 2007演示BI的功能 28 2.2.2 通过Excel外接程序了解数据挖掘 35 2.2.3 使用Excel 2007查看数据挖掘结构 36 2.3 完整BI解决方案的元素 39 2.3.1 报表——确定谁将使用解决方案 39 2.3.2 ETL——实现解决方案的基础 40 2.3.3 数据挖掘——不可或缺 40 2.4 常见的业务挑战和BI解决方案 42 2.5 衡量BI解决方案的ROI 43 2.6 小结 45 第3章 构建有效的商业智能流程 46 3.1 BI项目的软件开发生命周期 46 3.1.1 Microsoft Solution Framework 47 3.1.2 Microsoft Solution Framework for Agile Software Development 48 3.1.3 将MSF用于BI项目 49 3.1.4 Microsoft Solution Framework的阶段和可交付成果 49 3.2 BI项目需要的技能 53 3.2.1 必备技能 54 3.2.2 可选技能 55 3.3 建立团队 57 3.4 小结 62 第4章 商业智能解决方案的物理架构 63 4.1 物理基础结构更改的规划 63 4.1.1 创建准确的基线调查 63 4.1.2 评估当前的服务级别协议 64 4.2 确定服务器的最优数量和最佳位置 65 4.2.1 物理服务器的考虑 67 4.2.2 逻辑服务器和服务的考虑 68 4.3 理解安全需求 70 4.4 备份和还原 78 4.4.1 备份SSAS 78 4.4.2 备份SSIS 79 4.4.3 备份SSRS 79 4.5 审核与合规 79 4.6 源代码控制 82 4.7 小结 83 第5章 面向架构的OLAP逻辑设计概念 84 5.1 设计基本的OLAP多维数据集 84 5.1.1 星形架构 85 5.1.2 反规范化 91 5.1.3 回到星形 91 5.1.4 其他设计技巧 96 5.1.5 雪花维度建模 97 5.1.6 维度建模补充 100 5.1.7 理解事实(度量)建模 105 5.1.8 BI建模的其他考虑 107 5.2 小结 108 第二部分 Microsoft SQL Server 2008 Analysis Services开发人员指南 第6章 理解SSMS和SQL Server Profiler中的SSAS 111 6.1 SQL Server Analysis Services的核心工具 111 6.1.1 基线服务配置 114 6.1.2 SSMS中的SSAS 115 6.1.3 如何查询SSAS对象 124 6.1.4 使用MDX模板 127 6.1.5 使用DMX模板 130 6.1.6 使用XMLA模板 131 6.1.7 SSMS小结 132 6.2 小结 132 第7章 用BIDS设计OLAP多维数据集 133 7.1 使用BIDS 133 7.2 在“解决方案资源管理器”中工作 135 7.2.1 Analysis Services中的数据源 137 7.2.2 数据源视图 139 7.2.3 Analysis Services中的角色 142 7.2.4 在Analysis Services对象上使用编译后的程序集 143 7.3 用BIDS构建OLAP多维数据集 144 7.4 理解维度 149 7.4.1 属性层次结构 150 7.4.2 属性关系 151 7.4.3 翻译 153 7.5 使用维度 154 7.5.1 度量值组 154 7.5.2 超越星形维度 157 7.6 构建第一个OLAP多维数据集 160 7.6.1 选择度量值组 160 7.6.2 增加维度 160 7.7 小结 164 第8章 优化多维数据集和维度 165 8.1 优化第一个OLAP多维数据集 165 8.1.1 翻译和透视 165 8.1.2 关键绩效指标 167 8.1.3 操作 171 8.1.4 计算(MDX脚本或计算成员) 176 8.2 使用多维数据集和维度属性 179 8.2.1 时间智能 181 8.2.2 SCOPE关键字 181 8.2.3 账户智能和一元运算符定义 182 8.2.4 其他向导选项 185 8.2.5 货币换算 185 8.3 高级多维数据集和维度属性 188 8.4 小结 189 第9章 处理多维数据集和维度 190 9.1 构建、处理和部署OLAP多维数据集 190 9.1.1 区分数据和元数据 191 9.1.2 在断开环境下工作 191 9.1.3 在联机环境下工作 193 9.1.4 理解聚合 193 9.2 分区 194 9.2.1 选择存储模式:MOLAP、HOLAP和ROLAP 196 9.2.2 OLTP表的分区 198 9.2.3 其他OLAP分区配置 199 9.3 实现聚合 199 9.3.1 聚合设计向导 200 9.3.2 基于使用情况的优化向导 202 9.3.3 SQL Server Profiler 203 9.3.4 聚合设计器:高级视图 204 9.4 用MOLAP、HOLAP或ROLAP实现高级存储 205 9.5 主动缓存 206 9.5.1 主动缓存的通知设置 208 9.5.2 主动缓存调优 208 9.5.3 ROLAP维度 209 9.5.4 链接 210 9.5.5 写回 210 9.6 多维数据集和维度处理选项 212 9.7 小结 215 第10章 MDX简介 216 10.1 MDX的重要性 216 10.2 编写第一个MDX查询 217 10.2.1 MDX对象名称 218 10.2.2 MDX语法的其他元素 218 10.3 MDX核心函数 220 10.4 筛选MDX结果集 226 10.5 计算成员和命名集合 228 10.6 TopCount函数 230 10.7 Rank函数和组合 232 10.8 Head和Tail函数 235 10.9 MDX层次结构函数 236 10.10 日期函数 239 10.10.1 结合使用聚合和日期函数 242 10.10.2 关于查询优化 243 10.11 小结 244 第11章 高级MDX 245 11.1 查询维度属性 245 11.2 从季节角度查看日期维度和MDX 248 11.3 创建持久计算成员 249 11.3.1 在BIDS中创建持久计算成员 249 11.3.2 用MDX脚本创建计算成员 250 11.4 使用IIf 251 11.5 关于命名集 252 11.6 关于脚本 255 11.7 理解SOLVE_ORDER 257 11.8 创建关键绩效指标 258 11.8.1 编程创建KPI 261 11.8.2 KPI的其他提示 262 11.9 在SSRS和PerformancePoint Server上使用MDX 262 11.9.1 在SSRS 2008中使用MDX 262 11.9.2 在PerformancePoint Server 2007上使用MDX 264 11.10 小结 267 第12章 理解数据挖掘结构 268 12.1 审核业务场景 268 12.2 使用BIDS数据挖掘界面 271 12.2.1 理解数据类型和内容类型 272 12.2.2 设置高级数据属性 274 12.2.3 选择数据挖掘模型 275 12.2.4 选择最合适的挖掘模型查看器 278 12.2.5 挖掘准确性图表和预测 281 12.3 数据挖掘算法 284 12.3.1 Microsoft朴素贝叶斯 284 12.3.2 Microsoft决策树算法 288 12.3.3 Microsoft线性回归算法 290 12.3.4 Microsoft时间序列算法 290 12.3.5 Microsoft聚类算法 292 12.3.6 Microsoft序列聚类 294 12.3.7 Microsoft关联算法 295 12.3.8 Microsoft神经网络算法 299 12.3.9 Microsoft逻辑回归 300 12.4 数据挖掘的艺术 301 12.5 小结 301 第13章 实现数据挖掘结构 302 13.1 实现CRISP-DM生命周期模型 302 13.2 用BIDS构建数据挖掘结构 303 13.3 用BIDS增加数据挖掘模型 305 13.4 处理挖掘模型 308 13.5 验证挖掘模型 310 13.5.1 提升图 310 13.5.2 利润图 312 13.5.3 分类矩阵 313 13.5.4 交叉验证 315 13.6 数据挖掘预测查询 316 13.6.1 DMX预测查询 318 13.6.2 DMX预测函数 320 13.7 数据挖掘和Integration Services 322 13.8 数据挖掘对象的处理 324 13.9 数据挖掘客户端 326 13.10 小结 326 第三部分 Microsoft SQL Server 2008 Integration Services开发人员指南 第14章 Microsoft SQL Server 2008 Integration Services的架构组件 329 14.1 Integration Services架构概述 329 14.2 Integration Services包 331 14.3 Integration Services对象模型和组件 334 14.3.1 控制流 335 14.3.2 数据流 335 14.3.3 变量 337 14.3.4 表达式 338 14.3.5 连接管理器 339 14.3.6 事件处理程序和错误处理 340 14.4 Integration Services运行时 341 14.5 Integration Services数据流引擎 342 14.5.1 数据流缓冲区 342 14.5.2 同步数据流输出 346 14.5.3 异步数据流输出 346 14.6 日志提供程序 346 14.7 部署Integration Services包 347 14.7.1 包配置 347 14.7.2 包部署选项 348 14.8 小结 348 第15章 用Business Intelligence Development Studio创建Microsoft SQL Server 2008 Integration Services包 349 15.1 Visual Studio 2008中的Integration Services 349 15.1.1 使用Integration Services项目模板创建新SSIS项目 350 15.1.2 在“解决方案资源管理器”中查看SSIS项目 351 15.1.3 使用SSIS包设计器 352 15.1.4 使用SSIS工具箱 353 15.1.5 SSIS菜单选项 354 15.2 连接管理器 355 15.2.1 标准数据库连接管理器 355 15.2.2 其他类型的连接管理器 356 15.3 控制流 356 15.3.1 控制流任务 358 15.3.2 控制流容器 360 15.3.3 优先约束 360 15.4 数据流 362 15.4.1 数据流源组件 363 15.4.2 目标组件 364 15.4.3 转换组件 364 15.4.4 Integration Services数据查看器 366 15.5 变量 367 15.5.1 “变量”窗口 367 15.5.2 变量属性 368 15.5.3 系统变量 369 15.6 表达式 369 15.7 小结 371 第16章 Microsoft SQL Server 2008 Integration Services的高级功能 372 16.1 Integration Services中的错误处理 372 16.2 SSIS中的事件、日志、调试和事务 373 16.3 日志记录和事件 374 16.4 调试Integration Services包 377 16.5 检查点和事务 378 16.6 设计Integration Services包的最佳实践 380 16.7 数据事件探查 381 16.8 小结 384 第17章 商业智能解决方案中的Microsoft SQL Server 2008 Integration Services包 385 17.1 商业智能的ETL 385 17.2 加载OLAP多维数据集 385 17.2.1 使用Integration Services检测数据质量 386 17.2.2 转换源数据 388 17.2.3 使用中间服务器 388 17.2.4 数据沿袭 392 17.3 转移到星形架构加载 393 17.3.1 加载维度表 393 17.3.2 加载事实数据表 394 17.4 更新 397 17.4.1 事实数据表更新 398 17.4.2 维度表更新 398 17.5 数据挖掘的ETL 399 17.5.1 初始加载 399 17.5.2 模型定型 400 17.5.3 数据挖掘查询 401 17.6 小结 402 第18章 在Microsoft SQL Server 2008 Integration Services中部署和管理解决方案 403 18.1 Integration Services中的解决方案和项目结构 403 18.2 源代码控制 403 18.3 部署问题 407 18.3.1 包配置 409 18.3.2 复制文件部署 411 18.3.3 BIDS部署 412 18.3.4 使用部署实用工具部署 414 18.4 SQL Server代理和集成服务 416 18.4.1 SSIS包安全性介绍 416 18.4.2 处理敏感数据和代理执行账户 419 18.4.3 安全性:两个规则 420 18.5 SSIS服务 420 18.6 小结 421 第19章 扩展和集成SQL Server 2008 Integration Services 422 19.1 SSIS脚本介绍 422 19.2 Visual Studio Tools for Applications 423 19.3 脚本任务 423 19.3.1 Dts对象 425 19.3.2 调试脚本任务 426 19.4 脚本组件 426 19.4.1 ComponentMetaData属性 431 19.4.2 源、转换和目标 432 19.4.3 调试脚本组件 436 19.5 自定义SSIS任务和组件开发概述 436 19.5.1 控制流任务 439 19.5.2 数据流组件 440 19.5.3 其他组件 440 19.6 自定义应用程序中的SSIS集成概述 442 19.7 小结 444 第四部分 Microsoft SQL Server Reporting Services及商业智能的其他客户端界面 第20章 用SQL Server 2008 Reporting Services创建报表 447 20.1 了解Reporting Services的架构 447 20.2 安装和配置Reporting Services 449 20.2.1 HTTP侦听器 451 20.2.2 报表管理器 451 20.2.3 报表服务器Web服务 451 20.2.4 身份验证 452 20.2.5 后台处理(作业管理器) 453 20.3 使用BIDS创建报表 453 20.3.1 其他类型的报表 460 20.3.2 报表示例 460 20.4 部署报表 461 20.5 小结 462 第21章 创建SQL Server 2008 Reporting Services报表 463 21.1 将查询设计器用于Analysis Services 463 21.1.1 MDX查询设计器 464 21.1.2 在查询中设置参数 466 21.1.3 DMX查询设计器 467 21.1.4 在BIDS中使用报表设计器 469 21.2 理解报表项 471 21.2.1 列表和矩形报表项 471 21.2.2 Tablix数据区域 472 21.3 使用报表生成器 474 21.4 小结 477 第22章 高级SQL Sever 2008 Reporting Services 478 22.1 向SSRS报表添加自定义代码 478 22.2 在Word或Excel 2007中查看报表 480 22.3 URL访问 480 22.4 嵌入自定义ReportViewer控件 481 22.5 关于报表参数 485 22.6 关于安全凭据 485 22.7 关于SOAP API 486 22.8 部署——可伸缩性和安全性 490 22.8.1 性能和可伸缩性 490 22.8.2 高级内存管理 491 22.8.3 扩展 492 22.9 管理脚本 493 22.10 小结 494 第23章 用Microsoft Excel 2007作为OLAP多维数据集客户端 495 23.1 使用数据连接向导 495 23.2 使用“导入数据”对话框 497 23.3 理解“数据透视表”界面 497 23.4 创建示例数据透视表 499 23.5 脱机OLAP 501 23.6 Excel OLAP函数 502 23.7 扩展Excel 502 23.8 小结 503 第24章 用Microsoft Office 2007作为数据挖掘客户端 504 24.1 安装数据挖掘外接程序 504 24.2 数据挖掘和Excel 2007的集成 505 24.2.1 使用表分析工具组 506 24.2.2 在Excel 2007中使用“数据挖掘”选项卡 514 24.2.3 “管理”和“模型用法” 515 24.2.4 “数据准备”组 517 24.2.5 “数据建模”组 519 24.2.6 “准确性和验证”组 522 24.3 Visio 2007中的数据挖掘集成 523 24.4 客户端可视化 527 24.5 云形图中的数据挖掘 528 24.6 小结 528 第25章 SQL Server商业智能和Microsoft Office SharePoint Server 2007 529 25.1 Excel Services 529 25.1.1 Excel Services的基本架构 530 25.1.2 Excel工作表的永久性 531 25.1.3 Excel Services工作表的介绍性示例 531 25.1.4 发布参数化Excel工作表 533 25.1.5 Excel Services:Web Services API 535 25.1.6 实际的Excel Services示例 536 25.2 SQL Server Reporting Services与Office SharePoint Server 2007 538 25.2.1 使用Office SharePoint Server 2007配置SQL Server Reporting Services 539 25.2.2 创建并部署一个报表 539 25.2.3 在Office SharePoint Server 2007中使用报表:本机模式 541 25.2.4 在Office SharePoint Server 2007中使用报表:SharePoint集成模式 542 25.2.5 使用报告中心模板 544 25.3 PerformancePoint Server 545 25.4 小结 545 作者介绍 -------------------------------------------------------------------------------- 作者:(美国)兰吉特(Lynn Langit) (美国)Kevin S.Goff (美国)Davide Mauri 等 译者:张猛 杨越 朗亚妹 等 Lynn Langit,MicrosoftMSDN团队的一位开发人员讲师。在加入微软公司之前,Lynn创办了一家提供B0解决方案的开发公司,并担任首席架构师。她拥有很多Microsoft认证,包括MCITP、MCSD、MCDBA和MCT。 Kevin S,Goff,Microsoft MVP和培训师,还是Microsoft金牌认证合作伙伴项目的BI实践负责人。拥有MCP、MCAD、MCDBA和MCT认证。 Davide Mauri,Microsoft MVP,他从65版起就一直使用SQL Server。Sahil Malik咨询师和培训师,多年的Microsoft MVP和INETA发言人。 John Welch ,crosoft MVP,一家专攻BI解决方案的咨询公司的首席架构师。 -------------------------------------------------------------------------------- 9.5.4 链接 在准备处理多维数据集的时候,还有另外两个配置选项和功能需要考虑,即链接对象和写回.我们还要研究有关错误处理的设置(在“多维数据集和维度处理选项”一节),因为根据业务需求不同,这些配置也很重要,而且它们的配置值会影响多维数据集的处理时间。我们先从链接对象开始。 链接对象是需要与当前操作的SSAS数据库相关联的、来自其他SSAS数据库(Analysis Services 2008或Analysis Services 2005)的SSAS对象,如度量值组或维度。链接对象也可以包含KPI、操作和计算。链接对象选项可以用来克服SSAS 2008一个多维数据集只能基于一个数据源视图的局限性。它还可以实现某种伸缩性,因为可以使用多个服务器提供数据查询。 SSAS中使用链接对象的功能默认是禁用的。如果想使用这个选项,需要在SSMS中启用它,需将SSMS连接到SSAS,在SSAS服务器实例上单击右键,选择“属性”选项,然后启用链接。
SQL Server 2008商业智能完美解决方案 2/3 SQL Server 2008 2010 商业智能完美解决方案 作者:兰吉特(Lynn Langit) 出版社:人民邮电出版社; 第1版 (2010年8月1日) ISBN:7115231117, 9787115231116 页码:545 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》: 利用Microsoft SQL Server 2008实现灵活的商业智能解决方案使用Microsoft 完善的BI工具构建B0解决方案的必备指南,使用SQLServer 2008设计、开发和部署更有效的数据集成、报表、分析解决方案所需的权威操作指南。不论是商业智能(B0)编程的新手还是老手,都会从中受益。通过专家团队的真实示例和高明见解,读者能够掌握构建商业智能解决方案的概念、工具和技术,从而真正提供客户所需的智能性商业价值。 《SQL Server 2008商业智能完美解决方案》研究如下内容: 管理开发生命周期,打造BI团队; 深入研究SQL Servet Analysis Services、Integration Services和 Reporting Services; 使用Business Intelligence Development Studio(BIDS); 编写对销售数据进行分级、排序和深化的查询; 开发提取、转换、加载(ETL)解决方案; 添加源代码控制系统; 通过加密和凭据保护部署的包; 用MDX和DMX查询设计器构建基于OLAP多维数据集和数据挖掘模 型的报表; 用NET代码建立并实现自定义对象; 在Microsoft Office Excel和Office SharePoint Server中查看报表。 微软公司US-SQL Analysis Services 首席开发经理Donaod Farmer倾力作序 内容提要 -------------------------------------------------------------------------------- 《SQL Server 2008商业智能完美解决方案》介绍如何使用Microsoft SQL Server 2008开发商业智能(BI)解决方案。《SQL Server 2008商业智能完美解决方案》共分为4部分。第一部分阐述了商业智能基础、可视化商业智能结果、构建有效的商业智能流程、商业智能解决方案的物理架构、面向架构师的OLAP逻辑设计概念;第二部分面向Analysis Services开发人员,详细介绍了如何使用BIDS以及BIDS的所有功能,提供了使用SSAS构建OLAP多维数据集和数据挖掘模型的指南;第三部分面向Integration Services开发人员,详细介绍如何使用SSIS开发ETL软件包,利用ETL包加载OLAP多维数据集和数据挖掘结构;第四部分详细介绍了SSRS的架构,以及Excel、Visio或Office SharePoint Server 2007作为BI客户端的实现。 《SQL Server 2008商业智能完美解决方案》结合专家团队提供的实际示例和丰富经验进行介绍,让读者能够直观轻松地掌握构建商业智能(BI)解决方案的概念、工具和技术,是一本不可多得的商业智能开发参考指南。无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分 面向商业决策者和架构师的商业智能 第1章 商业智能基础 3 1.1 商业智能和数据建模 3 1.2 OLTP和OLAP 4 1.2.1 联机事务处理 4 1.2.2 联机分析处理 6 1.3 常用BI术语 9 1.3.1 数据仓库 9 1.3.2 数据市场 10 1.3.3 多维数据集 11 1.3.4 决策支持系统 11 1.3.5 数据挖掘系统 11 1.3.6 提取、转换和加载系统 12 1.3.7 报表处理系统 12 1.3.8 关键绩效指标 12 1.4 Microsoft BI解决方案的核心组件 12 1.4.1 SQL Server 2008 Analysis Services 13 1.4.2 SQL Server 2008 Reporting Services 15 1.4.3 SQL Ser

591

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧