基于大数据分析的数据分区和采样方法研究

2020-12-08 02:12宋文强
数码设计 2020年16期
关键词:方法研究大数据

宋文强

摘要:无共享架构的计算机集群是大数据处理和分析的主要计算平台。在集群计算中,数据分区和采样是加快大数据计算和增加可伸缩性的两种基本策略。在本文中,我们对大数据处理和分析方面的数据分区和采样的方法和技术进行了全面的概述。另外,还总结了Hadoop集群上基于采样的近似方法的流行策略和相关工作。本文认为,应将数据分区和采样一起考虑,以建立在计算和统计方面均可靠的近似群集计算框架。

关键词:大数据;数据分区;方法研究

中图分类号:TP311.13   文献标识码:A   文章编号:1672-9129(2020)16-0045-01

1 介绍

现如今,大量数据正在源源不断地从商业交易,计算机模拟,移动设备,传感器,卫星,社交媒体等中生成。大量的数据可用于生成高价值的信息,用于决策支持,预测,商业智能,数据密集型科学的研究以及其他应用领域。传统技术,例如基于数据库和基于结构化查询语言(SQL)的关系数据库管理系统(RDBMS),对于处理如此庞大和复杂的大数据已变得不切实际。很难或不可能使用一台机器来分析TB级数据集,因此可伸缩的分布式计算架构已成为大数据分析框架的常见设计选择。在这些框架中,数据分区和采样是横向扩展和加速大数据分析算法的两种基本策略。本文提供的调查简要概述了支持Hadoop集群上的大数据分析的最常用的分区和采样方法。

“大数据”是当数据本身的大小成为问题的一部分时使用的标签。在计算集群上进行大数据分析的常见策略是分而治之。MapReduce计算模型用于在主流的大数据分析框架(例如Apache Hadoop和Apache Spark)中应用此策略。这些框架实现了无共享架构,其中每个节点在数据和资源上都是独立的。在Hadoop群集上,Hadoop分布式文件系统(HDFS)将大数据文件组织和复制为小型分布式数据块。研究表明,当数据大小足够大时,随着群集中计算资源的增加,基于分布式数据块的并行化会导致线性加速。实际上,可以通过向计算集群添加更多计算机来轻松扩展集群计算框架。但是,数据的增长速度可能会很快超过可用资源。

2 大数据框架

2.1大数据分析的集群计算概述。为了应对各种不同应用领域中不断增长的数据量,无共享架构的集群计算已成为构建大数据分析框架的常见范例。在無共享架构中,计算集群中的每个节点在数据和计算方面都是独立的。MapReduce计算模型是主流大数据分析框架中的基础模型。大数据文件被划分为小的非重叠数据块,并通过HDFS分布在计算集群的节点上。然后,使用具有两个常规操作的并行,分布式算法处理这些块:Map和Reduce。Map操作独立处理分布式数据块,而Reduce操作将Map结果积分以生成整个数据集的全局结果。

大数据技术包括分布式文件系统,分布式计算系统和大规模并行处理(MPP)系统。分布式文件系统,例如谷歌文件系统(GFS),HDFS和Microsoft Cosmos,提供了可伸缩且容错的存储解决方案。这些框架的最新进展(例如MapReduce,Hadoop和Cosmos / Dryad)简化了大规模和分布式数据密集型应用程序的开发。此外,已经提出了高级编程语言和概念数据模型。

基于Hadoop的计算集群已成为各种不同应用领域中大数据管理和分析的规范。Apache Hadoop和Apache Spark是在学术界和工业界使用最广泛的两个大数据分析框架。接下来,在讨论大数据分区和采样之前,我们将对这两个框架进行简要描述。

2.2 Apache Hadoop。Apache Hadoop是最完善的平台之一,支持海量数据的分布式和并行处理。它提供了一种通用的分区机制,可以使用MapReduce计算模型在不同的计算机之间分配聚合工作负载。它是一个多用途引擎,但由于其实现中的高吞吐量延迟,因此不是实时高性能引擎。Hadoop平台包含Hadoop内核,Hadoop MapReduce,HDFS,资源管理器(YARN)和许多项目(例如,Hive和HBase)。Hadoop MapReduce框架为处理大量分布式数据集提供了一种高效且可靠的编程环境。

2.3 Apache Spark。Apache Spark 是另一个开源的大规模数据处理框架。Spark引入了核心抽象,弹性分布式数据集(RDD),用于分布式内存中数据并行计算。弹性分布式数据集是在集群中的一组节点上分布或划分的元素(对象)的只读,不变且容错的集合。弹性分布式数据集支持两种类型的操作:转换和动作。动作(例如map()和filt())是确定性的,但是懒惰的操作定义了新的RDD,而没有立即对其进行计算。另一方面,动作(例如reduce(),count()和collect())在弹性分布式数据集上启动计算,然后将输出返回到驱动程序或将其存储在持久存储系统中。

3 大数据分析的近似集群计算

近似计算已成为应付计算集群上不断增长的数据量的常见且必要的范例。数据呈指数级增长,甚至比摩尔定律预测的计算能力还要快。如今,现代服务使用大数据分析系统来挖掘和提取数据中有价值的模式和趋势。处理这些数据非常昂贵。近年来,近似计算已成为减少大数据分析框架的计算资源使用,处理时间甚至能耗的有效的解决方案。与传统计算不同,近似计算是在较小的数据概要而不是整个数据集上进行的。许多数据算法可满足一个近似结果,而不是一个精确结果。

由于数字数据的增长快于计算能力的增长,因此近似计算已成为具有交互式响应时间的大数据分析的一项必不可少的技术。有时将近似计算与增量计算结合使用,在增量计算中,将对数据进行增量处理并相应地更新结果。此技术也称为增量近似计算。

在数据库中提出了各种各样的近似技术来进行近似查询处理,包括采样,草图绘制,直方图和在线聚集。这些技术最近已扩展到计算集群上的大数据。

4 总结

通过提高计算集群上大数据分析算法的可伸缩性,可管理性和性能,数据分区和采样可以带来巨大的好处。本文对大数据分析的分区和抽样技术进行了综述。尽管在计算群集上采用了关键的经典分区方案,但基于采样的新分区模型已成为提高可伸缩性的基础。此外,这对于保证所选样品的质量以及产生更准确的近似结果至关重要。

参考文献:

[1]刘张榕.基于大数据的半分布式僵尸网络动态抑制算法[J].计算机与现代化,2020(08):109-113.

[2]向鸿鑫,杨云.不平衡数据挖掘方法综述[J].计算机工程与应用,2019,55(04):1-16.

[3]袁喆,文继荣,魏哲巍,刘家俊,姚斌,郑凯.大数据实时交互式分析[J].软件学报,2020,31(01):162-182.

[4]王龙晖. 基于并行计算的调节阀大数据智能分析及建模方法研究[D].山东大学,2019.

猜你喜欢
方法研究大数据
如何提高学前教育专业声乐课的教学质量
数学教学中有效渗透德育方法的研究
大数据环境下基于移动客户端的传统媒体转型思路
基于大数据背景下的智慧城市建设研究
数据+舆情:南方报业创新转型提高服务能力的探索