APP下载

Spark on Yarn模式的电信大数据处理平台

2023-07-17纪贵

计算机应用文摘 2023年13期

摘要:针对电信大数据处理系统中存在的问题,文章提出一种基于Spark on Yarn模型的SY-TPP。在SY-TPP平台上,应用Hadoop2.0 Yarn标准,并利用Spark分布式存储技术,将SY-TPP系统的数据在内存中进行集中处理。以分级聚类算法为案例,对SY-TPP平台的开发过程进行了详细的分析。实验结果表明,TPP平台上的GB级用户可以在半个工作日内完成数据处理,而32个实体节点的sYTPP系统的速度比相同配置下的Map Rcduce平台提高了10.25倍。

关键词:电信;大数据处理;Spark on Yarn模式

中图法分类号:TP311 文献标识码:A

1 引言

Map Reduce 的首个版本是MRvl, 而Yarn(Yeanother resource negotiator) 在一定程度上弥补了MRv1 的不足。MRv2 的Yarn 可以被看作是一个专门针对大数据处理的资源分享架构, Yarn 的一个更好的实现方式是Spark On Yarn,这是由于Spark OnYarn 能够最大限度地存储数据,发挥Spark 的分布式存储能力。本文对其设计思路和具体实施流程进行了详细的介绍,其在通信领域中的应用性能优于以往的串行运算和Map Reduce。

2 SY⁃TPP 平台的设计思路

2.1 总体设计思想

SY⁃TPP 是一个云计算平台,若要实现服务理念,则必须将互联网上的虚拟资源按照租用的形式提供给用户,尽可能地将大数据碎片集中到存储器或本地磁盘上,并减少子任务重启或存取磁盘的I/ O 开销。

在功能实现上,将SY⁃TPP 分为4 个模块:存储和访问、资源分配和调度、应用执行、用户。其主要功能包括在自治区域中共享闲置计算资源、处理电信大数据应用、电信数据分级聚类算法、电信数据分类算法等。

2.2 大数据存储与访问模块

该模块充分发挥了Hadoop 框架的优点,由于Hadoop 的分布式档案管理系统能够储存大量的资料,使得大量的资料能够跨越多个实体的节点。但Hadoop 中的MapReduce 规格也有一些限制,即每次启动都需要消耗大量的磁盘资源,导致系统的运行速度会越来越慢,而Spark 的内存架构则会让整个系统的数据存储和存取能力得到极大的提升。

2.3 资源分配与调度模块

基于上述分析,由于云计算采用了虚拟化技术,在资源分配和调度方面,其子任务以一种虚拟机形式存在,在一些文献中被称为“工作单位”,它可以在实际的实体节点上运行多台虚拟机器(工作单位),因此需要考虑调度策略、容错策略等。

调度策略所要解决的问题就是如何将虚拟机分配到最适合的实体节点上,并需要采用某种策略。比如,要考虑物理节点的负载最小、物理节点的可靠性最高、物理节点的硬件配置最高、CPU 使用率最小等。

最好的效果是通过虚拟机器,可以让SY⁃TPP 平台在最需要的实体上进行动态的定位。因此,在SY⁃TPP环境中,虚拟机的排程是一个非常关键的问题。

在SY⁃TPP 系统中,一些物理节点由于故障而退出,因此需要进行资源配置和调度,以保证系统整体的正常运转。基于此,SY⁃TPP 平台采用了冗余的方法和高效的策略,即数据的冗余度和分布式存储,以确保数据的可靠性。

3 平台业务功能需求说明

3.1 解析数据说明

在这个平台中,最主要的输入文件就是大量的LTEMR 测试报告,其描述如下。

在TD⁃LTE 系统中,3 GPP 技术标准作为一个系统的重要组成部分,它的作用是显而易见的。这种测量报告可以定期上报,也可以根据事件向系统汇报,定期上报的话,会根据时间的长短自动上报,若以事件为基础,则不会给出这样的定义。测量报告是由真正的使用者提供的,这样可以让使用者更好地掌握网络的运作。通过对数据的统计与挖掘,可以对大量的网络问题进行分析。测量数据比路测有较多优势,其采集费用低,且数据量大,即使是在不能到达的地方,也能得到相应的信息。

测量报告中所使用的数据,一般都是从手机和社区中收集到的,或者是系统计算出来的。初步收集的测量报告资料在传送至OMC⁃R 后,将对其进行一系列的处理,以产生MRO 及MRS 档案。

3.2 数据解析功能模块

数据分析模块包含2 部分。(1)指定城市的名字和时间,然后从相应的hdfs 文件中提取出相应的Mro文件,并进行分析,以便于后续的数据分析,在分析时,还会进行一些简单的运算。(2)在确定城市的名字和时间后,从相应的hdfs 目录中提取该地区的mrs 文件,并根据需求生成相应的文件,将相应的数据存储在目录中。2种功能均由spark 集群直接完成,所有的文件资料都存储在hdfs 集群中,并使用scala 程序进行分析。

4 基于复杂网络大数据处理

4.1 静态数据研究

电信业务的数据结构是随时间而变化的,是一种典型的多维数据,其主要目的是使某一段时间内某一城市、某一地区的通话形成一个典型的网络。本文从度与度分布、平均路径长度、群集系数3 个方面展开。

“度”的含义是指与这个网页节点相关联的其他网页节点的数量。在实际的通信数据研究中,主要是指一个人与另一个人通话的数量。在一个用户节点中,呼出和呼入的次数可以划分为出度和入度。所有用户節点的平均值叫做网络的平均度。从复杂网络的角度来看,不管是出度还是入度的大小,都与用户的重要程度有直接关系。每个用户节点都具有很高的输出和进入度,是网络中的核心节点,需要通过这些节点把其他用户连接起来[1] 。

在复杂网络中,平均路径是衡量网络中2 个节点间最小边数目的一个重要指标。平均路径长度是衡量网络传送能力的一个重要指标,拥有更短的路径长度可以减少发送时延,并在网站查询中起着关键的作用,以上所述的网络平均路径长度为4.2,平均每月的网络直径约20,而总网络直径约为15,这就说明此网络的结构紧凑,能够确保使用者在最短时间内找到所需之物。

聚类系数用来表示一个网络连结的集合程度,即网络连结的密集程度。在网络连结中存在多个邻近节点时,其邻近节点间亦有可能为邻居。Watts 和Strogatz 首先发现很多网络的聚集系数远大于相同节点规模的随机网络。

4.2 动态数据研究

电信企业的大数据分析具有独有的特色,即用户行为具有强烈的“生命周期”特性,而时间演进是通信業务数据复杂网络化的内在特性,任何一个网络都会随着时间的推移而发生变化,但数据分析不能以秒、分、时等单位来进行。由于单位数据的数量是非常有限的,因此要把握客户的核心业务价值,并制定出相应的市场战略,从而对每一个通话所产生的数据进行分析。

将以上资料输入到一个复杂的网络分析软件中,包含通话日期、通话时长及基地台信息。经计算后,可以得到许多使用者对网络资料使用者的分析。首先,其具有明显的聚集效应,他们的通话概率是普通用户的2~3 倍,活跃程度越高,在网好友数量越多,离网的可能性就越低。其次,挖掘出用户的一些特点和喜好,有利于了解用户的消费习惯,制定不同的套餐,减少运营成本。最后,根据基站数据资料,可以判断出使用者的活动区域及负荷情况,从而为电信公司做好基站的建设规划。

4.3 社团挖掘研究

复合网络社团是指,在一个网络中可以把1 个顶点划分为若干个群,其中1 个顶点之间的联系比较紧密,而多个顶点之间的联系非常少。在通信企业的数据分析中,社团组织是一个非常关键的环节,是理解通信企业整体结构与功能的一个重要手段。对于通信运营商来说,尽管组织规模和数量都不清楚,而且成员数量也会随着时间的推移而发生变化,但是网络的组织结构具有明显的层次性,可以看到高、低密度的社团组织。

当前,很多基于复杂网络的社团网络分割算法都是在K⁃means 的基础上发展起来的。K⁃means 经典算法的基本思路是:将k 个点集中在一个空间上,然后根据距离最近的物体进行分类。采用迭代法,对各个簇中心进行逐次更新,直到获得最佳的聚类效果。在通信大数据环境中,K⁃means 算法在分类效果、实际运行时间等方面具有很好的应用价值。根据以上资料对K⁃means 算法的社团划分进行分析,得出3 个包含59 个、29 个和6 个用户的明确组织[2] 。

5 SY⁃TPP 平台的设计

5.1 Spark 内存计算框架的选取

在SY⁃TPP 平台上进行模块的设计,需要选用适当的程序模型来完成,本文选取雅恩(Map ReduceMRv2)和Spark 存储器的运算方式。

Spark 架构和Hadoop Yarn 的组合使得大数据处理的效率更高。关于Spark 网络,目前已经有了大量的文献描述。Spark 是一个开放源码的云计算平台,其核心部分可以和Yarn 云平台结合。其工作原理是将Spark 作为一个应用程序在Yarn 平台上运行。要注意的是, Map Reduce 只是与DryaLINQ 以及Google的Map Reduce 一起使用云计算程序,但其源代码通常不对外公开。

5.2 SY⁃TPP 各个模块的实现

在海量数据的存储和存取方面, Yarn 将利用HDFS 技术对电信大数据进行存储,Hadoop2.0 保留了命名节点和数据服务器节点。

完成任务的分配和调度,SY⁃TPP 平台还参照Yarn的规格,使用RM,Application Master (AM)和Yarn 技术报告的细节。在Yarn 的规格中,应用程序执行模块的实现是Yarn 规范中的节点管理器NodeManager 和容器管理器Container,具体的说明请参阅Yarn 的网站。

Yarn 的应用程序控制器Master 还负责监视和追踪应用的运行状况,同时还负责客户机模块的工作。

5.3 大数据处理工作机制

以电信大数据分类聚类算法为实例,对SY⁃TPP系统的工作过程和代码进行了分析。假定相似度分类聚类的迭代次数为K 次。

由于SY⁃TPP 平台存储计算Spark 架构,因此还需要考虑Spark 和Yarn 的融合问题。Spar 在资源管理与作业调度中的一个模式就是Spark on Yarn,使用Yarn 模型来实现它也很简单。

Spark on Yarn 模式也包括主控和工作人员。用户编写是将Spark 作为Yarn 平台的一种特定的应用,通过Spark 将其与Master 相连接,并对每个RDD 进行操作[3] 。

6 SY⁃TPP 平台的实现

6.1 大数据应用的选取

在通信大数据中,很难在一定的时间内对用户的行为进行分析,因此,可采用Spark on Yarn 模式下的SY⁃TPP 进行计算,并将其与传统的单机串行运算和Map Reduce 算法相比较。

6.2 硬件环境的配置

基于对SY⁃TPP 系统的设计及实施和HadoopYarn 架构的研究,本文采用基于网络中心的PC 平台,其具有较高的带宽、稳定性和空闲率,非常适合大数据处理的测试。

在硬件配置上,SY⁃TPP 有33 个真实PC 的物理节点,其中Intel 3.0 GHz 4 核心,8 GB 内存,l TB 硬盘,2∗千兆网络端口;工作机节点CPU 型号是3.0GHz,8 GB 内存。硬盘的容量是1 TB,而交换机是每秒1 000 兆字节。

6.3 软件环境的配置

在软件配置上,部署Master 机1 个、Worker 机32个。在安装好操作系统后,会对Spark on Yarn 模式进行JRE1.6 版和1.4 版Spark 配置。该软件完成了HDFS 文件和Yamn 的规格[4] 。

6.4 实验结果与讨论

一份15 GB 的文件,13 250 秒的通信运营商的用户行为数据,能够满足科研人员的工作时间,并且超过了Map Reduce 的旧软件。加速速度随工作台数目(n)平稳上升,尽管与线性增长还有一段距离,但计算速度却小于Map Reduce。

在SY⁃TPP 中,多个物理节点可以有效降低数据传输速度,这表明SY⁃TPP 在通信领域中的数据处理速度快,优于Map Reduce。这是因为Spark 的存储器运算大部分都是为高数据应用而设计的,这样可以降低MapReduce 中的存取硬盘和虚拟机的启动费用。

7 结束语

本文SY⁃TPP 并不是为通信产业的具体应用而设计,其他高效能的数据密集型应用也可以在SY⁃TPP平台上进行。在Hadoop2.0 的Yarn 技术规范中,还需进一步对其进行优化,将SY⁃TPP 平台配置到广域网或者因特网中进行测试。

参考文献:

[1] 张瑞.基于复杂网络的电信大数据处理研究[J].现代情报,2014,34(6):66⁃69+74.

[2] 杨玉,张远夏.Spark on Yarn 模式的电信大数据处理平台[J].福建电脑,2019,35(3):34⁃38.

[3] 曲荣波.基于复杂网络的电信大数据处理研究[J].信息记录材料,2016,17(6):19⁃21.

[4] 张思航.基于Hadoop 的电信大数据处理的研究及应用[D].北京:华北电力大学,2017.

作者简介:纪贵( 1975—), 本科, 研究方向: 大数据技术、云计算技术。