Hadoop技术在商业智能BI中的应用
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中的应用的更多相关文章
- 为什么越来越多的企业选择商业智能BI?
在大数据,云计算,工业4.0,物联网等概念概念炒得飞起的年代,现在已经变成某宝天天给我推送我感兴趣的东西.由此可见数据和科技正在慢慢深刻地改变我们的生活. 随着时代的发展,各个企业的内部决策方式也是 ...
- 商业智能bi行业现状,BI应用的3个层次
商业智能bi行业现状.传统的报表系统技术上已经相当成熟,大家熟悉的Excel等都已经被广泛使用.但是,随着数据的增多,需求的提高,传统报表系统面临的挑战也越来越多. 1. 数据太多,信息太少 密密麻 ...
- 从Hadoop框架与MapReduce模式中谈海量数据处理(含淘宝技术架构) (转)
转自:http://blog.csdn.net/v_july_v/article/details/6704077 从hadoop框架与MapReduce模式中谈海量数据处理 前言 几周前,当我最初听到 ...
- 商业智能(BI)选型手册(转载)
摘自http://articles.e-works.net.cn/bi/Article126429.htm 1.前言 互联网时代企业数据呈现爆发式增长,全面考验着企业的数据处理和分析能力.面对大容量. ...
- 商业智能BI推动制造业智能化转型
制造业是我国国民经济的支柱产业,是我国经济增长的主导部门和经济转型的基础,如今我国制造业面临技术工艺不精.缺乏市场意识.商贸流通环节多.物流成本大.仓储效率低下等问题,正处在转型的特殊时期. 内忧: ...
- 展望 2017年商业智能BI 发展的趋势
在展望2017年商业智能 BI 发展趋势前,我们先来了解一下商业智能 BI 发展的几个重要阶段. 传统 BI 和新型 BI 的分水岭(2013年) 大背景 在2013年以前相当长的一个周期(2005年 ...
- 互联网4.0时代需要商业智能BI
当今大数据互联网时代飞速发展,德国提出了工业化4.0, 美国提出了产业互联网,而中国提出了两化深度融合战略.越来越多的企业家开始安耐不住了,开始担心自己的企业是否跟的上时代的变化,是否使用了商业智能B ...
- 商业智能BI必备的特性
商业智能BI的本质对企业来说,商业智能BI不能直接产生决策,而是利用BI工具处理后的数据来支持决策.核心是通过构建数据仓库平台,有效整合数据.组织数据,为分析决策提供支持并实现其价值. 传统的DW/O ...
- 商业智能BI必备的特性,BI工具介绍
商业智能BI的本质 对企业来说,商业智能BI不能直接产生决策,而是利用BI工具处理后的数据来支持决策.核心是通过构建数据仓库平台,有效整合数据.组织数据,为分析决策提供支持并实现其价值. 传统的DW/ ...
随机推荐
- React-Native 之 项目实战(二)
前言 本文有配套视频,可以酌情观看. 文中内容因各人理解不同,可能会有所偏差,欢迎朋友们联系我. 文中所有内容仅供学习交流之用,不可用于商业用途,如因此引起的相关法律法规责任,与我无关. 如文中内容对 ...
- 关于npm安装全局模块,require时报Error: Cannot find module 'XXX'的解决办法
系统环境:centos 下午使用npm安装"cheerio",想搞爬虫玩玩. npm安装有两种模式: 本地 # npm install cheerio 全局 # npm insta ...
- 利用shell实现批量添加用户
批量添加用户并设置随机密码,把添加的用户的名字和密码保存到文件中. [root@lamp scripts]# cat user.sh #!/bin/sh ` do pass=$(-) //取随机数的方 ...
- linux之date命令详解
date命令的用处 1.用于显示特殊的时间格式,可以用于对日志文件的命名 2.用于设置时间 ,不过这方面用的比较少,因为一般的服务器都设置的有自动同步网络时间 用法: date [OPTION]... ...
- JavaEE开发之Spring中的事件发送与监听以及使用@Profile进行环境切换
本篇博客我们就来聊一下Spring框架中的观察者模式的应用,即事件的发送与监听机制.之前我们已经剖析过观察者模式的具体实现,以及使用Swift3.0自定义过通知机制.所以本篇博客对于事件发送与监听的底 ...
- Apache Mina入门实例
一.mina是啥 ApacheMINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序.它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的 ...
- 老李分享:webservice是什么?
老李分享:webservice是什么? 前言 Web Services 是 Web 应用出于和其他 Web 应用以交互数据为目的的开放式标准(XML.SOAP.HTTP 等).Web Servic ...
- json解包与json封包
首先,对两个名词进行简单的说明: 1.NSData 用来存储二进制的数据类型.NSData类提供了一种简单的方式,它用来设置缓冲区.将文件的内容读入缓冲区,或将缓冲区的内容写到一个文件.不变缓冲区(N ...
- 封装Echarts
项目中需要对数据进行图形展示,例如展示柱状图.饼状图等.这类的前端展示脚本很多,常见的是HighCharts和Echarts.HighCharts是基于svg技术的,而echarts基于Echarts ...
- JavaScript中数组类型的属性和方法
除了Object,Array类型应该是ECMAScript中最常用的类型了. ECMAScript的数组虽然也是数据的有序列表,但还是与其他语言中的数组有很大的区别.比如ECMAScript数组每一项 ...