应用Tableau、Vertica的可视化大数据分析框架

作者:张玺

大数据分析、企业BI、数据可视化等话题在坛子里日趋火热,新的技术,架构也层出不穷,今天借此文跟大家分享一款大数据下的联机分析(ROLAP)解决方案,它应用了当前主流的数据可视化工具Tableau及列存储数据库Vertica, 采用了IBM Platform Analytics数据采集框架和数据ETL(Extract, transform, load)框架完成对原始数据的采集和处理,提供可用于数据可视化处理的数据仓库,完成对业务数据的可视化分析。

数据可视化工具-Tableau

Tableau主要是面向企业数据提供可视化服务, 企业运用Tableau授权的数据可视化软件对数据进行处理和展示。

Tableau目前有三大软件产品:Tableau Desktop、Tableau Server以及Tableau Public。其中Tableau Desktop是一款PC桌面操作系统上(只支持windows系统)的数据可视化分析软件。Tableau Server则是完全面向企业的商业智能应用平台,基于企业服务器和web网页,用户使用浏览器进行分析和操作,还可以将数据发布到Tableau Server与同事进行协作,实现了可视化的数据交互。而Tableau Public是完全免费的,不过用户只能将自己运用Tableau Public制作的可视化作品发布到网络上即Tableau Public社区,而不能保存在本地,每个Tableau Public用户都可以查看和分享,而且Tableau Public所能支持的接入数据源的类型和大小都有所限制,所以Tableau Public更像是Tableau Desktop的公共网络版,重在体验和分享。

图片描述

图1 Tableau Desktop 编辑界面

Tableau 与SPSS、Matlab、Excel等软件的区别

Spss、Matlab、Excel是几个大家比 较熟知的数据分析软件,也都能进行数据的可视化。但Tableau Desktop可以说是一款完全的数据可视化软件,而Spss、Matlab、Excel则各有侧重。Tableau Desktop与之的区别是,Spss作为三大统计分析软件,比较偏重于统计分析,使用者需要一定的数理统计基础,虽然其也是功能强大且操作简单友好,但 其输出的图表在与办公软件的兼容性及交互方面有所欠缺,而Tableau Desktop专注的是结构化数据的快速可视化,使用者可以快速构建美观有效的数据可视化作品,并构建交互界面(通过发布到Server),但只是辅助分 析,辅助人们进行视觉化的思考,并没有像Spss那样强大的统计分析功能。Matlab的功能更加强大,但需要较为深厚的编程基础,比较适合科学方面的可 视化项目。Excel是最流行最常用的数据分析、数据绘图软件,但因其大量糟糕的图表设计案例从而在可视化领域广受诟病,而Tableau Desktop不仅图表美观,而且更加智能,可以自动地进行可视化形式的选择,而且Excel作为一款电子表格工具,其不适用大型数据集。

总之,快速、易用、可视化还是Tabeleau Desktop最大的特点,其能满足大多数企业、政府机构数据分析和展示的需要以及部分大学、研究机构可视化项目的要求,而且特别适合于企业,毕竟Tableau自己的定位也是业务分析和商业智能。

列存储式的数据库-Vertica

Veritica作为列存储数据库,提供了比传统行式存储数据库更快的查询操作。Vertica不仅仅按列式存储数据,还主动地根据列数据的特点和查询的要求选用最佳的算法对数据进行培续和压缩,这就大大降低磁盘I/O消耗。

图片描述

图2 Vertica的列式存储机制

在Vertica中,每列数据式独立地存储在连续的硬盘存储块中。这与传统行式数据库按行的顺序来连续存储数据有根本的不同。 Veritica支持延迟物化技术。对于大多数的分析查询而言,往往只需要获取所有列数据的一个子集。Veritca列式优化器和执行引擎可以在列式存储中跳过无关的列,从而节省了大量的I/O资源消耗。

从实际情况上来看,基于行存储的数据库更适合OLTP(联机事务处理系统),而基于列存储的数据库更适合OLAP(联机分析处理系统),比如数据仓库。除此之外,由于同一列必定是同一类型大小,基于列存储的数据库更容易使用高效的存储方式,与之相比较,基于行存储的数据库则只能采用随机方式处理列值了。

数据采集与ETL集成架构

数据采集与数据加工(ETL)应用了IBM Platform Analytics(以下简称PA)开放式框架,它集成vertica和tableau,实现了从数据采集,数据分析到最终可视化的完整解决方案,其架构如图3所示:

图片描述

图3 PA的集成架构图

Platform Analytics通过Analytics Data Collectors 进行原始数据的采集,并将采集到的数据写入数据库,存放在原始数据表中,Analytics Data Collectors被部署在一台主机上,一个Analytics Data Collectors包括不同的数据采集器,我们称之为dataloader。不同的dataloader负责采集不同类型的数据,这些loader 可以分为events loader,polling loader和database loader。events loader通过对log文件的解析,polling loader通过与系统API的交互定期采集实时数据,database loader则采集数据库中已经存储的数据。这些数据通过通过plc(platform loader controller)对dataloader进行管理,plc作为loader的主进程负责各个loader的定期调度。与此同时,还有一个wsm进程负责HA控制,检测plc的运行状况,在发现plc停止工作的情况下,wsm会自动重启plc,保证数据的及时采集。

除了单节点的PA node,PA node还采用了failover机制,一个loader可以被部署在多台主机上,一旦某台机子宕机,plc会以此被运行在下一个指定的host上。

原始数据写入到数据库后,Platform Analytics Server会调度ETL对数据进行Extract、Transform和Load,生成最终可用来数据分析的分析数据,这些分析数据存放在以RPT 开头的表中,不同的ETL根据自己特有的业务逻辑对原始数据有价值的信息进行提取和聚合。

在Platform Analytics Server上,每个ETL被定义为不同的task,在PA Console上,可以对这些task 的运行周期进行配置,定期调度这些task完成原始数据的Roll Up、Drill Down、Slice、Dice、Filter等操作。与此同时,Platform Server端还提供其他的功能,比如,数据的清洗,数据延迟的检测,用户数据的合并以及对数据库表中重复的数据进行删除操作。

最终的数据通过可视化工具Tableau Server展现,终端用户可以通过浏览器访问Workbook,对Workbook进行条件查询和数据筛选来查看符合条件的业务数据,可以通过定义Email Notification定时收到系统事件的反馈。

Platform通过以上的过程,完成数据的采集,加工及可视化展现,最终用户可以通过Web浏览器方便浏览Workbook,也可以通过与LSF的其他第三方产品(比如PAC)集成,方便用户定制和浏览Workbook。

图片描述

图4 Workbook 用例展示

结束语

PA目前利用自身提供的数据采集和ETL处理,以及与Tableau和Vertica的集成能够快速相应业务变化的需求,并满足当前的系统性能需求。下一步需要考虑的方向是:在日益增长的数据需求下,如何与其他开源框架的集成,进一步提高数据分析的效率,比如利用ELK来替代现有组件分析系统日志以及采用Spark框架并行处理ETL, 来降低数据周转时间,提高系统的运行效率, 这些都是PA下一步的研究方向。

作者简介:张玺, 2011年加入IBM至今,从事软件测试工作,研究方向为大数据分析,系统实时监控和数据可视化。
责编:周建丁(zhoujd@csdn.net)


2016年3月18日-19日,由CSDN重磅打造的数据库核心技术与实战应用峰会、互联网应用架构实战峰会将在上海举行。这两场峰会将邀请业内顶尖的架构师和技术专家,共同探讨高可用/高并发系统架构设计、新技术应用、移动应用架构、微服务、智能硬件架构、云数据库实战、新一代数据库平台、产品选型、性能调优、大数据应用实战等领域的热点话题与技术。

2月29日24点前仍处于最低六折优惠票价阶段,单场峰会(含餐)门票只需799元,5人以上团购或者购买两场峰会通票更有特惠,限量供应,预购从速。(票务详情链接)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Tableau是一款功能强大的数据可视化工具,它能够帮助用户将复杂的数据转化为易于理解和分析的可视化图表和仪表板。想要从入门到精通Tableau数据可视化,需要掌握以下几个方面的知识和技能。 首先,了解Tableau的基本功能和操作。用户需要学习Tableau的界面布局、数据连接和导入、图表和仪表板的创建,以及如何对数据进行筛选、排序和汇总等基本操作。 其次,学会使用Tableau的各种图表类型。Tableau提供了丰富多样的图表类型,包括柱状图、折线图、散点图、地图等,用户需要熟悉这些图表的特点和适用场景,并能根据需求选择合适的图表类型进行数据展示和分析。 再次,掌握Tableau的高级功能和技巧。Tableau提供了很多高级功能,如数据透视表、参数化计算字段、集成分析等,用户需要深入学习这些功能,以进一步优化数据可视化效果和提升分析能力。 另外,了解数据可视化的原则和设计理念也是非常重要的。用户需要学习如何选择合适的颜色、字体和图标,以及如何对数据进行有效的编码和映射,以提高可视化图表的可读性和吸引力。 最后,网站流量分析是Tableau的一个常见应用场景。用户可以通过Tableau对网站的访问数据进行分析和可视化,以了解用户的行为和趋势,进而优化网站设计和运营策略。在网站流量分析中,用户可以使用Tableau的交互式功能,通过筛选和联动等操作,深入挖掘数据背后的隐藏信息。 总而言之,要从入门到精通Tableau数据可视化,需要系统学习Tableau的基本操作和图表类型,掌握高级功能和技巧,了解数据可视化的原则和设计理念,并将其应用于实际的网站流量分析中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值