应用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下一步的研究方向。

本文转自d1net(转载)

相关文章
|
11天前
|
数据采集 人工智能 分布式计算
ODPS在AI时代的发展战略与技术演进分析报告
ODPS(现MaxCompute)历经十五年发展,从分布式计算平台演进为AI时代的数据基础设施,以超大规模处理、多模态融合与Data+AI协同为核心竞争力,支撑大模型训练与实时分析等前沿场景,助力企业实现数据驱动与智能化转型。
59 4
|
2月前
|
传感器 Java 大数据
Java 大视界 -- 基于 Java 的大数据实时数据处理在车联网车辆协同控制中的应用与挑战(197)
本文深入探讨了基于 Java 的大数据实时数据处理在车联网车辆协同控制中的关键应用与技术挑战。内容涵盖数据采集、传输与实时处理框架,并结合实际案例分析了其在车辆状态监测、交通优化与协同驾驶中的应用效果,展示了 Java 大数据技术在提升交通安全性与效率方面的巨大潜力。
|
2月前
|
存储 搜索推荐 算法
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
本文深入探讨了Java大数据技术在智能金融理财产品风险评估与个性化配置中的关键应用。通过高效的数据采集、存储与分析,Java大数据技术助力金融机构实现精准风险评估与个性化推荐,提升投资收益并降低风险。
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
|
28天前
|
存储 供应链 数据可视化
Java 大视界 -- 基于 Java 的大数据可视化在企业供应链风险预警与决策支持中的应用(204)
本篇文章探讨了基于 Java 的大数据可视化技术在企业供应链风险预警与决策支持中的深度应用。文章系统介绍了从数据采集、存储、处理到可视化呈现的完整技术方案,结合供应链风险预警与决策支持的实际案例,展示了 Java 大数据技术如何助力企业实现高效、智能的供应链管理。
|
28天前
|
存储 SQL Java
Java 大视界 -- Java 大数据在智能医疗手术风险评估与术前方案制定中的应用探索(203)
本文探讨了Java大数据技术在智能医疗手术风险评估与术前方案制定中的创新应用。通过多源数据整合、智能分析模型构建及知识图谱技术,提升手术风险预测准确性与术前方案制定效率,助力医疗决策智能化,推动精准医疗发展。
|
2月前
|
机器学习/深度学习 Java 大数据
Java 大视界 -- Java 大数据在智能政务公共资源交易数据分析与监管中的应用(202)
本篇文章深入探讨了 Java 大数据在智能政务公共资源交易监管中的创新应用。通过构建高效的数据采集、智能分析与可视化决策系统,Java 大数据技术成功破解了传统监管中的数据孤岛、效率低下和监管滞后等难题,为公共资源交易打造了“智慧卫士”,助力政务监管迈向智能化、精准化新时代。
|
2月前
|
数据采集 机器学习/深度学习 Java
Java 大视界 -- Java 大数据在智能体育赛事运动员体能监测与训练计划调整中的应用(200)
本篇文章聚焦 Java 大数据在智能体育赛事中对运动员体能监测与训练计划的智能化应用。通过构建实时数据采集与分析系统,结合机器学习模型,实现对运动员体能状态的精准评估与训练方案的动态优化,推动体育训练迈向科学化、个性化新高度。
|
2月前
|
机器学习/深度学习 分布式计算 Java
Java 大视界 -- Java 大数据机器学习模型在遥感图像土地利用分类中的优化与应用(199)
本文探讨了Java大数据与机器学习模型在遥感图像土地利用分类中的优化与应用。面对传统方法效率低、精度差的问题,结合Hadoop、Spark与深度学习框架,实现了高效、精准的分类。通过实际案例展示了Java在数据处理、模型融合与参数调优中的强大能力,推动遥感图像分类迈向新高度。
|
2月前
|
存储 Java 大数据
Java 大视界 -- Java 大数据在智能家居能源消耗模式分析与节能策略制定中的应用(198)
简介:本文探讨Java大数据技术在智能家居能源消耗分析与节能策略中的应用。通过数据采集、存储与智能分析,构建能耗模型,挖掘用电模式,制定设备调度策略,实现节能目标。结合实际案例,展示Java大数据在智能家居节能中的关键作用。
|
2月前
|
存储 搜索推荐 算法
Java 大视界 -- Java 大数据在智慧文旅旅游线路规划与游客流量均衡调控中的应用实践(196)
本实践案例深入探讨了Java大数据技术在智慧文旅中的创新应用,聚焦旅游线路规划与游客流量调控难题。通过整合多源数据、构建用户画像、开发个性化推荐算法及流量预测模型,实现了旅游线路的精准推荐与流量的科学调控。在某旅游城市的落地实践中,游客满意度显著提升,景区流量分布更加均衡,充分展现了Java大数据技术在推动文旅产业智能化升级中的核心价值与广阔前景。

热门文章

最新文章