谈起商业智能BI,也许大家并不陌生,但你是否了解国内的各类BI系统架构

自国内商业智能发展以来,就系统结构方面已经历了多次优化性的变革。目前国内商业智能BI系统的经典架构的模式包括数据层、业务层和应用层三部分。数据层基本上就是ETL过程,即数据仓库技术,是将数据从来源端经过抽取、转换、加载至目标端的过程。业务层主要是OLAP(联机分析处理)和Data Mining(数据挖掘)的过程。在应用层里主要包括数据的展示,结果分析和性能分析等过程。

国内大多BI产品的系统架构都是经典架构的衍生,但表现形式却有很大的差别,这里列举几个常见产品:

BIEE:     业界常见的BI平台应包含数据仓库、数据抽取、多维建模,前台展现4个部分。

BO:       无法提供独立的多维分析引擎,在Hyperion被Oracle 收购前,经常以OEM Essbase为数据引擎,在常见的BI项目中只提供前台展现部分。

Qlikview:产品架构主要是dashboard(管理驾驶舱)和移动端。

永洪BI:   产品架构主要是MPP数据集市,dashboard(管理驾驶舱)和移动端。

FineBI:   产品架构分为4个部分:cube数据处理引擎,分析统计组件,dashboard(管理驾驶舱),移动BI

 

各类BI产品系统架构参差不齐,以我比较了解的FineBI为例(目前更新至3.7),主要分为以下4个部分:

cube数据处理引擎

FineBI 的数据处理引擎以多维数据库为核心,囊括 ETL 功能,旨在对原始数据进行抽取,转换和加载,支撑在线分析。

多维数据库采用动态生成的位图索引技术处理字符串等类型,NIO 内存映射文件技术快速读取处理数字类型,并支持离线使用的 cube 数据存储,支持 cube 数据定时全量以及增量更新。

并行计算的先进数据处理模式使得基于位图索引的快速分组,过滤,钻取,支持多线程运算,互不干扰。并且还有智能避免重复计算的缓存机制。

分析统计组件

OLAP统计分析组件可实现如下功能:

1、任意维度切换:可以对已有的表样切换维度来进行自由分析,支持维度排序,根据维度自身进行排序,根据指标的汇总值进行排序,根据公式值进行排序。

2、计算指标:支持添加计算指标的功能来实现对已存在的指标项进行再计算得到新的计算指标。

3、分享页面:支持设计的页面分享给其他用户。

4、数据预警:通过红绿灯,警戒线分析数据走势。

5、通用查询:不同于文本控件等控件,该控件在查看分析的时候可以添加和删除过滤条件,适用性更强。

6、交互控件:支持文本类控件,包含文本框、下拉框、下拉复选框,支持时间类控件,包含时间段控件、年份列表、月份列表和季度列表,支持数值类控件,可以按数值区间进行和数据筛选,支持组件和控件支持自由布局。

 

Dashboard

FineBI 使用 Dashboard 加入任意数量的组件和控件,支持任意维度和指标的切换,可以对已有的表样切换字段来进行自由分析。任意维度和指标切换的功能保障了当查看分析的人员在查看分析时,如果针对已有的表样产生额外的分析需求或改变了已有的分析需求,不需要重新制作一次分析,可以直接通过切换维度和指标实现。

移动端

支持安卓手机、苹果手机和平板三大主流移动端。

使用其移动端查看分析,功能和 PC 上的 Web 端完全一致,包括更改数据过滤条件、自由切换维度和指标、钻取联动等功能。此外,此款工具原创消息反馈功能,查看分析时可以随意在屏幕上标记、注释,并一键将带有批示的报表以截图形式发送到指定邮箱或即时通讯工具中。

国内主流BI产品虽然大多是经典架构的衍生,但表现形式却有很大的差别。在BI产品层出不穷的大环境下,挑选一款系统架构非常完善的BI产品,值得花上一些心思。

 

【本文转载自帆软商业智能FineBI http://www.finebi.com/bi/?p=3340

国内经典BI系统架构分析的更多相关文章

  1. 大数据时代的新BI系统架构发展趋势

    商业智能(BI,Business Intelligence).它是一套完整的解决方式,用来将企业中现有的数据进行有效的整合,高速准确的提供报表并提出决策根据.帮助企业做出明智的业务经营决策.     ...

  2. Tomcat系统架构分析

    Tomcat系统架构分析 关于这边blog呢,实际开发中并不会用到,但是我觉得还是很有必要认真的写一下.毕竟我们每天在本地撸码的时候使用的就是tomcat来做web服务器.一个常识就是说我们本地在to ...

  3. Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍

    系统架构分析 Android体系结构 安卓结构有四大层,五个部分,Android分四层为: 应用层(Applications),应用框架层(Application Framework),系统运行层(L ...

  4. 性能测试知多少---系统架构分析 转自https://yq.aliyun.com/articles/35147?spm=5176.100239.blogcont24251.8.lS96At

    摘要: 有些事儿一旦放一放就难再拾起来,突然发现<性能测试知多少>这个系列两月没更新,关键时我都不知道啥时候放下的,总容易被各种技术所吸引走,如饥似渴的想学更多的东西,这几天一直有朋友问我 ...

  5. 吴裕雄--天生自然Android开发学习:android 背景相关与系统架构分析

    1.Android背景与当前的状况 Android系统是由Andy Rubin创建的,后来被Google收购了:最早的版本是:Android 1.1版本 而现在最新的版本是今年5.28,Google ...

  6. 粗浅看 Tomcat系统架构分析

    原文出处: 吴士龙 http://www.importnew.com/21112.html Tomcat的结构很复杂,但是Tomcat也非常的模块化,找到了Tomcat最核心的模块,就抓住了Tomca ...

  7. JAVA构建高并发商城秒杀系统——架构分析

    面试场景 我们打算组织一个并发一万人的秒杀活动,1元秒杀100个二手元牙刷,你给我说说解决方案. 秒杀/抢购业务场景 商品秒杀.商品抢购.群红包.抢优惠劵.抽奖....... 秒杀/抢购业务特点 秒杀 ...

  8. 人人网张铁安:Feed系统架构分析(转)

    原文:http://www.csdn.net/article/2010-07-26/277273 继成功举办首期TUP活动后,日前在北京丽亭华苑酒店鸿运二厅,由CSDN和<程序员> 杂志联 ...

  9. FishiGUI系统架构分析 和层次结构 二

    FishiGUI的类型 FIshiGUI属于为应用程序提供图形界面服务的框架系统.它并不直接与终于用户交互(负责与终于用户交互的是在FishiGUI基础上开发的应用程序).而是接受操作系统传来的硬件消 ...

随机推荐

  1. 企业 SOA 设计(2)–组件化产品开发平台

    上一篇<企业 SOA 设计(1)–ESB 设计>中,写到我们的 SOA 设计分为两个层面来进行:一个是系统间的 SOA 设计,主要通过 ESB 来完成:另一方面则是单个应用系统内部的 SO ...

  2. [Asp.net 5] Logging-新日志系统目录

    楼主有个美好的愿望——把asp.net 5所有能看懂的代码一一呈现给大家(比如C++,楼主就看不懂).现在已经做完了依赖注入.多语言.配置文件三部分,比较基础的日志就成为了楼主的下一个目标.下面是楼主 ...

  3. [Asp.net 5] Localization-Asp.net运行时多语言

    本节介绍的是Microsoft.AspNet.Localization工程.该工程是运行在Asp.net 5环境中的运行时多语言设置. ASP.net 5中间件技术 在新的Asp.net 5中,可以将 ...

  4. httpRuntime与ASP.NET 运行时及IIS处理模型

    配置 ASP.NET HTTP 运行时设置,以确定如何处理对 ASP.NET 应用程序的请求,配置节及其描述如下所示. <httpRuntime executionTimeout="1 ...

  5. 浅谈SQL Server中的三种物理连接操作

    简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,Merge J ...

  6. 数据结构:链表(python版)续:带有尾节点引用的单链表

    #!/usr/bin/env python # -*- coding:utf-8 -*- from chapter3.single_linked_list import LNode,LinkedLis ...

  7. jquery.datatable.js与CI整合 异步加载(大数据量处理)

    http://blog.csdn.net/kingsix7/article/details/38928685 1.CI 控制器添加方法 $this->show_fields_array=arra ...

  8. 理解CSV文件以及ABAP中的相关操作

    在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...

  9. SVN(Cornerstone)-添加忽略文件

    1.打开CornerStone,找到偏号设置,找到Subversion选项 2.去看"Use default global ignores"前面的"勾",删除& ...

  10. 【转】十个JavaScript中易犯的小错误,你中了几枪?

    目录 常见错误一:对于this关键词的不正确引用 常见错误二:传统编程语言的生命周期误区 常见错误三:内存泄露 常见错误四:比较运算符 常见错误五:低效的DOM操作 常见错误6:在for循环中的不正确 ...