background image
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 直连引擎提供了对接
这些数据平台的功能。