大数据应用背景下的超级计算机设计
2017-05-16李欣朔
李欣朔
摘 要 在大数据应用时代背景当中,超级计算机迎来了前所未有的挑战,这些挑战主要体现在数据的计算、存储、通信以及编程方面,因此基于大数据的实际特征以及需求来设计一个超级计算机系统是十分有必要的。本文围绕如何基于大数据特征以及需求进行超级计算机设计、大数据时代应用背景下编程模型的设计两个方面展开讨论,对大数据应用背景下的超级计算机设计进行了分析,并提出了一些笔者自己的见解,希望能够对大数据应用背景下的数据处理问题提供一些对策建议。
关键词 大数据应用背景 超级计算机 数据处理
在电子信息技术的推动下,大数据已成为了当代潮流前线的主流技术,所谓大数据,从狭义上理解主要是指各种大规模的数据,具体来说是指难以在既定的时间范围内使用常规软件以及技术进行收集、统计、储存以及管理的数据集合,必须通过新型处理模式才可将其决策力、洞察力、发现力以及流程化进行充分发挥、具有规模大、复杂程度高、实时性强、高增长率以及多元化等特征的信息资产。由此可见,大数据是一种不同于传统数据的信息化数据资产,仅仅应用传统的软件或工具进行统计或管理是难以显效的,我们必须针对大数据的特征以及需求设计一款超级计算机,用于满足大数据的计算需求。
通过超级计算机来构建大数据处理中心,是现阶段最为主流的应用趋势。相比于传统计算机来说,超级计算机在性能方面具有显著优势,可以为大数据提供高效的计算以及处理服务。超级计算机早在二十世纪七十年代初就已被很多国家作为了一种战略性资源而进行使用,在国家经济建设、国防安全、社会发展、科学研究等方面得到了广泛的应用,并作出了极大的贡献,因此现阶段,超级计算机技术基本已经成为了衡量国家科技水平以及国防力量的重要指标之一。天河二号超级计算机是由我国国防科学技术大学研制而成的,它实现了每秒钟三点山九亿亿次的浮点运算速度,并以此成绩蝉联五次夺得全球运行速度最快超级计算机奖项。但是,超级计算机虽然具有如此高效的运行速率,它仍然只能在自己所擅长的以科学与工程运算为主的领域中发挥作用,例如一些计算密集型的任务中。此外,超级计算机具有计算模式单一的特点,它的处理过程通常由批量处理计算、流式运算、迭代运算、图运算等数据密集型运算方式组成,因此传统上的超级计算机很难直接被应用在大数据的计摘 要 在大数据应用时代背景当中,超级计算机迎来了前所未有的挑战,这些挑战主要体现在数据的计算、存储、通信以及编程方面,因此基于大数据的实际特征以及需求来设计一个超级计算机系统是十分有必要的。本文围绕如何基于大数据特征以及需求进行超级计算机设计、大数据时代应用背景下编程模型的设计两个方面展开讨论,对大数据应用背景下的超级计算机设计进行了分析,并提出了一些笔者自己的见解,希望能够对大数据应用背景下的数据处理问题提供一些对策建议。
关键词 大数据应用背景 超级计算机 数据处理算以及处理中。
1如何基于大数据特征以及需求进行超级计算机设计
显而易见,大数据的出现给人类技术带来了极大的挑战,而超级计算机具有十分强大的计算能力以及极其高效的数据处理能力,它将海量的信息高度集中在自己的系统当中,并通过工具媒介、数据存储等多元化角度对这些庞大的数据进行处理、分析以及应用,由此可见,不同的超级计算机在对信息处理以及计算时所呈现出的性能水平也是有所差异的。我们之所以要通过超级计算机来实现高性能数据计算,主要目的就在于提升数据计算效率,并通过对大数据的应用来增强通信效率。在本文中,笔者将围绕硬件和软件两个层面来设计大数据应用背景下的超级计算机。
1.1硬件体系结构
信息量大以及操作简单是大数据应用的显著特征,大数据应用能够确保计算指令维持在一个相对来说较低的状态,实际上间接增加了数据访问所需的成本,由此可见,在使用超级计算机管理大数据的过程中主要存在的问题在于数据吞吐率与数据计算效率之间的失衡性。针对这一问题,我们可以重点以两个切入点进行解决,一是针对片上缓存实施彻底优化处理。大数据应用指令等级相对较低,跳转频率较高,且不具备充分的局部性,再加上大数据通常只能使用一次,我们可以基于上述特点来降低指令缓存,并构建一个连接处理器与二级缓存的通道,以确保数据吞吐率与计算效率之间的失衡状态得到相对改善;二是提高大数据计算能力。在大数据的影响下,信息逐渐呈现出高密集化状态,这使得传统的处理器已无法满足信息处理需求。因此必须通过超级计算机来部署一个具备良好实时性的处理器,其中异构并行处理器是一项很好的选择,具体来说,也就是把專业的加速器导入至通用处理器核心当中,在加速器的推动作用下,使数据处理过程中能够实现数据并行的效果。大数据应用过程中,对于数据的处理频率相对较高,因此必须想方设法改善节点计算效率并强化通信效率。顾名思义,大数据就是代表庞大的数据信息量,因此相应的储存模式也较为复杂,种类繁多,其中最为常见的数据储存模式为集中式存储模式以及分布共享式存储模式。为了较好地应对大数据通信频率较高这一问题,必须通过合理的手段来提高节点与节点或与设备之间的连接效率以及。对上文内容进行总结后得知,要想有效解决大数据应用中存在的问题,其中最关键的环节在于加大互联通信技术层面的研究开发力度,提高在节点连接效率优化方面的研究力度,一般可以通过两种方式来实现,一种为研发一款软硬件结合的多借口网络芯片,另一种为通过光互连技术来改善数据传送过程中的问题。
1.2硬件体系架构
在大数据中包含着海量的结构化数据、非结构化数据以及半结构化数据。这三种数据类型对应的存储方式也各不相同,结构化数据通常使用数据库结构实现存储,而非结构化以及半结构化数据的存储则更多地以依靠于不同文件与系统之间的协调与配合来实现。数据处理与数据计算是两个完全不同的过程,在数据计算的过程中,当数据加载已经结束时,则需要对各系统之间的交互频率进行合理地调整和控制,所以说应该选择单一的分布式文件系统来实现。而针对大数据的处理方式则相对来说更为丰富,同时也更加复杂,其中使用频率最高的数据处理方式有图处理以及批处理两种,这样据必须得到不同文件与系统之间的良好配合已结支持。由此可见,在设计超级计算机时,单一的文化系统完全不能满足计算机运行需求,应将多种文件组合在一起进行超级计算机系统的设计。
通过对非结构化数据的存储模式进行深入研究后可以发现,它所使用的存储结构通常为分布式文件系统。为了能够进一步提升大数据的处理效率,Google对大数据储存的文件系统进行了一定的创新,在原有基础上设计了一款具有扩展功能的GFS文件系统,创新后的文件系统在对应用层的运用下实现了对控制流以及数据量进行分离的目的,可以说是一个真正意义上的分布式文件系统,即使面对规模庞大的数据信息,该文件系统也能够实现高校的储存以及处理。GFS文件系统由以下三个基本部分构成,分别为若干块服务器、单一的主控服务器以及客户端。本论文以GFS文件系统为出发点,对目前已研发上市且具有代表意义的阿里巴巴分支ADFS系统进行了分析。在阿里巴巴的ADFS系统中,主要针对HDFSNameNode在使用过程中暴露出来的单点故障以及内存不足等一系列问题实施优化,工作原理主要为将内存中不属于热点范围内的数据转移至外部数据库当中,通过这种方式来缓解NalneNode所承受的内存压力,从而提升数据的处理质量以及效率。而在对半结构化数据以及结构化数据进行研究后发现,半结构化数据以及结构化数据在存储方式上有着十分显著的共性特征,他们通常都优先选择数据库以及分布式表结构作为存储方式,只有一些结构相对较为简单的半结构化数据更倾向于选择Key/Value分布式系统,其中较为典型的为亚马逊公司的Dynamo系统以及Facebook的Cassandra系统,亚马逊的Dynamo主要是运用Key/Value作为数据存储模式,这一存储模式相比于其它模式的优点在于具有强大的可扩展性以及可用性。Facebook的Cassandra系统同样也是采用Key/Value作为数据存储模式,通过对这一存储模式的运用进一步实现了数据存储可扩展性以及一致性的增强。
2大数据时代应用背景下编程模型的设计
在大数据时代這一背景下,编程模型所面临的挑战也是日益凸显出来,传统的编程模型也开始表现出一定的动力不足趋势,并无法满足大数据的编程要求,为了有效解决这一矛盾,必须基于大数据的特征以及需求来设计一种有别于传统编程模型的全新的编程模型。大数据时代下的编程模型必须满足简单易操作的基本原则,并在此基础上尽可能提高性能水平,构建一个清晰明确的编程抽象,确保程序员的编程工作能够更加顺畅,在这一过程中,程序员并不需要关注程序在集群中运行的具体状态以及情况,只需要针对每一项问题进行一一解决即可。在新的编程模型中,程序员的主要工作与任务在于关注一切有待解决的问题,以此来确保编程过程中各项任务的清晰化、明了化,同时还可以使代码后期的维护管理工作得到极大程度的简化,使程序员的工作更加方便、简洁、高效。此外,在构建编程模型时还应考虑到系统数据计算能力以及处理能力提升的目的,我们不仅要确保程序能够在集群上实现高效稳定的运行,同时也要保证不同类型的作业与任务能够在集群上并发运行,这样可以大大提高集群内部资源的共享有效率。但是在这一模型下,我们也会面临许多新的问题,需要后期通过探索与研究进行慢慢攻破,例如如何有效处理异构性问题、如何提升本地数据的有效利用率等。因此在基于大数据应用背景下进行新编程模型构建的同时,我们的考虑内容不能过于单一,必须综合衡量各方面的影响与利弊,在此基础上作出适当的取舍以及判断,从而构建一个简单、便捷、可靠、高效的大数据编程模型。
为了使效率得到进一步提升,超级计算机一般来说都会选择应用并行编程模型,例如Open MP以及MPI,其中,Open MP通常会与共享存储模式的融合而被广泛地应用在对称多处理器等架构的相关设备当中,而MPI所涉及的编程模型则相对来说更为复杂,一般来说需要在切换至信息通信计算模型下,要求编程工程人员针对所有的程序问题根据一定的规则进行一一分类,随后再将这些分类号的问题映射至分布式进程集合当中。Open MP以及MPI等并行编程模型并不适用于大数据的计算以及处理过程中,因此一些规模较大的互联网企业会根据自身公司的实际情况以及需求来研制具有针对性的大数据处理模型,这样一来不仅可以使工作人员的工作效率得到提升,同时也在很大程度上促进了大数据应用的有效实现。
3结语
综上所述,在大数据应用背景之下,对于超级计算机的设计可以适当导入一些高效模块结构,例如多核结构以及众核结构等。此外,宽带网络速度的提升也有利于超级计算机运行速度的改善,为其提供基本的保障条件。总而言之,在大数据时代背景之下,要想使数据处理以及计算速率得到有效提升,超级计算机的应用是必然的趋势所在,并取消以往计算机系统中的计算密集模式,取而代之的是数据密集模式。笔者相信在大家的共同努力之下,大数据应用背景下的数据处理以及计算问题自会得以有效解决。
参考文献
[1] 张听,袁晓如.树图可视化[J].计算机辅助设计与图形学学报,2012(9):1113- 1124.
[2] 严霄凤,张德馨.大数据研究[J].计算机技术与发展,2013(4):168-172.
[3] 邓杨琴,孔丽华.美国发布“大数据的研究和发展计划”[J].科研信息化技术与应用,2012(2):89-93.