博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BI 系统中容易被忽视的数据源功能
阅读量:5909 次
发布时间:2019-06-19

本文共 1186 字,大约阅读时间需要 3 分钟。

用户在选购 BI 解决方案的时候,常常会更关注界面环节的功能指标,比如美观性、操作的流畅性、移动端支持等等。毕竟,BI 是要给业务人员使用的,这些看得见的内容一般不容易被遗漏。

然而,有些与数据源有关的后台功能点就可能被忽略掉。如果在项目实施时才发现就会非常麻烦,可能造成上线延迟,或者有些功能只能绕路而行。在选购 BI 系统时反而要特别注意这些功能点。

1. 对大清单报表的支持

OLAP 分析时钻取到明细数据是个基本功能,而明细数据很可能非常大,常常需要分页显示。我们在前面文章《大清单报表应当怎么做》中讨论过这个分页功能的实现手段。需要提请注意的是,绝大多数 BI 解决方案都在使用该文中所说的数据库的分页取数机制,而没有实现文中建议的双线程方案。这些内容我们在那篇文章中已经详细解释,这里就不再赘述了。

2. 对更换数据库的支持

BI 涉及的源数据大多在关系数据库中,需要用 SQL 来取数。而 OLAP 分析涉及的 SQL 语法形式非常简单,都是标准 SQL 的内容。这样,理论上讲,BI 系统更换后台数据库应当是很容易的事。

但并没有这么简单,取数用的 SQL 主体确实是通用的,但总会涉及到一些用于条件和计算的函数,特别是与日期相关的运算 ,各家数据库相差很大。而且,上面说的分页语法也是标准 SQL 之外的东西,也和使用的数据库相关。这样,在更换后台数据库时,这些语法要根据使用的数据库来做调整。

那么问题来了,这些调整是可以简单配置就好的?还是需要有厂家程序员再编码实现的?作为用户,我想肯定会想当然地认为都叫 BI 产品了,这些应当能配置一下就好了吧。然而,并不是!很有一些 BI 厂商需要现场再开发代码才能实现数据库的切换。只不过,许多用户常常只有一种数据库,在厂商部署系统时就已经准备好,也就感觉不到更换数据库竟然还会是个问题。

3. 对存储过程的支持

单纯的多维分析一般不会直接用到存储过程,特别是直接基于数据库的 ROLAP,本身运算也是由数据库完成的,要拼 SQL 实现,不可能使用存储过程作为数据源。不过,BI 系统常常也都有自己的分析运算能力,可以针对任意一个给定的数据集做分析,这时候就可能接入存储过程(以及其它外部程序数据源)来实现一些复杂或高效的数据准备工作。

存储过程的访问有业界标准,JDBC/ODBC 接口都对此有明确的规定,按说支持起来应当不是太难的事情。然而,再一次的并不是!有些厂商不支持或只能有限地支持存储过程,不能通用地支持符合 JDBC/ODBC 标准的调用接口,这包括某个国际大牌厂商(这里就不点名了)。存储过程参数和返回值都比较复杂,也没有元数据信息来获取数据结构,要全面支持确实也有点麻烦。

作者:279400248

链接:
来源:乾学院
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的文章
axios 拦截 , 页面跳转, token 验证(自己摸索了一天搞出来的)
查看>>
区块链初始化与实现POW工作量证明
查看>>
Python从菜鸟到高手(13):分片(Slicing)
查看>>
编码导致 html和aspx 样式差异,变形
查看>>
C++的Json解析库:jsoncpp和boost .
查看>>
如何将经纬度利用Google Map API显示C# VS2005 Sample Code
查看>>
基于html5 canvas和js实现的水果忍者网页版
查看>>
Android 知识梳理
查看>>
【反射】使用反射来获取注解原数据信息-类信息-方法信息等
查看>>
如何合理的规划jvm性能调优
查看>>
莫比乌斯反演初步与实际应用
查看>>
开发人员可以提高效率的chrome插件推荐
查看>>
内穆尔(Nemours)儿童健康系统选择HID Global解决方案
查看>>
1.4.运维平台之硬件CMDB
查看>>
性能测试分享:性能测试工具开发的案例分享(下)
查看>>
微信小程序如何像webview一样加载html5网页
查看>>
apache和nginx的区别
查看>>
CentOs6.5系统下MySQL-5.7.19安装
查看>>
Raid 简单说明
查看>>
网络犯罪如何取证
查看>>