大数据可视化理论及技术.docx
《大数据可视化理论及技术.docx》由会员分享,可在线阅读,更多相关《大数据可视化理论及技术.docx(9页珍藏版)》请在冰豆网上搜索。
大数据可视化理论及技术
大数据可视化理论及技术
(一)大数据可视分析综述
可视分析是大数据分析的重要方法。
大数据可视分析旨在利用计算机自动化分析能力的同时,充分挖掘人对于可视化信息的认知能力优势,将人、机的各自强项进行有机融合,借助人机交互式分析方法和交互技术,辅助人们更为直观和高效地洞悉大数据背后的信息、知识与智慧。
主要从可视分析领域所强调的认知、可视化、人机交互的综合视角出发,分析了支持大数据可视分析的基础理论,包括支持分析过程的认知理论、信息可视化理论、人机交互与用户界面理论。
在此基础上,讨论了面向大数据主流应用的信息可视化技术——面向文本、网络(图)、时空、多维的可视化技术。
同时探讨了支持可视分析的人机交互技术,包括支持可视分析过程的界面隐喻与交互组件、多尺度/多焦点/多侧面交互技术、面向Post-WIMP的自然交互技术。
最后,指出了大数据可视分析领域面临的瓶颈问题与技术挑战。
(二)大数据分析工具
大数据是一个含义广泛的术语,是指数据集,如此庞大而复杂的,他们需要专门设计的硬件和软件工具进行处理。
该数据集通常是万亿或EB的大小。
这些数据集收集自各种各样的来源:
传感器,气候信息,公开的信息,如杂志,报纸,文章。
大数据产生的其他例子包括购买交易记录,网络日志,病历,军事监控,视频和图像档案,及大型电子商务。
在大数据和大数据分析,他们对企业的影响有一个兴趣高涨。
大数据分析是研究大量的数据的过程中寻找模式,相关性和其他有用的信息,可以帮助企业更好地适应变化,并做出更明智的决策。
大数据分析的常用工具通常有以下介绍的几种。
4.2.1Hadoop
Hadoop是一个能够对大量数据进行分布式处理的软件框架。
但是Hadoop是以一种可靠、高效、可伸缩的方式进行处理的。
Hadoop是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
Hadoop是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。
Hadoop还是可伸缩的,能够处理PB级数据。
此外,Hadoop依赖于社区服务器,因此它的成本比较低,任何人都可以使用。
Hadoop带有用Java语言编写的框架,因此运行在Linux生产平台上是非常理想的。
Hadoop上的应用程序也可以使用其他语言编写,比如C++。
4.2.2HPCC
HPCC,HighPerformanceComputingandCommunications(高性能计算与通信)的缩写。
1993年,由美国科学、工程、技术联邦协调理事会向国会提交了“重大挑战项目:
高性能计算与通信”的报告,也就是被称为HPCC计划的报告,即美国总统科学战略项目,其目的是通过加强研究与开发解决一批重要的科学与技术挑战问题。
HPCC是美国实施信息高速公路而上实施的计划,该计划的实施将耗资百亿美元,其主要目标要达到:
开发可扩展的计算系统及相关软件,以支持太位级网络传输性能,开发千兆比特网络技术,扩展研究和教育机构及网络连接能力。
该项目主要由五部分组成:
高性能计算机系统(HPCS),内容包括今后几代计算机系统的研究、系统设计工具、先进的典型系统及原有系统的评价等;
先进软件技术与算法(ASTA),内容有巨大挑战问题的软件支撑、新算法设计、软件分支与工具、计算计算及高性能计算研究中心等;
国家科研与教育网格(NREN),内容有中接站及10亿位级传输的研究与开发;
基本研究与人类资源(BRHR),内容有基础研究、培训、教育及课程教材,被设计通过奖励调查者-开始的,长期的调查在可升级的高性能计算中来增加创新意识流,通过提高教育和高性能的计算训练和通信来加大熟练的和训练有素的人员的联营,和来提供必需的基础架构来支持这些调查和研究活动;
信息基础结构技术和应用(IITA),目的在于保证美国在先进信息技术开发方面的领先地位。
图4.1:
HPCC各部分之间的联系
4.2.3Storm
Storm是自由的开源软件,一个分布式的、容错的实时计算系统。
Storm可以非常可靠的处理庞大的数据流,用于处理Hadoop的批量数据。
Storm很简单,支持许多种编程语言,使用起来非常有趣。
Storm由Twitter开源而来,其它知名的应用企业包括Groupon、淘宝、支付宝、阿里巴巴、乐元素、Admaster等等。
Storm有许多应用领域:
实时分析、在线机器学习、不停顿的计算、分布式RPC(远过程调用协议,一种通过网络从远程计算机程序上请求服务)、ETL(Extraction-Transformation-Loading的缩写,即数据抽取、转换和加载)等等。
Storm的处理速度惊人:
经测试,每个节点每秒钟可以处理100万个数据元组。
Storm是可扩展、容错,很容易设置和操作。
4.2.4ApacheDrill
为了帮助企业用户寻找更为有效、加快Hadoop数据查询的方法,Apache软件基金会近日发起了一项名为“Drill”的开源项目。
ApacheDrill实现了Google'sDremel。
据Hadoop厂商MapRTechnologies公司产品经理TomerShiran介绍,“Drill”已经作为Apache孵化器项目来运作,将面向全球软件工程师持续推广。
该项目将会创建出开源版本的谷歌DremelHadoop工具(谷歌使用该工具来为Hadoop数据分析工具的互联网应用提速)。
而“Drill”将有助于Hadoop用户实现更快查询海量数据集的目的。
“Drill”项目其实也是从谷歌的Dremel项目中获得灵感:
该项目帮助谷歌实现海量数据集的分析处理,包括分析抓取Web文档、跟踪安装在AndroidMarket上的应用程序数据、分析垃圾邮件、分析谷歌分布式构建系统上的测试结果等等。
通过开发“Drill”Apache开源项目,组织机构将有望建立Drill所属的API接口和灵活强大的体系架构,从而帮助支持广泛的数据源、数据格式和查询语言。
4.2.5RapidMiner
RapidMiner是世界领先的数据挖掘解决方案,在一个非常大的程度上有着先进技术。
它数据挖掘任务涉及范围广泛,包括各种数据艺术,能简化数据挖掘过程的设计和评价。
4.2.6PentahoBI
PentahoBI平台不同于传统的BI产品,它是一个以流程为中心的,面向解决方案(Solution)的框架。
其目的在于将一系列企业级BI产品、开源软件、API等等组件集成起来,方便商务智能应用的开发。
它的出现,使得一系列的面向商务智能的独立产品如Jfree、Quartz等等,能够集成在一起,构成一项项复杂的、完整的商务智能解决方案。
PentahoSDK共包含五个部分:
Pentaho平台、Pentaho示例数据库、可独立运行的Pentaho平台、Pentaho解决方案示例和一个预先配制好的Pentaho网络服务器。
其中Pentaho平台是Pentaho平台最主要的部分,囊括了Pentaho平台源代码的主体;Pentaho数据库为Pentaho平台的正常运行提供的数据服务,包括配置信息、Solution相关的信息等等,对于Pentaho平台来说它不是必须的,通过配置是可以用其它数据库服务取代的;可独立运行的Pentaho平台是Pentaho平台的独立运行模式的示例,它演示了如何使Pentaho平台在没有应用服务器支持的情况下独立运行;Pentaho解决方案示例是一个Eclipse工程,用来演示如何为Pentaho平台开发相关的商业智能解决方案。
PentahoBI平台构建于服务器,引擎和组件的基础之上。
这些提供了系统的J2EE服务器,安全,portal,工作流,规则引擎,图表,协作,内容管理,数据集成,分析和建模功能。
这些组件的大部分是基于标准的,可使用其他产品替换之。
(三)数据化可视化分析综述
4.3.1信息可视化、人机交互、可视分析的基本概念
Card等人对信息可视化的定义为:
对抽象数据使用计算机支持的、交互的、可视化的表示形式以增强认知能力。
与传统计算机图形学以及科学可视化研究不同,信息可视化的研究重点更加侧重于通过可视化图形呈现数据中隐含的信息和规律,所研究的创新性可视化表征旨在建立符合人的认知规律的心理映像。
经过20余年的发展,信息可视化已经成为人们分析复杂问题的强有力工具。
人机交互的定义为:
人与系统之间通过某种对话语言,在一定的交互方式和技术支持下的信息交换过程。
其中的系统可以是各类机器,也可以是计算机和软件。
用户界面或人机界面指的是人机交互所依托的介质和对话接口,通常包含硬件和软件系统。
信息可视化的概念最早即是在ACM“用户界面软件与技术”会议中提出,其本质是一种交互式的图形用户界面范型。
人机交互的发展一方面强调研究智能化的用户界面,将计算机系统变成一个有思想、有个性、有观点的智能机器人;另一方面强调充分利用计算机系统和人各自的优势,弥补彼此的不足,共同协作来分析和解决问题。
大数据可视分析是指在大数据自动分析挖掘方法的同时,利用支持信息可视化的用户界面以及支持分析过程的人机交互方式与技术,有效融合计算机的计算能力和人的认知能力,以获得对于大规模复杂数据集的洞察力。
4.3.2支持可视分析的基础理论
可视化分析需要有多样的理论支持,而其中支持分析的主要认知理论模型、意义建构理论模型、人机交互分析过程的用户认知模型、分布式认知理论、信息可视化理论模型、信息可视化理论模型、人机交互与用户界面理论模型等,这些为大数据的可视化处理的实现提供了坚实的理论基础。
4.3.3面向大数据主流应用的信息可视化技术
大数据可视化技术涉及传统的科学可视化和信息可视化,从大数据分析将掘取信息和洞悉知识作为目标的角度出发,信息可视化技术将在大数据可视化中扮演更为重要的角色。
Shneiderman根据信息的特征把信息可视化技术分为一维信息(1-dimensional)、二维信息(2-dimensional)、三维信息(3-dimensional)、多维信息(multi-dimensional)、层次信息(tree)、网络信息(network)、时序信息(temporal)可视化20年来,研究者围绕着上述信息类型提出众多的信息可视化新方法和新技术,并获得了广泛的应用。
随着大数据的兴起与发展,互联网、社交网络、地理信息系统、企业商业智能、社会公共服务等主流应用领域逐渐催生了几类特征鲜明的信息类型,主要包括文本、网络或图、时空、及多维数据等。
这些与大数据密切相关的信息类型与Shneiderman的分类交叉融合,将成为大数据可视化的主要研究领域。
表4.1:
可视化的分类比较
可视化分类
文本可视化
网络(图)可视化
时空数据可视化
多维数据可视化
意义及影响
文本信息是大数据时代非结构化数据类型的典型代表,是互联网中最主要的信息类型,也是物联网各种传感器采集后生成的主要信息类型,人们日常工作和生活中接触最多的电子文档也是以文本形式存在。
文本可视化的意义在于,能够将文本中蕴含的语义特征(例如词频与重要度、逻辑结构、主题聚类、动态演化规律等)直观地展示出来。
网络关联关系是大数据中最常见的关系,例如互联网与社交网络。
层次结构数据也属于网络信息的一种特殊情况。
基于网络节点和连接的拓扑关系,直观地展示网络中潜在的模式关系,例如节点或边聚集性,是网络可视化的主要内容之一。
对于具有海量节点和边的大规模网络,如何在有限的屏幕空间中进行可视化,将是大数据时代面临的难点和重点。
除了对静态的网络拓扑关系进行可视化,大数据相关的网络往往具有动态演化性,因此,如何对动态网络的特征进行可视化,也是不可或缺的研究内容。
时空数据是指带有地理位置与时间标签的数据。
传感器与移动终端的迅速普及,使得时空数据成为大数据时代典型的数据类型。
时空数据可视化与地理制图学相结合,重点对时间与空间维度以及与之相关的信息对象属性建立可视化表征,对与时间和空间密切相关的模式及规律进行展示。
大数据环境下时空数据的高维性、实时性等特点,也是时空数据可视化的重点。
多维数据指的是具有多个维度属性的数据变量,广泛存在于基于传统关系数据库以及数据仓库的应用中,例如企业信息系统以及商业智能系统。
多维数据分析的目标是探索多维数据项的分布规律和模式,并揭示不同维度属性之间的隐含关系。
Keim等人归纳了多维可视化的基本方法,包括基于几何图形、基于图标、基于像素、基于层次结构、基于图结构以及混合方法。
其中,基于几何图形的多维可视化方法是近年来主要的研究方向。
大数据背景下,除了数据项规模扩张带来的挑战,高维所引起的问题也是研究的重点。
4.3.4支持可视分析的人机交互技术
信息可视化中的人机交互技术主要可概括为5类:
动态过滤技术与动态过滤用户界面、整体+详细技术与用户界面、平移+缩放技术与可缩放用户界面(ZUI)、焦点+上下文技术与用户界面、多视图关联协调技术与关联多视图用户界面。
根据上面对可视分析相关的任务建模的讨论,大数据可视分析中涉及的人机交互技术在融合与发展上述几大类交互基础之上,还需要重点研究对可视分析推理过程提供界面支持的人机交互技术以及更符合分析过程认知理论的自然、高效的人机交互技术。
(四)数据可视化的问题与挑战
大数据在可视化的发展过程中也面临着以下的问题和挑战。
(1)多源、异构、非完整、非一致、非准确数据的集成与接口
大数据可视化与可视分析所依赖的基础是数据,而大数据时代数据的来源众多,且多来自于异构环境。
即使获得数据源,得到的数据的完整性、一致性、准确性都难以保证,数据质量的不确定问题将直接影响可视分析的科学性和准确性。
大数据可视化的前提是建立在集成的数据接口,并且与可视分析系统形成松耦合的接口关系,以供各种可视化算法方便的调用,使得可视分析系统的研发者和使用者不需要关系数据接口背后的复杂机理。
可见,大数据的集成和接口问题将是大数据可视分析面临的第一个挑战。
(2)匹配心理映像的可视化表征设计与评估
科学/信息可视化领域经过几十年的发展,积累了大量各具特色的可视化表征,这将为大数据可视化提供有力的支持。
然而,绝大多数在当时看来创新的可视化技术,只能被少部分研究人员所接收,却难以获得广泛的认可和应用。
原因在于:
大量的可视化表征的创造仅仅在于追求技术角度的创新,而忽视了可视化尤其是信息可视化领域的本源——符合人的认知规律和心理映像。
针对大数据所固有的特点,未来仍将涌现更多的可视化表征。
(3)最大限度发挥人、机各自优势的人机交互与最优化协作求解
如前所述,人和机器各自拥有无可替代的优势,人具有机器所不具备的视觉系统以及强大的感知认知能力,并且具有非逻辑理性的直觉判断和分析解读能力,但是人的工作记忆却只有7个左右的信息块;而计算机拥有巨大的存储系统和强大的数据处理能力,能够根据数据挖掘模型在短时间内完成大规模的计算量。
因此,大数据可视分析的过程就是充分利用各自优势并且紧密协作的过程。
然而,目前大数据可视分析领域仍未能十分清晰和细致地界定在问题分析过程中,人机交互的多层次多粒度任务应该如何最优化地分布在人、机两侧。
而且,目前正处于从WIMP走向Post-WIMP的过渡期,各种交互技术如何最优的匹配具体的分析任务,仍有待深入的研究与验证。
(4)以用户为中心的系统设计与开发方法论、框架以及工具
随着互联网、物联网、云计算的迅猛发展,数据随处可见、触手可及。
政府的政策制定、经济与社会的发展、企业的生存与竞争以及每个人日常生活的衣食住行无不与大数据有关。
因此,未来任何领域的普通个人均存在着大数据分析的需求。
“人人都懂大数据、人人都能可视化”将是大数据领域的发展目标之一。
可视化领域大量极具潜力的创新技术,之所以未能从学术界推广至产业界,一个重要的原因是缺乏简单易行的、以用户为中心的系统设计与开发方法论、框架以及工具。
具体应用领域的用户往往不懂看似高深的可视化和交互技术,他们通常只提出问题需求或提供大数据。
如何能使得最终用户快捷方便地、自助式地实现大数据可视分析系统,满足自己的个性化需求,将是大数据可视分析走向大范围应用并充分发挥价值的关键。
(5)可扩展性问题
大数据的数据规模目前已经呈现爆炸式增长,数据量的无限积累与数据的持续演化,导致普通计算机的处理能力难以达到理想的范围。
同时,主流显示设备的像素数也难以跟上大数据增长的脚步,造成像素的总和还不如要可视化的数据多。
而且,大量在较小的数据规模下可行的可视化技术在面临极端大规模数据时将无能为力。
然而,大数据可视分析系统应具有很好的可扩展性,即感知扩展性和交互扩展性只取决于可视化的精度而不依赖数据规模的大小,以支持实时的可视化与交互操作。
因此,未来如何对于超高维数据的降维以降低数据规模、如何结合大规模并行处理方法与超级计算机、如何将目前有价值的可视化算法和人机交互技术提升和拓展到大数据领域,将是未来最严峻的挑战。