Hadoop是个很流行的分布式计算解决方案,是Apache的一个开源项目名称,核心部分包括HDFS及MapReduce。其中,HDFS是分布式文件系统,MapReduce是分布式计算引擎。时至今日,Hadoop在技术上已经得到验证、认可甚至到了成熟期,同时也衍生出了一个庞大的生态圈,比较知名的包括HBase、Hive、Spark等。HBase是基于HDFS的分布式列式数据库,HIVE是一个基于HBase数据仓库系统。Impala为存储在HDFS和HBase中的数据提供了实时SQL查询功能,基于HIVE服务,并可共享HIVE的元数据。Spark是一个类似MapReduce的并行计算框架,也提供了类似的HIVE的Spark SQL查询接口,Hive是基于hadoop的数据分析工具。

很多企业比如银行流水作业很多,数据都是实时更新且数据量很大。会采用hadoop作为底层数据库,借由中间商处理底层数据,然后通过BI系统去连接这些中间数据处理厂商的中间表,接入处理数据,尤其以星环、华为这类hadoop大数据平台商居多,使用也较为广泛。

这里以星环大数据平台与帆软大数据BI工具FineBI的结合应用来简单介绍下。

由于星环也是处理hadoop下的hive数据库,其本质都是差不多的,可以使用Hive提供的jdbc驱动,这个驱动同样可以让FineBI连接星环的数据库并进行一些类关系型数据库的sql语句查询等操作,部分特殊sql的公式需要与星环人员确认是否可以使用。

首先将这些驱动拷贝到报表工程下面,然后重启BI服务器。重启后可以建立与星环数据库的数据连接,最后通过连接进行数据查询。

1、本地部署

下图是FineBI内部测试用的hadoop的jar包(将以下jar包放置于webinf-lib文件夹下),亲测,可连接成功,如下图所示:

2、数据连接

数据连接如下图所示:

测试连接成功之后,点击确定,可直接选择数据库中对应的表加入业务包中,类似于Mysql这些最常见的数据库取表方式。

3、实际分析案例

某银行的总行层面-机构维度-四象限图

(2)总行层面-机构维度-趋势分析

(3)总行层面-产品维度-盈利产品

4.关于FineBI的FineIndex和FineDirect功能

hadoop是底层,hive是数据库,上述案例采用的是FineIndex(cube连)连接,用的是hiveserver的方式进行数据连接的;数据连接成功之后,将hive数据库中的表添加到业务包中,也就是将库中数据拿到我们的多维数据库(FineIndex),当然抓取的过程中也可以读取数据库关联和转义,也可以手动转义和进行关联,同时也可以做一些etl操作如新增公式列/行列转换/join/union/过滤/分组统计/自循环列/新增分组列/使用部分字段等,做过处理的这些数据表用于前端分析。

也就是说数据库-FineIndex-前端分析,这里的FineIndex相当于一个中间库的形式,用来存储数据表,关联转义索引等。这些都对后续前台分析处理数据效率有很大的提升(因为直接sql取数,效率受数据库本身的限制,数据量大时,一般分析工具很容易就卡死升职内存溢出导致系统无响应),这也是FineIndex方案的初衷。FineIndex存在有两个意义,一个是提升效率,一个就是对数据进行二次整合处理。

FineBI还有一个连接方式FineDirect(数据库直连),主要是应对如下需求:

  • 分析结果的实时性

企业用户在使用BI工具的时候,多数情况下是对大量的历史数据进行OLAP分析,但是也有部分用户需要展现结果的实时性。例如金融行业对于交易风险的分析,是对每一笔流水实时进行分析的,如果需要经过构建多维数据库的过程,数据到来就会有延迟,影响分析结果的准确性。但是因为计算的过程交给了数据库,响应速度更多的取决于数据库的性能。

  • 大数据平台的充分利用

随着各种分布式计算方案的不断优化,数据的计算性能也有了快速的发展,计算能力有了显著的提高,不少企业已经有了自己的大数据计算平台,例如hadoop,kylin,greenplum,vertica等,这些平台的对于大数据量的处理性能已经足以满足使用需求,不再有建模的需求,因此FineBI直连引擎提供了对接这些数据平台的功能。

Hadoop技术在商业智能BI中的应用的更多相关文章

  1. 为什么越来越多的企业选择商业智能BI?

    ​在大数据,云计算,工业4.0,物联网等概念概念炒得飞起的年代,现在已经变成某宝天天给我推送我感兴趣的东西.由此可见数据和科技正在慢慢深刻地改变我们的生活. 随着时代的发展,各个企业的内部决策方式也是 ...

  2. 商业智能bi行业现状,BI应用的3个层次

    ​商业智能bi行业现状.传统的报表系统技术上已经相当成熟,大家熟悉的Excel等都已经被广泛使用.但是,随着数据的增多,需求的提高,传统报表系统面临的挑战也越来越多. 1. 数据太多,信息太少 密密麻 ...

  3. 从Hadoop框架与MapReduce模式中谈海量数据处理(含淘宝技术架构) (转)

    转自:http://blog.csdn.net/v_july_v/article/details/6704077 从hadoop框架与MapReduce模式中谈海量数据处理 前言 几周前,当我最初听到 ...

  4. 商业智能(BI)选型手册(转载)

    摘自http://articles.e-works.net.cn/bi/Article126429.htm 1.前言 互联网时代企业数据呈现爆发式增长,全面考验着企业的数据处理和分析能力.面对大容量. ...

  5. 商业智能BI推动制造业智能化转型

    制造业是我国国民经济的支柱产业,是我国经济增长的主导部门和经济转型的基础,如今我国制造业面临技术工艺不精.缺乏市场意识.商贸流通环节多.物流成本大.仓储效率低下等问题,正处在转型的特殊时期. 内忧: ...

  6. 展望 2017年商业智能BI 发展的趋势

    在展望2017年商业智能 BI 发展趋势前,我们先来了解一下商业智能 BI 发展的几个重要阶段. 传统 BI 和新型 BI 的分水岭(2013年) 大背景 在2013年以前相当长的一个周期(2005年 ...

  7. 互联网4.0时代需要商业智能BI

    当今大数据互联网时代飞速发展,德国提出了工业化4.0, 美国提出了产业互联网,而中国提出了两化深度融合战略.越来越多的企业家开始安耐不住了,开始担心自己的企业是否跟的上时代的变化,是否使用了商业智能B ...

  8. 商业智能BI必备的特性

    商业智能BI的本质对企业来说,商业智能BI不能直接产生决策,而是利用BI工具处理后的数据来支持决策.核心是通过构建数据仓库平台,有效整合数据.组织数据,为分析决策提供支持并实现其价值. 传统的DW/O ...

  9. 商业智能BI必备的特性,BI工具介绍

    商业智能BI的本质 对企业来说,商业智能BI不能直接产生决策,而是利用BI工具处理后的数据来支持决策.核心是通过构建数据仓库平台,有效整合数据.组织数据,为分析决策提供支持并实现其价值. 传统的DW/ ...

随机推荐

  1. HTML阶段总结

    自学有两个多星期了,这段时间主要在学习HTML基础知识,万事开头难,刚开始根本没法上手,云里雾里的,没有清晰的思路和详细的学习计划.问了一些盆友,找了一些资料,找到了适合自己的学习方法,渐渐的进入了轨 ...

  2. 前端学PHP之自定义模板引擎

    前面的话 在大多数的项目组中,开发一个Web程序都会出现这样的流程:计划文档提交之后,前端工程师制作了网站的外观模型,然后把它交给后端工程师,它们使用后端代码实现程序逻辑,同时使用外观模型做成基本架构 ...

  3. MVC5 DB FIRST

    跟着师父一直在做codefirst的开发,最近有个新需求,就是需要人家的数据库,然后来开发,现在出现问题了.整理如下 目前有个现成的我们之前的codefirst的工程代码,我记得师父说过,根据数据库生 ...

  4. Kubernetes日志收集

    关于kubernetes的日志分好几种,针对kubernetes本身而言有三种: 1.资源运行时的event事件.比如在k8s集群中创建pod之后,可以通过 kubectl describe pod ...

  5. JSTL标签用法 详解(转)

    JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out.set.remove.catch 2.流程控制标签:if.choose.when.otherwise 3.循环标签:f ...

  6. 模式识别(1)——PCA算法

    作者:桂. 时间:2017-02-26  19:54:26 链接:http://www.cnblogs.com/xingshansi/articles/6445625.html 声明:转载请注明出处, ...

  7. [SinGuLaRiTy] COCI 2011~2012 #2

    [SinGuLaRiTy-1008] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 测试题目 对于所有的题目:Time Limit:1s   ...

  8. js数组的几个练习题

    第一次在博客园写文章,之前一直自己做记录.现在前端工作两年了,对前端整体技术有较清晰的了解.项目用了vue,react之类的写,如今打算从基础开始,慢慢深入了解原生的JS.这几天清明节,玩的嗨皮,最后 ...

  9. Python之路-操作系统&网络基础

    一.为何要有操作系统 没有操作系统的话,计算机同样可以运行,但是程序员要了解到计算机底层各种各样的细节,而操作系统聪明地封装起来了底层这些繁杂的操作,通过向程序员开放一个个的接口,来最终使我们实现对底 ...

  10. spring项目log4j使用入门

    log4j是Java开发中经常使用的一个日志框架,功能强大,配置灵活,基本上可以满足项目开发中对日志功能的大部分需求.我前后经历了四五个项目,采用的日志框架都是log4j,这也反应了log4j受欢迎的 ...