1
推荐
1492
阅读

【老贝伏枥】Kimball多维模型的四大误解

  很久没看模型方面的理论知识,最近3年在互联网公司琢磨前行,遇到了很多坑和自我否定或迷惑的状态。就多维模型来说,被传统行业洗礼,还有误人子弟的网上文章和CUBE工具,把kimball带入了一个万劫不复的误区。我是幸运的,而且逃离了这个误区。接下来讲解一下我亲身经历的(Raph总结的)四大误区:一、维度模型只包...

发表了文章 • 2020-07-21 22:51 • 0 条评论

0
推荐
3226
阅读

2.5.2 创建DMR模型(续)

2.5.2.2 Measure Dimension  度量维度是一个事实数据的逻辑集合,用于实现OLAP类型的分析查询,并在一定范围关系内关联到常规维度。在创建度量维度之前,建模者应该已经组织了一个以事实表为中心、维度表围绕的星型模式组。我们以如下实例作为Demo,我们在上一文章里知道了如何创建常规维度,接下来将基于 Sales ta...

发表了文章 • 2015-09-28 11:21 • 0 条评论

0
推荐
3189
阅读

2.5.2 创建DMR模型

2.5.2 创建DMR模型  创建DMR模型,可以在关系型数据源基础上实现OLAP风格的查询模式,如旋转、钻取和OLAP函数等。在此一般建议建模者基于已完成的星型模式的关系型模型,从而建立常规维度(Regular Dimensions)和度量维度(Measure Dimensions)。DMR模型的三要素如下,现在我们依次来了解并动手开发:2.5.2.1 Regular...

发表了文章 • 2015-09-28 11:19 • 0 条评论

0
推荐
4025
阅读

2.5 初识DMR(2.5.1.疑难解答)

2.5.1.疑难解答在开始DMR模型开发之前,我们先了解论坛会员经常关注和疑惑的三个问题:Q1、什么是DMR模型?  英文全称为"Dimensional modeling of relational",也就是基于关系型的维度化建模,属于ROLAP概念范畴。在Framework Manager中,引入关系型数据源后即可直接建立多个带层次结构和级别的维度及带多个度量指...

发表了文章 • 2015-09-28 11:17 • 0 条评论

0
推荐
3179
阅读

2.4 剖析Query Macro的函数和应用(续)

2.3、有提示输入的变量使用方法  通过引用查询宏,我们可以为FM模型查询主题创建强制或可选带参数值提示。这两个查询宏就是大家广为熟悉的prompt和promptmany。前者为单个值提示,后者为多个值提示。这俩宏可以被引用到查询主题的SQL语句的任何位置。当宏被引入到一个表达式中,如计算项,则必须指定数据类型,默认...

发表了文章 • 2015-09-28 11:14 • 0 条评论

0
推荐
2717
阅读

2.4 剖析Query Macro的函数和应用

一、Macro介绍  宏作为代码片段可以插入在定义查询语句的任何地方,如字段、过滤器甚至是表名称,亦可引用session参数、参数MAP,参数值在运行查询之前输入或取当前session值。宏可以用于以下不同方式:  1、插入SQL语句,Select * from Country where Country.Name = #$myMap{$runLocale}#  2、为基于存...

发表了文章 • 2015-09-28 11:13 • 0 条评论

0
推荐
2690
阅读

2.3.9.2 Parameter Map

 Parameter Map即参数映射,用于创建带条件查询的查询主题,如动态字段、动态过滤值,当报表运行时可切换不同的条件值。和数据表下拉查询类似,每一个参数映射包含一个key值作为唯一标识符,一个value值作为显示属性。我们可人工自定义输入key,value的匹配值列表,亦可基于模型中已存在的查询项作为参数映射值。&nb...

发表了文章 • 2015-09-28 11:09 • 0 条评论

0
推荐
3297
阅读

2.3.9.1 Session Parameters(会话变量)

会话参数是FM当前会话变量,如用户名、邮箱、邮政编码、语言区域都是会话参数。会话参数包含两种:1、环境变量:存储在Content Manager,默认情况下下列会话参数将会出现在Framework Manger里,点击FM-->Project-->Session Parameters,如下图所示:建模设计阶段,以下参数显示的是建模者所在的区域;运行报表时,...

发表了文章 • 2015-09-28 11:07 • 0 条评论

0
推荐
2534
阅读

2.3.8 组织模型

有人说如果不组织模型就直接发布使用,那该模型能否被投入使用呢?答案当然是肯定的,该工作就好比文档排版。组织你的模型能让使用模型的用户更容易的懂得模型中的元数据含义。组织模型工作可以应用于建模工作的任何阶段,使得后期有科学的管理和维护。一般情况下,我们推荐在规模较大的模型中创建几个视图、布局层、合...

发表了文章 • 2015-09-28 11:05 • 0 条评论

0
推荐
2978
阅读

2.3.7.2 添加filters(过滤器)

1、filter  作为表达式形式指定检索记录行数或实例必须满足的条件,适用于Dimension,query subject,report。Filter作为boolean类型只返回 Ture 或 False,返回True则说明条件符合规则且能限制返回的记录行数。如 'in_range' 函数可以检索指定某个时间段内引进的产品信息,语法如下:[Go_Sales].[Products].[Introdu...

发表了文章 • 2015-09-28 11:00 • 0 条评论

0
推荐
2583
阅读

2.3.7添加业务准则

建模者可为模型中的维度、查询对象添加业务规则,以改进数据检索并确保查询的信息准确。创建业务规则并存储到模型(而不是报表中)中有很多优势,如报表开发者没必要每次都去创建同样的计算下或过滤器,从节省开发时间。同时业务规则确保模型的一致性因为所有报表开发者使用同样的定义,如我们在模型中定义 一个计算项[退货...

发表了文章 • 2015-09-28 10:56 • 1 条评论

0
推荐
2687
阅读

2.3.6.3 基于存储过程的查询主题

 我们可以从关系型数据库里导入一个存储过程来创建Stored Procedure查询主题,但仅仅支持用户定义的存储过程,而不支持system stored procedure。同时,仅支持IN参数,而不支持Output参数。对于Data Query而言,存储过程必须返回一个结果,也就是带有select语句,但同时允许在select语句前加入 Insert/Update/delet...

发表了文章 • 2015-09-28 10:44 • 0 条评论

0
推荐
2529
阅读

2.3.6.2 基于已有查询主题的查询主题

2.3.6.2 基于已有查询主题的查询主题  模型查询主题是直接基于已有查询主题的查询项或维度建立,而不是从一个数据源。使用它,建模者可以创建一个更结合业务理论的数据库视图架构。通常,我们会将它放置到business view(业务视图)版块,直接用于报表开发引用。模型查询主题可以称之为 数据库视图的升华和改造...

发表了文章 • 2015-09-28 10:31 • 0 条评论

0
推荐
3190
阅读

2.3.6 三种不同类型的Query Subjects

Query Subjects是一组由内在关系Query items的集合。通常情况下我们通过修改Query Subjects实现优化和自定义数据抽取,比如修改 filers、calculations(计算项),而修改Query Subjects会依据不同的类型有所不同:    口 (基于数据源)Data source query subjects    口 (基于模型...

发表了文章 • 2015-09-28 10:28 • 0 条评论

0
推荐
2877
阅读

【贝克汉姆教程】2.3.5 关系陷阱

2.3.5 关系陷阱的认识与解决方案  进行复杂的关系建模时候,往往会有多个查询对象,而查询对象之间又存在一个或多个relationships,它能把单个查询对象联合起来,从而报表进行多表查询时无须report author再指定表之间的关系。但报表 report author 开发报表时候并不能再Studio里看到查询对象之间建模的relationships...

发表了文章 • 2015-09-27 15:33 • 0 条评论