BIEE入门(一)架构

摘要:
请注意,这不是广告。如果你真的了解BIEE的架构和部署,你也会有同样的感觉。因此,那些认为BIEE前景报告的开发过于简单的人可能不理解这是BIEE的真正优势!一般数据仓库或商业智能关注的核心问题之一是特定领域中分析数据模型的建模。该建模过程主要通过BIEE中的BIadmintool进行,整个建模结果是一个名为repository的文件。

  BIEE作为Oracle的新的商业智能平台企业版,起源于Oracle所收购的Siebel公司,BIEE原来叫做Siebel Analytic,但是Siebel也不是它的发明者,它是Siebel在2001年收购的另一个公司叫nQuire software的产品,这个从它的配置文件的名称就可以看出来(NQSConfig,还一直保留着nQuire software的痕迹)。但是这个产品无论是在Siebel还是在Oracle都得到了发扬光大,我的理解是,也许它不一定是最好的BI工具,但是却是一个非常有创造力的工具,它对于物理层,逻辑层,展现层的理解和定义创造了一个非常简洁而清晰的数据模型,使用这个数据模型可以完整地连接企业内各个异构数据源和前台的业务使用人员,使商业智能真正能够在企业范围内得到大规模部署和使用:就是报表的“开发”以一种非常容易的方式交还给业务人员,他们就可以随时产生自己所需要的智能数据报表,而不是把需求再提交给开发人员,而开发人员,在定义好了商业智能的元数据之后,就可以避免对业务人员的连续不断的需求疲于应付了!请注意,这个并不是广告语,如果你真正理解了BIEE的架构和部署,你也会有相同的感觉的,所以,觉得BIEE前台报表开发过于简单的人也许并不理解这才是BIEE的真正优势! BIEE architecture  BIEE的架构非常简单,如下图:   窗体顶端 窗体底端 窗体顶端 窗体底端 窗体顶端 窗体底端我觉得这这个架构里,最重要的最核心的应该是BI Server和由BI Server所操作的Repository。一般的数据仓库或者商业智能关心的一个核心问题是特定领域的分析数据模型的建模,这个建模的过程在BIEE里主要是通过BI admintool来进行,而整个建模的成果则是称之为repository的一个文件。BI admintool是一个图形工具,主要用于建立和维护repository,BIEE的repository相当于BIEE的元数据层,而且从很多信息来看很可能将会被作为未来Oracle的商业智能解决方案的中心元数据层,在Repository里主要包含了:

·         数据源的定义

·         多维数据模型的定义

·         业务展现层的定义

而整个元数据的定义可以清楚地看到数据如何从源头被一步一步地转换最终以业务人员能够理解的方式方式展现给最终用户,BIEE的repository设计得非常简洁和合理,分别对应于以上的大三个部分分为三个层次的定义:

·         物理层:对应于数据源的定义,可以建立多个不同系统的数据源,比如一个数据源时essbase,一个数据源是Oracle数据库,而另一个数据源时DB2。

·         逻辑层:从多个物理数据源里抽象出来的多维数据模型,主要为了业务需求服务,一般是一个星型模型或雪花模型,在逻辑层可以从多个物理数据源形成一个统一的单个多维模型。

·         表现层:把多维模型以业务的术语展现给最终报表建立的用户,从展现层的定义中我们不难发现,其实BIEE的开发主要集中于元数据层的开发,而最终报表和展现甚至可以让最终的业务用户自己来完成,这个也说明了BIEE的展现层开发是相当容易的!  

BI Server(BI服务器)由admintool建立的Repository最终由BI Server来使用,BI Server运行的时候会打开Repository文件,分析服务通过配置文件NQSConfig.ini中的 Star=RPD文件名文件名来找到该数据模型定义文件。物理层和数据源作为一个BI服务器,BIEE的BI Server和传统意义上的Essbase或Oracle OLAP的地位并不相同,最大的差别是无论是Essbase或者是Oracle OLAP,本身都包含了数据的建模,存储,处理等服务,但是BIEE BI Server本身却并不存储数据,而只是“指向数据”,用户的分析请求会自动的由分析服务组织成合适的SQL发送到定义在物理层的数据源,由数据源执行,当然BI Server本身还可以对多个数据源返回的结果重新组织和“装配”,最后把组织装配后的结果返回展现层。作为源数据的提供者可以是普通数据库数据,关系型数据,OLAP服务,文本文件,excel文件,XML文件或者符合XMLA规范的数据源等等,当在物理模型里定义多个和多种类型的数据源的时候,数据源的多样性完全可以由逻辑层进行掩藏,从而最终的商业智能报表开发者或者使用者可以完全不知道最终的信息来源于多种不同的系统。当从关系数据库来导入数据模型的时候,一般而言事实表和维度表之间都存在着主外键的关系,在BIEE里创建物理层的时候可以通过导入的方式来把这些事实表和维度表之间的关系直接导入到物理层里,这样BIEE就可以在创建逻层的时候自动地认识到哪些是事实表,哪些是维度。但是维度的层次关系一般而言还是需要自己去定义;而从Essbase或者Oracle OLAP导入数据模型的时候就要容易一些,因为导入会把维度的层次关系直接从Essbase里抓出来,就不需要额外去建立维度的层次关系就可以直接使用Essbase里的设计了!

   BI Presentation Service(BI展现层服务) BIEE的BI展现层是Web服务器的一个扩展模块,就如Siebel应用里的SWSE一样,BI展现层接收BI服务器的数据然后把把数据组织称HTML或者图表展现给最终用户,BI展现层也需要操作一个文件(catalog文件,以.webcat结尾),这个文件存储了用户通过管理界面定义的应用的dashboard,通过BI Anwsers定义出来的各种报表,以及这些仪表盘,报表和用户或者组的权限对应关系。

免责声明:文章转载自《BIEE入门(一)架构》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇asp.net网站安全常见问题与防范iOS开发——你真的会用SDWebImage?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

微软BI方案参考来自这些年的工作经验

自我介绍: 在学校的时候从asp转到asp.net从而接触了c#和.net,期间为学校和社会做过很多的门面网站和一个BS的政务系统。毕业后从事BI的开发工作,主要关注SSAS往上的部分,包括复杂的动态报表的开发,后期发现Silverlight的优势所以研究RIA在BI中的应用,并把地图数据也应用进项目。第一个项目就取得了意想不到的效果,也成为了在BI圈里...

蓝牙专题(2)——初识BLE协议栈(物理层PHY)

BLE的协议可分为Bluetooth Application和Bluetooth Core两大部分,而Bluetooth Core又包含BLE Controller和BLE Host两部分: 为什么BLE协议栈要分层呢? 这个和TCP/IP分层的原因基本一致。以流水线工厂为例,如果一个产品需要经过五个步骤最终成型,比如1.打螺丝;2.插线;3.设备上电...

【高速接口-RapidIO】6、Xilinx RapidIO核仿真与包时序分析

提示:本文的所有图片如果不清晰,请在浏览器的新建标签中打开或保存到本地打开 一、软件平台与硬件平台 软件平台: 操作系统:Windows 8.1 64-bit 开发套件:Vivado2015.4.2 硬件平台: 评估板:ZYNQ-7 ZC706 Evaluation Board 二、介绍 上篇文章的最后一小节已经对例子工程进行仿真并通过命令 log_wav...

STM32-ETH-Lwip以太网通信

互联网模型 通信至少是两个设备的事,需要相互兼容的硬件和软件支持,我们称之为通信协议。以太网通信在结构比较复杂,国际标准组织将整个以太网通信结构制定了 OSI 模型,总共分层七个层,分别为应用层、表示层、会话层、传输层、网络层、数据链路层以及物理层,每个层功能不同,通信中各司其职,整个模型包括硬件和软件定义。 OSI 模型是理想分层,一般的网络系统只是涉及...

MIPI DSI协议介绍

MIPI DSI协议介绍 reference: http://www.wangweilin.name/qrx_448.html https://blog.csdn.net/qq160816/article/details/19555957 http://www.elecfans.com/yuanqijian/jiekou/20171113578403.h...

架构设计逻辑层 vs 物理层

    Layer 和Tier都是层,但是他们所表现的含义不同,Tier指的是软件系统中物理上的软件和硬件,具体指部署在某服务器上,而Layer(逻辑层)指软件系统中完成特定功能的逻辑模块,逻辑概念。    Layer是逻辑上 组织代码的形式。比如逻辑分层中表现层,服务层,业务层,领域层,他们是软件功能来划分的。并不指代部署在那台具体的服务器上或者,物理位...