(一)交互式数据分析的特点
与非交互式数据处理相比,交互式数据处理灵活、直观、易于控制。系统和操作员以人机对话的形式提出问题和答案:操作员提出请求,以对话的形式输入数据,系统提供相应的数据或提示信息,指导操作员逐步完成所需的操作,直到得到最终的处理结果。这样,存储在系统中的数据文件可以英寸为单位进行处理和修改,而处理结果则可以立即使用。交互数据处理的这些特点可以确保及时处理输入信息,从而使交互继续进行。
(二)交互式数据处理的典型应用
在大数据量环境下,数据容量的快速膨胀是交互式数据处理系统面临的首要问题。以下是信息处理系统域和Internet域作为典型应用场景的介绍。
(1)信息处理系统领域。在信息处理系统领域,人机交互主要体现在信息处理系统中。传统的交互式数据处理系统主要基于关系数据库管理系统(DBMS),面向联机事务处理(OLTP)和联机分析处理(LAP)两种应用。OLTP是基于关系型数据库管理系统,广泛应用于政府、医疗、工业控制等领域,对操作顺序有严格的要求。基于数据仓库系统的LAP(数据仓库),广泛应用于数据分析、商业智能(BI)等领域。其中最具代表性的是数据挖掘,如BI中数据的切片和多粒度聚集,从而通过多维分析技术实现数据挖掘。分布式数据仓库,可以支持数千台服务器的规模。
(2)网络域。在互联网领域,它主要体现了人与计算机之间的交互作用。随着互联网技术的发展,传统的人机交互以简单的按需响应已经不能满足用户的需求,用户也需要交互。这种需求催生了互联网上各种交互数据处理平台。例如搜索引擎、电子邮件、即时通信工具、社交网络、微博、博客和电子商务,用户可以在这些平台上访问或共享各种信息。此外,还有各种各样的互动问答平台,比如百度的知识,新浪的爱问等。因此,用户和平台之间的交互变得更加容易和频繁。这些平台中数据类型的多样性使得传统的关系数据库不能满足交互式数据处理的实时性要求。目前,各种平台主要采用NoSQL型数据库系统来处理交互式数据,如HBASE采用多维有序表列存储,MongoDB采用SON格式的数据嵌套存储。大多数NoSQL数据库不提供连接等关系数据库的操作模式,以提高数据操作的实时性。
(三)典型处理系统
交互式数据处理系统的典型代表是Berkeley的Spark系统和Google的Dremel系统。
1.Berkeley的Spark系统
Smack是一个基于内存计算的可扩展开源集群计算系统。针对Map Reduce的缺点,即大量的网络传输和磁盘VO降低了效率,Spark利用内存计算数据,快速处理查询,并实时返回分析结果。SMACK提供了比Hadoop更高级别的API,同样的算法在Spark中运行的速度比Hadoop快100倍。SPark在技术上与Hadoop存储层API兼容,后者可以访问HDFS、HBASE、Sequence File等。火花-壳牌可以打开一个交互式星火命令环境,并提供交互式查找。
SMACK是针对集群计算中特定类型的工作负载而设计的,即在并行操作之间重用数据集的工作负载。Spark的计算体系结构具有以下三个特点。
(1)它有一个轻量级的集群计算框架。SMACK将Scala应用于其程序体系结构,而Scala是一种多范式编程语言,其特点是并发性、可扩展性和对编程范式的支持,可以轻松地添加新的语言结构。(www.xing528.com)
(2)大数据领域的数据流计算和交互计算。SPark与HDFS交互以获取数据文件,而SPark的迭代、内存计算和交互计算为数据挖掘和机器学习提供了一个良好的框架。
(3)良好的容错机制。Spark使用弹性分布式数据集(RDD)。RDD,它表示为一组只读对象,Scala对象分布在一组节点中。这些集合具有弹性,确保丢失数据集时可以重建丢失的数据集。
Spark因其在分布式数据集处理中的高效率而具有良好的应用前景。
2.Google的Dremel系统
Dremel是Google开发的交互式数据分析系统,主要用于分析只读嵌套数据。DRecl可以被组织成一个由数千个服务器组成的集群来处理PB级别的数据。传统的Map Reduce需要几分钟才能完成任务,而DMEL则可以将处理时间缩短到秒。作为Map Reduce的一个强大的补充,它可以通过Map Reduce将数据导入DMEL中,并使用DMEL开发数据分析模型。最后,在Map Reduce中运行数据分析模型。
DMEL作为大数据的交互式处理系统,在速度和精度上都可以与传统的数据分析工具或商业智能工具进行比较。DMEL系统具有以下五个特点。
(1)它是一个大规模的系统。将PB数据集上的任务缩短为秒需要大量并发性,磁盘上的顺序读取约为100 MB/s,因此在IS中处理1TB数据意味着至少同时读取10 000个磁盘。但是,机器越多,问题的概率就越大,这么大的集群规模,需要足够的容错考虑,以确保整个分析速度不受集群中单个慢(坏)节点的影响。
(2)DMEL是对Map Reduce缺乏交互式查询能力的有效补充。DMEL使用GFS文件系统作为存储层,它通常用于处理Map Reduce结果集成构建分析原型。
(3)数据模型嵌套(嵌套)。DMEL支持类似于Jsmi的嵌套数据模型。对于大规模数据的处理,不可避免地会出现大量的连接操作,但是传统的关系模型似乎比较薄弱,但是Drecl能够很好地处理相关的查询操作。
(4)Dremel中的数据以列形式存储。使用列存储,只能扫描执行数据分析所需的部分数据,从而减少CPU和磁盘通信量。同时,列存储是压缩好的,使用压缩结合CPU和磁盘,以最大限度地提高性能。
(5)将Web搜索技术与并行DBMS技术相结合。第一,借鉴Web搜索中“查询树”的概念,将一个较大而复杂的查询划分为较小、更简单的查询,并将其分配给大型并发TT节点。第二,与并行DBMS一样,Drecl可以像Hive和Pig那样提供一个与SQLHKE一样的接口。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。