企业级BI是自研还是采购?

上一篇《企业级BI为什么这么难做?》,谈到了企业级BI项目所具有的特殊背景,以及在“破局”方面的一点思考,其中谈论的焦点主要是在IT开发项目组外部。本篇会再谈一谈在开发项目组内部,应该如何选择企业级BI的实施方案:是自主研发还是采购商业BI产品?

(写在前面的话:如果你所在的企业预算非常充足,并且处于BI项目的初创期,那么这个问题不存在,后文可以直接略过,以节省大家宝贵的时间。)

接下来会分别从商业BI产品的系统架构和自研技术方案进行介绍与对比。

/请尊重作者劳动成果,转载请标明原文链接:/

/* https://www.cnblogs.com/jpcflyer/p/15685268.html * /

一、主流商业BI产品方案介绍

近几年国内BI发展如火如荼,已经有不少相对成熟BI产品,这里仅举例介绍几个,供参考。

  1. FineBI

    帆软的FineBI的核心功能架构如下图所示,主要包括Spider引擎和上层自助分析功能两部分。

    其中Spider引擎是核心,也应该是FineBI的核心竞争所在吧,所以这里要重点研究一下。Spider能够支持抽取模式,也能支持直连模式,这也是目前成熟BI都应具备的基础功能。对于抽取模式,Spider的技术架构如下图所示。

    可以看出帆软的抽取模式中,底层使用了大数据的相关技术:持久化存储用HDFS,计算引擎使用spark,缓存加速使用了Alluxio......细节描述本篇不再展开。除了FineBI,帆软公司还有FineReport产品支持传统固定报表及复杂报表的制作、简道云产品支持轻应用等。

  2. 永洪BI

    关于永洪BI的技术资料不多,更多的是联合企业共创的解决方案,正面消息居多,说明永洪BI的公关与宣传工作做的十分到位。下面是能找到的官方认可的最偏技术的架构图了。

    当然这个图描述的都是各BI产品共性的东西,看不出来有什么亮点(保密工作做的挺好),大家就将就着看一下吧。

  3. Smartbi

    主要包含三个产品:Smartbi Insight(中国式传统报表)、Smartbi Eagle(自助分析平台)、Smartbi Mining(数据挖掘平台)。

    Insight和Eagle产品主要是借助excel实现报表计算与自助分析,Mining的架构图如下:

  4. 观远guandata

    观远也是最近比较火的商业BI工具,其技术架构如下图所示。和帆软差不多,也具有直连和抽取两种模式,均基于spark计算,缓存用的是Cassandra。和帆软不同的是,为加速查询,观远尝试引入了Clickhouse,并且增加了AI方面的功能。

    5、BI商业产品对比

    从附录1文章中引一张对比图如下所示,综合来看,帆软和观远处于行业第一梯队(该图仅代表源文作者观点,供学习交流使用)。

二、自研技术方案介绍

一般企业级BI从系统架构角度可分为数据存储层、计算加工层、BI展现层等。企业内部基本都会有数据仓库、数据湖等企业级数据存储归档库,也有spark、clickhouse等计算引擎,所以本篇假设企业的数据底座能力已比较完善,已经具备BI工具所需要的存储与计算能力。后面重点说下BI展现层的实现方案。

建议选择在开源BI框架的基础上,按企业需求进行定制化开发。目前开源BI框架有Superset、Redash、Metabase,以及最近越来越红火的Davinci等。

  • Superset

Superset采用技术栈为 Python + Flask + React + Redux + SQLAlchemy ,支持多种数据源和图表类型,在Davinci出现之前,Superset的评价最高,stars数量也是最多的。

  • Redash

Redash采用技术栈为 Python + Flask + AngularJS + SQLAlchemy ,需要手写SQL,对业务人员不太友好,支持数据源较Superset略少。

  • Metabase

Metabase采用技术栈为 Clojure + React + Redux ,是页面布局和体验最好的,适合业务人员使用,但支持数据源少。

下图为Superset、Redash和Metabase的详细对比图(图片来源参考附录2)。

  • Davince

Davinci是宜信在2017年开源的可视化分析工具,面向业务人员/数据工程师/数据分析师/数据科学家,致力于提供一站式数据可视化解决方案 。其架构如下图所示。

相关概念及设计理念可以参考官网https://edp963.github.io/davinci/。对于金融行业来说,选择基于宜信的Davinci进行定制化开发还是比较合适的。(最近有核心成员离开成立了datart项目,对datart感兴趣的可以自行github)。

以上均为敏捷BI开源框架,可能需要做大量的定制化开发工作才能满足企业内部BI用户的需求,需要提前做好开发资源方面的准备。

三、采购商业BI产品与自研方案对比

1、自研

自研的优势在于可以自主进行定制化开发,能够更好的满足用户的需求。

缺点在于对产品经理、技术团队的能力要求比较高,需要非常专业的产品+开发团队,同时由于开发过程中的细节比较多、坑也多,所以在时间、人力资源有限的情况下,项目可能存在实施方面的风险。

另外从0开始建设企业级BI,在产品功能和用户体验方面可能永远追不上专业BI公司的脚步,永远在步别人的后尘,因为商业BI公司都是在市场上摸爬滚打多年、经过时间检验的,所以时间久了,业务满意度可能会持续降低,转而偏向于引入商业BI公司的产品。

2、采购

采购的优势在于能够快速引入产品部署,及时响应业务在BI方面的共性需求,用户体验也会不错。

缺点在于产品的定制化成本比较高,需要有足够的预算支持,在商务方面,也要考虑产品升级、运维等的合作模式。

四、总结
方案 优势 不足
自主研发,基于开源敏捷BI框架或从0开始搭建企业级BI 1、可按需满足企业内部数据分析场景2、成本相对偏低 1、实施周期长,难以快速释放业务价值2、需要一只非常专业的开发团队3、用户需求场景多,产品设计和功能实现存在难度,对产品经理和开发团队有较高的专业要求
采购产品,采购新的BI产品作为企业级BI体系 1、快速部署,能够快速释放价值2、业务能够一起参与选型,引入外部先进经验3、功能细节比较完善,项目实施风险小 1、定制化开发成本高,难以满足企业内部特殊业务分析场景2、产品与厂商绑定,运维升级需要商务谈判

各企业的情况不同,需结合预算、开发资源、上线时间等方面综合考虑决策,部分企业还会涉及到存量BI系统的数据迁移、与企业内部系统进行定制化对接等等内容,所以需要企业因地制宜,自行设计企业级BI方案。当然如果在设计过程中有什么问题,也可以随时与我沟通交流,希望本篇对您所在企业的BI建设能有帮助,也祝各位的企业级BI越来越好。

参考资料:

  1. https://www.sohu.com/a/390496492_114819

  2. https://mp.weixin.qq.com/s/lsT5LKr3G8YoWxIFBDdJXg

企业级BI是自研还是采购?的更多相关文章

  1. BI系统要自研还是采购?这篇文章告诉你

    首先说一下目前市面上的BI工具都有哪些吧.总体上,其实分为免费和付费两大阵营.免费阵营里,为首的当然是GA(也就是谷歌分析).PowerBI,但是由于有墙的限制,很多公司没法使用前者.付费阵营里,近两 ...

  2. 企业级BI为什么这么难做?

    本人长期在银行内从事数据线相关工作,亲眼目睹过多个企业级BI(非部门级BI)产品从上线试用.全行推广.然后衰败没落,再替换到下一个BI产品重复此过程.企业内没有任何一个BI产品即能长期运行,又能赢得非 ...

  3. Airbnb开源 快速搭建企业级BI数据平台

    最近在公司做一个数据可视化相关的项目,使用了Airbnb开源维护的企业级BI数据平台superset,相较于tableau这种收费的商业软件,Superset是开源维护的,同时图表的种类和颜值普遍偏高 ...

  4. 杂记- 3W互联网的圈子,大数据敏捷BI与微软BI的前端痛点

    开篇介绍 上周末参加了一次永洪科技在中关村 3W 咖啡举行的一次线下沙龙活动 - 关于它们的产品大数据敏捷 BI 工具的介绍.由此活动,我想到了三个话题 - 3W 互联网的圈子,永洪科技的大数据敏捷 ...

  5. 国内BI工具/报表工具厂商简介

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  6. 拥有自助式BI要摒弃传统BI?

    简单来说BI就是从data中提取知识和信息的一套软件解决方案.商业智能 (BI,Business Intelligence) 也就是BI,是为企业把数据转换为信息.知识 ,相应蕴育而出的IT技术.企业 ...

  7. 零售BI:为什么说零售行业非上一套企业BI系统不可?

    如果你要问为什么现在越来越多的零售企业都会在公司上一套企业BI系统,这边文章就能解答你的疑惑. 2016年10月,马云在云栖大会上提出了"新零售"概念.在新零售时代,数字化转型打通 ...

  8. 2021年国内BI厂商推荐_大数据分析工具

    随着互联网大数据时代的不断发展,BI让企业的工作效率变得更高效.BI的功能也随着需求的增长不断地丰富,例如,数据可视化大屏.可视化表格.商业化数据分析.数据地图等.国外的厂商在很多场景下无法满足国内的 ...

  9. 数据分析侠A的成长故事

    数据分析侠A的成长故事 面包君  同学A:22岁,男,大四准备实习,计算机专业,迷茫期 作为一个很普通的即将迈入职场的他来说,看到周边的同学都找了技术开发的岗位,顿觉自己很迷茫,因为自己不是那么喜欢钻 ...

随机推荐

  1. LINKERD 2.11 中文实战手册

    1. 将您的服务添加到 Linkerd. 为了让您的服务利用 Linkerd,它们还需要通过将 Linkerd 的数据平面代理注入到它们的 pod 中来进行 网格化 . 2. 自动化的金丝雀发布. 通 ...

  2. Python基础(@property)

    class Point(object): # def get_score(self): # return self.score # def set_score(self,value): # if no ...

  3. 微软商店打不开的教程(错误代码0x80131500)

    1 打开win+R 输入`inetcpl.cpl` 2 点击高级 3  勾选上`使用TLS 1.2`或者点击还原默认设置就可以啦 4 然后就可以打开啦

  4. 看动画学算法之:hashtable

    目录 简介 散列表的关键概念 数组和散列表 数组的问题 hash的问题 线性探测 二次探测 双倍散列 分离链接 rehash 简介 java中和hash相关并且常用的有两个类hashTable和has ...

  5. [bzoj1691]挑剔的美食家

    考虑将奶牛和牧草放在一起,根据鲜嫩程度排序,那么显然就可以发现一个贪心策略:每一头奶牛一定选择当前剩余的最便宜且符合条件的牧草,然后用一个set维护价格即可 1 #include<bits/st ...

  6. 回顾Servlet开发

    1.建立的文件 2.servlet package com.shao.servlet; import javax.servlet.ServletException; import javax.serv ...

  7. Hi3516开发笔记(五):通过HiTools使用网口将uboot、kernel、roofts和userdata按照分区表烧写镜像

    前言   前面生成了uboot,kernel,sample,userdata(我们实际修改了ip的),rootfs,现在需要烧写进入核心板.   使用网口烧写镜像(海思烧写必须占用调试串口) 步骤一: ...

  8. 联盛德 HLK-W806 (五): W801开发板上手报告

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  9. nvm安装以及管理多版本node教程

    安装nvm.node.npm 下载nvm安装包,推荐使用1.1.7,我个人使用1.1.8会有中文乱码的报错 点击exe文件,注意修改nvm的安装根目录以及node的安装根目录,后者是以后管理多版本no ...

  10. RNA-seq 生物学重复相关性验证

    根据拿到的表达矩阵设为exprSet 1.用scale 进行标准化 数据中心化:数据集中的各个数字减去数据集的均值 数据标准化:中心化之后的数据在除以数据集的标准差. 在R中利用scale方法来对数据 ...