BIEE入门(一)架构

  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定义出来的各种报表,以及这些仪表盘,报表和用户或者组的权限对应关系。

转载于:https://www.cnblogs.com/tdskee/p/5762346.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/573276.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redhat linux 9.0 拷贝u盘的文件,肿么用U盘安装Linux,安装的是red hat 9.0…用Ubuntu很方便,redhat可以吗?...

下面有两种安装方法.从dos安装.这方法可以不用软盘,比较方便.得到dosutils目录这个目录里有从dos安装和软盘安装的工具.一般都在第一个iso文件里.在linux下可以这样装载iso文件.mount -o loop valhalla-i386-disc1.iso /mnt/cdromcd /mnt/cdromcd -r images /mnt/c 把dosutils目…

获得当前字符串的宽度

<!DOCTYPE html><html lang"en"><head> <meta charset"UTF-8"> <title>获得当前字符串的宽度</title> <script type"text/javascript" src"jquery-min.js"></script></…

linux需要的GLIBCXX版本,linux-如果我已经安装了GLIBCXX_4.1.2,则需要GLIBCXX_3.4.9吗?

我正在Fedora 8/9 64位(http://mediainfo.sourceforge.net/es/Download/Fedora)上安装MediainfoDLL的最新版本.我下载了libmediainfo-0.7.20和libzen0-0.4.3文件.当我尝试安装libzen0时,得到以下输出&#xff1a;# rpm -i libzen0-0.4.3-1.x86_64.Fedora_9.rpmwarning: libzen0…

小小动画

<script src"JS/jquery-1.7.2.min.js"></script><style type"text/css">* {margin: 0px;padding: 0px;}#dw {position: absolute;width: 200px;height: 70px;font-family: 迷你简书魂;font-size: 50px;}#zhezhao {position: absolute;wi…

linux so文件统一目录,linux加载指定目录的so文件

例如&#xff0c;有个so在/tmp/libs/libzmq.so.3&#xff1a;[winlindev6 libs]$ ls /tmp/libs/ -lhtotal 2.5Mlrwxrwxrwx 1 winlin winlin 15 Dec 12 12:58 libzmq.so -> libzmq.so.3.0.0lrwxrwxrwx 1 winlin winlin 15 Dec 12 12:58 libzmq.so.3 -> libzmq.so.3.0.0-rw…

VBS基础篇 - Dictionary对象

VBS基础篇 - Dictionary对象 Dictionary是存储数据键和项目对的对象&#xff0c;其主要属性有Count、Item、Key&#xff0c;主要方法有Add、Exists、Items、Keys、Remove、RemoveAll。 建立字典 Dim Dict : Set Dict CreateObject("Scripting.Dictionary")添加键值对…

linux编译mesa,如何在Ubuntu 16.04,17.10中安装Mesa 17.3.3

最新的MESA 3D图形库17.3.3现在在Ubuntu-X team PPA存储库中为Ubuntu 16.04和Ubuntu 17.10提供。Mesa 17.3.3实现了OpenGL 4.5 API&#xff0c;但由glGetString(GL_VERSION)或glGetIntegerv(GL_MAJOR_VERSION)/glGetIntegerv(GL_MINOR_VERSION)报告的版本取决于所使用的特定驱动…

iOS开发Swift篇—(三)字符串和数据类型

一、字符串 字符串是String类型的数据&#xff0c;用双引号""包住文字内容 let website "http://www.github.com" 1.字符串的常见操作 &#xff08;1&#xff09;用加号 做字符串拼接 let scheme "http://" let path “www.github.com” le…

linux查看xml文件的配置,3、kvm虚拟机日常管理与配置

KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理。1. 查看KVM虚拟机配置文件及运行状态(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/autostart目录是配置kvm虚拟机开机自启动目录。(2) virsh命令帮助# virsh -help或直接virsh命令和&#xff0c;再执行子命令。如下…

hdu5726-GCD-ST表+二分

先用st表处理出所有l-r的GCD值&#xff0c;然后二分求得这些值一共出现了多少次。 1 #include<bits/stdc.h>2 3 #define inf 0x3f3f3f3f4 5 const int maxn100000;6 7 using namespace std;8 9 typedef pair<int,int> P;10 11 int l,r;12 13 int icase;14 15 int t…

linux桌面环境是什么意思,Linux 黑话解释:什么是桌面环境?

在桌面 Linux 世界中&#xff0c;最常用的术语之一就是 桌面环境(Desktop Environment)(DE)。如果你是 Linux 的新手&#xff0c;你应该了解一下这个经常使用的术语。什么是 Linux 中的桌面环境?桌面环境是一个组件的组合体&#xff0c;为你提供常见的 图形用户界面(graphical…

redhat linux 安装ftp服务,RedHat Linux 9.0为例介绍一下如何安装和配置vsftpd服务器

本文以RedHat Linux 9.0为例介绍一下如何安装和配置vsftpd服务器。安装服务器程序程序下载地址&#xff1a;&#xff0c;目前最新版本为2.0.3&#xff0c;源程序文件名为vsftpd-2.0.3.tar.gz。1&#xff0e;安装之前的准备&#xff1a;安装之前我们应该看看用户“nobody”和目录…

Hadoop 2.5.1集群安装配置

本文的安装只涉及了hadoop-common、hadoop-hdfs、hadoop-mapreduce和hadoop-yarn&#xff0c;并不包含HBase、Hive和Pig等。 http://blog.csdn.net/aquester/article/details/24621005 1. 规划 1.1. 机器列表 NameNode SecondaryNameNode DataNodes 172.16.0.100 172.16.0.…

linux杀掉进程后总是重启,Linux监控进程,进程关闭自动重启方案

Linux监控进程&#xff0c;进程关闭自动重启方案corntabshell脚本检测进程这个方案简单不用额外安装软件。缺点是存在间隔&#xff0c;corntab设置1秒执行一次shell脚本也是存在间隔的#!/bin/bash#author smallForest#email 1032817724qq.comproc_name"xiaofei.php" …

C语言atan2()函数:求y/x的反正切值

头文件&#xff1a;#include <math.h>atan2() 函数用于求 y / x 的反正切值。其原型为&#xff1a; double atan2(double y, double x);【参数】x为坐标的X轴值&#xff0c;y为坐标的Y轴值。如果 x 和 y 的值都为 0&#xff0c;将会导致错误。atan2() 求坐标 x 和 y 的…

Linux qt程序打包依赖库,Linux打包免安装的Qt程序(编写导出依赖包的脚本copylib.sh,程序启动脚本MyApp.sh)...

本文介绍如何打包Qt程序&#xff0c;使其在没有安装Qt的系统可以运行。默认前提&#xff1a;另外一个系统和本系统是同一个系统版本。1&#xff0c;编写导出依赖包的脚本copylib.sh#!/bin/bashLibDir$PWD"/lib"Target$1lib_array($(ldd $Target | grep -o "/.*&…

ubuntu14.04 x86编译upx 3.92 及so加固

的参考文章&#xff1a; http://www.cnblogs.com/fishou/p/4202061.html 1.download upx和所依赖的组件 upx3.92&#xff1a;https://www.pysol.org:4443/hg/upx.hg/archive/tip.tar.gzLZMA4.43&#xff1a;http://nchc.dl.sourceforge.net/project/sevenzip/LZMA%20SDK/4.43/l…

linux磁盘分区面试题,一套Linux面试模拟题及答案

一、填空题1、查找在当前目录中文件属主具有读、写权限&#xff0c;并且文件所属组的用户和其他用户具有读权限的文件&#xff0c;使用的命令是( find . -perm 644 )&#xff1b;查找在/tmp目录中&#xff0c;属主是benet用户的文件( find /tmp –user benet)&#xff1b;删除当…

jQuery中的渐变动画效果

jQuery中的渐变动画效果jQuery中的渐变动画效果转载于:https://www.cnblogs.com/DreamDrive/p/5780292.html

linux vi编辑器 Ctrl s,Linux命令-----vi/vim编辑器

也可建立vi到vim的符号连接(即实际调用的是vim)# mv /bin/vi /bin/vi.bak# ln -s /usr/bin/vim /bin/vi进入vi的命令&#xff1a;vi 直接进入编辑并创建新文件vi filename 编辑文件(不存在则创建文件)&#xff0c;并将光标置于第一行首vi n filename 打开文件&#xff0c;并…