云计算环境下大规模图数据处理技术的相关思考
2022-11-25刘磊
刘 磊
(连云港市人力资源和社会保障局,江苏 连云港 222006)
图数据是计算机科学中最为常见的一种抽象数据类型,内容复杂,表述能力强,而且需要处理的元素多,难度高。尤其是在现如今的大数据时代,各种图数据层出不穷,其中包含众多无效数据,形成了大规模的图数据资源。为了高效、准确地进行图数据处理,必须对图数据处理技术进行创新与优化。云计算环境下,给图数据处理技术的应用提供了更多的便利条件,同时带来了技术的优化,很大程度上提高了处理技术应用有效性,在大规模图数据处理中发挥出更好的作用。
1 云计算及图数据
“云计算”又称“网格计算”,是对复杂计算过程进行分布式分解,解决任务分发,再将计算结果进行合并,得到最终的计算结果。云计算与传统的网络应用模式进行比较,应用优势包括虚拟化技术、动态可扩展、灵活性高、可靠性高、按需部署、可扩展性及性价比高等优势与特点[1]。云计算可以提供基础设施即服务、平台即服务以及软件即服务三类服务类型,通过体系结构、资源监控、自动化部署等关键技术实现计算过程。云计算的框架以及应用过程需要依托先进互联网技术,形式众多,主要包括网络服务、平台服务、互联网整合、商业服务以及管理服务提供商等。
“图数据”一般代表的是图形数据,包括图元、图段,其中图元包括点、线、面、字符、符号等,图段由多个图元构成,例如房屋门、窗等。随着互联网的快速发展,图数据规模越来越大,图数据处理的难度也随之升高,对图数据处理技术应用效率与质量均提出新的要求,以此推动图数据处理技术的优化。在云计算环境下,为大规模图数据处理技术带来了技术应用优势,使其可以提高处理效率,对于大规模图数据处理有重要意义。
2 云计算环境下大规模图数据技术优势
2.1 大规模图数据存储、维护
大规模图数据对存储空间的要求非常多,其中最重要的一点就是需要一个很大的存储空间,达到GB级别,甚至PB级别,数据量非常大。较大的数据占用空间,就给大规模图数据处理造成了困难,因为想要处理大规模的图数据,首先要有足够大的空间进行数据存储,然后才能对可查找和调用的图数据进行处理,获得其中有效的信息,将无效图数据删除等[2]。大规模图数据所需要的存储空间是传统文件的数倍、几十倍乃至上百倍,对数据库内存的要求远远大于传统文件,使得大规模图数据在传统文件数据库中无法被直接运用。云计算环境下,大规模图数据技术的应用,可以利用云计算的分布式存储形式,将大规模的图数据存储起来,根据图数据处理的实际情况,将目前需要使用的图数据集中起来并进行统一存储,对暂时不需要的图数据可以进行额外存储,从而使得对大规模图数据进行存储的时候不需要很大的内存空间,即可实现图数据使用和处理。另外,在云技术环境下对大规模图数据进行处理的时候,进行图数据维护过程中可以实现一致性与统一性,对大规模图数据统一备份并保存在云端,避免电脑系统故障造成图数据丢失、损坏,保证了图数据的安全性。
2.2 大规模图数据处理耦合性
大规模图数据之间存在着大量互相关联的内部信息,且图数据的计算也存在相互关联关系。而利用传统的图数据处理技术进行大规模图数据计算时,只能进行低运算状态,对于图数据内存访问表现比较低级,使得大规模图数据处理具有一定局限性。云计算环境下,大规模图数据处理技术应运而生,将大规模图数据的计算准确性有效提升,同时也获得更高的可行性[3]。云计算环境下大规模图数据处理技术实际运用时,可以准确计算任何一个顶点之间的图数据,并通过分割图数据将其转变为完全独立的子图数据,再进行处理分析,提高了图数据处理效率。在对大规模图数据进行处理时,可以通过云计算图数据处理模式来实现,在分割大规模图数据时将子图数据之间的耦合性尽量降低。同时可以在处理大规模图数据时将任务调度开销减少,利用图数据处理模式减少因为迭代过程中对任务的反复启动而出现的开销。云计算环境下大规模图数据处理技术的应用,实现了对图数据的单项信息逐条处理与计算,再通过分割图数据,获得子图数据进行有效信息提取和处理,提高图数据处理效率,节省处理时间,获得更高的效益。
2.3 大规模图数据处理可靠性
大规模图数据处理技术在应用的过程中,技术人员需要花费很长时间去处理图数据的计算任务,导致图数据处理效率低下,并降低了云计算节点对大规模图数据处理的可靠性[4]。以处理PageRsnK的过程为例,在进行图数据计算时一般需要迭代处理工序30次左右,计算期间资源消耗以及时间消耗都非常大。在云计算环境下,可以借助云计算的技术应用优势以及计算框架、模式,对图数据计算过程中遇到的各种问题进行全面解决,创新图数据处理技术应用方案,提高处理效率。普通计算机可以组成云计算节点,在对大规模图数据进行计算和处理期间,如果个别计算机出现运行故障,就会形成节点故障、瘫痪,对云节点使用的可靠性造成严重影响。云计算环境下大规模图数据处理技术的优化与应用,在遇到云计算节点中断时,可以从断点处或者其他合适位置对图数据的计算处理继续执行,解决了云计算节点发生故障后图数据处理中断的问题[5]。同时,以往图数据处理过错中容易在计算任务间出现强耦合性干扰,子图数据计算任务失败会直接关联其他正在运行的任务。云计算大规模图数据处理技术的应用实践,则可通过容错管理机制的设定,将子图数据之间的强耦合性问题减少,使得云计算节点可靠性提升。
2.4 图数据处理灵活性高
在云计算环境下,对大规模图数据进行处理的过程中,利用云计算的技术原理以及技术优势,在实现对图数据快速存储的基础上,还可以对图数据进行快速处理,在获取图数据的同时,在短时间内从大规模图数据中获得有效的数据信息,提取关键信息。另外,在云计算技术支撑下,大规模图数据的处理灵活性得到提高,针对不同的大规模图数据可以采取与之相对应的处理方式,数据量弹性提高,在普通计算机的使用下即可完成复杂、大量的图数据处理。与此同时,对大规模图数据进行处理时,还可以根据实际需求对图数据规范进行扩大,扩展数据存储能力,使得计算机在处理大规模图数据过程中的消耗降低。
2.5 提升图数据处理能力
云计算环境下进行大规模图数据的处理,可以实现图数据的平行处理,借助图数据分割模式对大规模图数据进行简化处理,将较大的图数据根据一定规则分割为若干个较小的图数据,一方面可以方便云空间、计算机内存对图数据的存储,一方面降低了图数据处理过程中的计算难度,提升了计算机对图数据的处理能力,提高了处理效率,并且为更大规模的图数据处理提供了便捷条件。
3 云计算环境下大规模图数据处理技术应用
3.1 大规模图数据存储技术应用
云计算环境下大规模图数据处理技术应用获得良好发展,其中大规模图数据存储技术应用解决了大规模图数据传统管理模式下存储空间不足问题,并且可以获得更加安全的存储效果。大规模数据包括单图数据、超图数据2种模型,在对图数据进行处理的过程中,可以通过有向图方式,或者无向图方式进行处理应用。云计算环境下大规模图数据存储技术可以将图数据以分布式文件、分布式数据库2种形式对大规模图数据进行存储[6]。GFS以及HDFS是分布式文件系统的主要代表形式,可以将邻接表、矩阵等不同结构的图数据进行直接存储。Big、Hbase是分布式数据库存储形式的代表,可以通过数据库模型将大规模图数据分为文档存储和KV存数模型等。文档存储具有较强的灵活性,以及较高的便捷度,在非结构化图数据存储中比较适用。文本中涉及的大规模图数据存储则适用于KV存储模型,主要特点是模式简单,可以进行海量存储。以邻接表形式图数据的存储为例,通过KV存储模型对其存储时,可以将图数据源顶点设置为Key,将点的值与出边信息以Value为设定,使得图数据的合并处理、迁移处理都更加容易,对原有空间局部性进行提升,并使得图数据读取和查询期间的次数减少,提高图数据整体处理效率。
3.2 大规模图数据计算技术应用
云计算环境下大规模图数据处理技术应用中,计算技术应用最为广泛,可以利用的云计算包括Map Reduce模型、BSP模型2种类别,使得大规模图数据计算效率与质量显著提升[7]。第一,在对大规模图数据进行计算时,应用Map Reduce模型,可以将计算过程划分为Map与Reduce两个独立任务实现,对大规模图数据的计算处理也被划分为2个阶段。其中Map计算阶段可以将任务分配的数据进行逐一计算,并将key值输出。key值得到确认后会在相对应的Reduce任务中进行数据映射。Reduce阶段则会在任务阶段接收到由Map传递的数据处理请求,并对图数据进行聚集,从中得到输出结果,并在分布式文件系统中存储。应用BSP模型进行大规模图数据计算时,可以避免死锁、图数据竞争问题,是一种以消息通信为基础的数据计算、执行模式。云计算环境下大规模图数据计算的主要技术应用就是Map Reduce模型、BSP模型,适用范围稍有不同。两种模式之间存在互补关系,在迭代处理的执行效率上BSP模式的优势更大。
3.3 大规模图数据分割技术应用
云计算环境下大规模图数据处理一般需要进行图数据分割,以此实现图数据的分布式存储并行计算。大规模图数据的分割及处理都需要借助云计算分布式模式,并且利用图数据之间的连通性,降低子图之间的耦合性,以此提高图数据处理效率。子图数据的耦合性降低主要通过分割技术实现,首先需要在大规模图数据基础上,对其进行有逻辑、结构完整的大图分割,并将分割后的图数据在云计算分布式存储系统中的各个节点进行分别放置[8]。其次,启动与所有子图数据对应的分布式计算任务,完成大规模图数据的分布式计算。在获得处理结果并完成输出以后,大图数据的处理已经完成。在对大规模图数据进行处理的过程中,图数据分割是一个重要环节,分割效果理想,是保证大规模图数据处理成功的前提保障与关键所在。因此在对大规模图数据进行分割处理时,需要对图数据内部的连通性以及子图之间的规模均衡情况进行全面考虑。一方面需要减少子图之间的连通性,使得云计算分布式并行处理的应用得到提升;一方面还需要确保子图规模均衡,减少因为偏斜而影响图数据计算任务的同步性,降低处理效率与质量。
3.4 大规模图数据查询技术应用
云计算环境下,对大规模图数据进行查询的过程中,需要使用到的模式主要包括遍历模式,其又分为主动遍历模式与被动遍历模式。与传统的大规模图数据查询技术部相比,图数据遍历查询技术的应用普遍适用性更强,且可以不对处理函数进行调用就实现大规模图数据的查询[9]。从本质上看,云计算环境下大规模图数据的查询技术应用,无论是主动遍历模式与被动遍历模式,其针对的图数据查询对象都是图顶点,也就是将图顶点设定为图数据处理的核心。分开来看,对大规模图数据使用主动遍历模式进行查询处理的过程中,主要优势是对绝大多数图数据均适用,适用范围广,适用性强。但是主动遍历图数据查询模式在实际应用时,在一些特定应用环节中,可能出现资源浪费问题。而对大规模图数据进行查询处理时,应用被动遍历模式主要优势在于不需要对处理函数进行调用,可以将图顶点调用处理过程中不必要的开销去除,节省自愿。主动遍历查询模式与被动遍历查询模式在功能上相辅相成,并且形成了模式互补,可以根据大规模图数据查询的具体需求进行合理选择,提高查询效率的同时,尽可能减少图数据查询过程中的开销。
3.5 大规模图数据处理平台
在云计算环境下,对大规模图数据进行处理的过程中可以借助虚拟化技术为大规模图数据处理创造一个规模庞大、消耗低的处理平台,即将大规模图数据的存储、计算、应用、网络等资源变为虚拟化实体,将抽象闲散的数据处理资源转变为完全独立的个体进行应用。首先可以对图数据进行参数化配置,定制相应的处理平台。然后对数据处理后的存储与计算自愿进行配置,将计算流程与资源配置文件写入,分配计算流程。最后将部署的工具借助网络接入计算节点,进入计算流程,对大规模图数据进行相应的处理。在大规模图数据处理平台上,存储资源与计算资源的分配与执行均通过代码实现,启动相关的部署计算节点后,通过网络向不同的计算节点发送图数据处理指令,以此实现对图数据处理的工作调度以及流程进展,为大规模图数据处理提供了一个可执行、简单、消耗小的处理平台。
4 结束语
总而言之,云计算环境下大规模图数据处理技术得到有效优化与创新,在图数据存储与维护、图数据耦合性降低以及图数据处理可靠性方面有明显优势。同时,云计算背景下大规模图数据处理技术的应用,在图数据存储、图数据计算、图数据分割、图数据查询4个方面的广泛应用,提高了图数据处理效率,并降低了处理开销,在很大程度上提高了大规模图数据处理的技术水平与应用效果,推动图数据处理技术的持续发展与进步。