专栏首页数据分析专栏聊聊这一款能真正匹配大数据性能的BI工具
原创

聊聊这一款能真正匹配大数据性能的BI工具

最近在看关于大数据、数据仓库 、数据架构的《数据架构:大数据、数据仓库以及Data Vault》一书,关于大数据有些思考,结合FineBI的Spider引擎,可看看Spider引擎对于大数据的阐释,以及在大数据平台架构中,可以处于什么样的位置。

大数据一直被定义为3W(数量大,速度快,多样性),但这些特征用于描述高速公路上运载的各种货物也没有问题。因此数仓之父 Inmon提出大数据的识别特征为:

(1)数据量大;

毋庸置疑,这条必须有。

(2)在廉价存储器中存放的数据;

以昂贵存储介质建立海量数据存储所带来的成本,将使得大数据处理无意义。因此大数据的存储介质需要廉价。

(3)以罗马人口统计方法管理的数据;

古罗马人想要对罗马帝国的每个居民征税,所以要做一次人口统计。起初视图让罗马帝国的每个公民穿过罗马城门计数。但是古罗马地域辽阔(当时包括北非、西班牙、德国、伊朗、以色列等等),居民分布广,这种方式不现实,需要使用一直集中式处理方法。最终决定组建一个人口统计团,各个人口统计员统一在城门集合,之后被派向各地,在约定的一天进行人口统计,之后在罗马城汇总数据。

海量数据处理也是这种方式,将数据处理方式发送给不同区域(分区)的数据,实现分布式数据处理。这样可以实现几乎无限数据量的数据处理。

(4)以非结构化格式存储和管理的数据。

总结下来,大数据就是以非结构化格式存储在廉价介质中的大量数据,需要以分布式处理方式来做数据计算。

而大数据平台的建设,要做的事情可就多了,未来还有更多未知与可能性。之前介绍过的数据平台阶段,各个架构设计等都是底部的一小部分。

而为了支撑数据分析服务的正常运行,带有敏捷数据集市的BI工具也就要与时俱进了。即使不为长远考虑,当下的快速展示问题也需尽快解决。从多个方面看,FineBI与其自带的Spider引擎,都服务于解决大数据量展示分析的问题。

FineBI是一款自助式分析工具,在功能上将数据准备工作与业务数据分析工作分开。提倡IT部门准备好数据,提供给其他数据部门或业务部门做自助分析或敏捷开发,让各个部门发挥各自长处,做各自最擅长的事情。解放IT部门压力的同时,也能让业务部门快速获得即席分析结果。

很多用户本身就有高性能数据查询引擎,或业务的实时性要求特别高,那就可以使用Spider引擎直接对接数据库,常规的大数据平台都可以支持,详细可以看上述文章。

然而,很多时候,BI工具需要一个为灵活自助分析提供的敏捷型数据引擎。也就是需要将数据抽取到中间层中存储下来,以便计算不受数据库影响,并且快速得到分析结果。抽取数据的情况下,FineBI默认的应用与数据引擎可以是一台服务器,数据量在亿级以内的情况下,展示速度十分优秀。由于没有网络传输的限制,本地计算效果会优于分布式扩展后的分布式计算效果。在数据量激增之后,就需要扩展之后的Spider分布式引擎,在功能实现上,依旧是将数据抽取到敏捷型数据集市中做分布式存储,从而对接前端的分析查询,实现快速分析展示。

以上的数据抽取或实时从数据库获取的方式可灵活切换,即数据既可来自数据库,也可以来自中间存储引擎,且这两种方式又可以任意切换,前端分析展示不受影响,从而在BI分析的各种应用场景中更加灵活。

下面回归正题,来看FineBI的Spider引擎对于大数据分析的阐释。

FineBI的Spider引擎基于ALLUXIO 、SPARK、 HDFS等大数据组件,结合自研高性能算法,解决了大数据量分析问题与展示时的性能问题。列式存储、并行内存计算、计算本地化加上高性能算法,保证在FineBI中快

速的数据分析展示。可横向扩展节点满足数据增长的需求,从架构上也保证了业务系统全年可正常使用。

下图来自帆软灵魂画手~

(1)大数据量存储上,首先面对大量级数据存储,回归前面的定义,需要有廉价的存储方式,能存储非结构化数据,能做分布式计算。那首先就想到Hadoop中的分布式文件系统——HDFS。HDFS的稳定性以及容错性机制都比较完善,Hadoop 2.X版本之后实现对HA的支持,可做到存储数据全年可用。自然,其在大数据领域的生态也比较好的~

但是HDFS的存储还是基于磁盘的,其I/O性能难以满足流式计算所要求的延时,频繁的网络数据交换进一步拖累了计算处理过程。因此我们引入Alluxio作为分布式存储系统的核心存储系统。Alluxio以内存为中心的存储特性使得上层应用的数据访问速度比现有常规方案快几个数量级。利用Alluxio的分层存储特性,综合使用了内存、SSD和磁盘多种存储资源。通过Alluxio提供的LRU、LFU等缓存策略可以保证热数据一直保留在内存中,冷数据则被持久化到level 2甚至level 3的存储设备上,将HDFS作为长期的文件持久化存储系统。

(2)存储上,hadoop的HDFS实现了分布式存储,而其自带的MapReduce计算性能有不足,且无法以标准格式对接外部应用,SQL On Hadoop 应运而生。其种类繁多,impala、Spark SQL、hive等都是大家熟知的。但是呢,选择什么方式不重要,大家的出发点都要能够实现大数据量情况下的并行分布式计算。

FineBI的Spider引擎的核心计算部分,也是SQL On Hadoop技术的实现。列式存储,数据字典压缩,分区与块级索引,数据本地化等SQL On Hadoop技术都得到应用。 类SQL设计与基于BI计算场景的优化,以及结合了内存分布式计算,使得大数据量下的展示速度达到秒级。

(3)内存计算:大数据平台中,内存计算服务也是很重要的一个模块。为了实现常用分析数据与计算场景可以快速展示,根据上述数据存储的原则,需要使用到的计算都是在内存中的,从而保证了计算速度最优。同时将不常用数据持久化到HDFS中备份下来,也减少了内存资源的占用。

综上,Spider引擎既可以是联结用户的数据平台与展示的中间层,实际不做数据存储与计算,只将结果进行最终展示。同时也可看作是大数据平台中的一个内存计算应用,将计算结果展示在FineBI前端。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 阿里数据总监教你数据分析:做好这三点,企业数据分析手到擒来

    百度搜索大数据,就会发现这是一个日均搜索达到4000K的热词,在头条上也是如此,只增不降。

    数据分析的那些事儿
  • Excel太烦、python太难,我用它就能轻松搞定数据可视化

    小李在一家连锁超市企业的IT部门,经常要帮业务部分做数据分析,公司信息化建设发展比较落后,IT部门也只有两个人,各种各样的数据表经常让小李加班加到头疼,每次辛辛...

    数据分析的那些事儿
  • 普通HR做半天的3种数据分析,学会这个,10分钟轻松搞定

    人力资源部门作为企业必不可少的部门之一,每年经手的数据量之大、类型之多可想而知。特别是在如今信息爆发式增长的时代,海量数据沉淀的背后是亟待挖掘的数据宝藏。

    数据分析的那些事儿
  • 适用于机器学习的18种最佳机器人数据集

    由于机器人技术的不断发展,机器人数据集变得越来越普遍。在医疗保健领域,旨在协助繁忙医院工作人员的机器人已经在测试中。在工业领域,各种各样的机器人用于焊接,清洁,...

    代码医生工作室
  • 存储世界,不止如此 : EB级存储引擎背后的技术

    每一个存储量级的突破,都意味着不同的挑战,本文阐述了由1PB到1EB的过程中,存储引擎背后的技术。

    TEG云端专业号
  • SQL自动化上线之alter语句

    关于SQL自动化上线,之前码了一篇简单的实现,发现大家对这块的关注还是比较多,通过一些反馈了解,感觉整体大家现在的SQL上线状态离自动化还有距离。

    jeanron100
  • 用几张图看懂大数据技术

    我们做政企客户的解决方案支撑工作,一直在跟客户提到“大数据”,通过大数据就能将数据转化成推动精准营销、精准管理的利器。但实际,我们对大数据的理解有多少,今天我们...

    希望的田野
  • PPT-Cozmo机器人之ROS和AI体验(训练)营-2019-ROS暑期学校

    版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons)

    zhangrelay
  • 混合云存储:大数据应用的上云之道

    ? 企业数字化转型过程中,数据价值被显著放大,大数据应用成为不少企业探索的重点。 从技术上看,大数据业务由于数据体量大,且数据量很多时候呈急速膨胀状态;在进...

    云存储
  • head first python选读(4):web 开发

    这个app.py是所有文件的入口。因此所有的文件都依靠这个文件进行交互。路径以根目录为主。

    一粒小麦

扫码关注云+社区

领取腾讯云代金券