谈起商业智能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. label用js,jquery取值赋值,以及怎么在后台取值

    label标签在JS和Jquery中使用不能像其他标签一样用value获取它的值: 可以这样: JS: var label=document.getElementByIdx_x("id&qu ...

  2. C# NPOI导出Excel和EPPlus导出Excel比较

    系统中经常会使用导出Excel的功能. 之前使用的是NPOI,但是导出数据行数多就报内存溢出. 最近看到EPPlus可以用来导出Excel,就自己测了下两者导出上的差异. NPIO官网地址:http: ...

  3. 缓存技术Redis在C#中的使用及Redis的封装

    Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server).Redis的键值可以包括字符串(string ...

  4. jsp页面显示问题

    一.在jsp页面的表格中,如果有表格中的某一个元素 内容太长,需要截取显示,方法如下: <%@ taglib prefix="fn" uri="http://jav ...

  5. Create function through MySQLdb

    http://stackoverflow.com/questions/745538/create-function-through-mysqldb How can I define a multi-s ...

  6. 转载:《TypeScript 中文入门教程》 5、命名空间和模块

    版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 关于术语的一点说明: 请务必注意一点,TypeScript 1.5里术语名已经发生了变 ...

  7. Linux(二)__文件目录、常用命令

    一.linux下的文件目录 linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层 是根目录"/",然后在此目录下再创建其他的目录 深刻理解linux文件目录是非常重要 ...

  8. 亿级规模的Elasticsearch优化实战

    Elasticsearch 的基本信息大致如图所示,这里就不具体介绍了. 本次分享主要包含两个方面的实战经验:索引性能和查询性能. 一. 索引性能(Index Performance) 首先要考虑的是 ...

  9. AMD and CMD are dead之KMDjs内核之分号

    在老版本的kmdjs中,强制了分号的要求.但是总感觉不爽,因为在开发Ket - Kmdjs Extension Tools的时候,总需要导入一些开源的库,然后痛苦就来了,总是报错,一查,就是缺少分号! ...

  10. sass初级语法

    github地址:https://github.com/lily1010/sass/tree/master/course01 用到的sass语法是: sass --watch test.scss:te ...