APP下载

基于气象大数据计算与资源共享教学平台设计

2020-04-08郝永生

计算机技术与发展 2020年3期
关键词:计算资源磁盘布局

郝永生,季 赛,曹 杰

(1.南京信息工程大学 网络信息中心,江苏 南京 210044;2.徐州工程学院 管理学院,江苏 南京 221018)

0 引 言

气象部门保存的数据不但种类繁杂,而且体量巨大,具有大数据的基本特征。目前,气象部门永久保存的数据达到4~5 PB(1 PB=1 024 TB),年增量约1 PB(气象数据体积Volume)。气象资料分为14大类,有数百种之多(气象数据种类Varity)。随着自动观测站、卫星等设备数量及观测精细度的不断提高,其存储体积也飞速发展(气象数据速度Velocity)。当前,海量气象数据主要用于气象业务及相关领域,即天气预报、气候预测及气象服务;随着气象大数据时代的来临,气象数据将涉及到人们生活的方方面面。但单个气象数据价值低(气象数据价值Value)。综上所述,气象大数据将具有大数据的“4V”特性,即规模性(Volume)、多样性(Varity)、高速性(Velocity)和价值性(Value)。

气象大数据的一个典型价值在于其为气象模式提供支撑[1-2],通过气象模式模拟,预测未来气候与气象变化。但是,这些气象模式要求的气象数据不一样(来源,气象信息的精确度),如何对这些气象大数据进行布局,在多个气象中心实现计算平衡,是当前需要解决的一个难题。在气象教学过程中,不同学生重复地下载气象基础数据,对气象模式重复配置,这些工作既费力,又浪费资源。针对这一情况,提出气象大数据数字资源平台设计问题。

1 大数据布局相关算法

大数据布局算法的主要目标包括实现负载均衡,保证用户需求,减少系统能耗等。针对不同的研究环境及目标,研究者提出了大量数据布局算法。

传统数据布局方法大多采用基于负载均衡的划分模型布局数据集,该方法可以获得很好的负载平衡布局,然而传输时间并非最优。李学俊等[3]结合混合云中数据布局的特点,设计了一种基于数据依赖破坏度的矩阵划分模型,生成对数据依赖度破坏最小的划分,并提出一种面向数据中心的数据布局方法。该方法依据划分模型将依赖度高的数据集尽量放在同一数据中心,从而减少数据集跨数据中心的传输时间。数据库即服务(database as a service,DaaS)作为一种新型的数据存储提供模式被广泛应用。而对于服务提供者来说,提高服务质量和降低服务成本是一对矛盾的目标。张甜甜等[4]提出DaaS模式下的数据布局图概念,并采用Pareto最优思想适合于解决多目标矛盾性问题的特点,给出一个基于性能与代价之间进行折中的多节点DaaS数据布局策略。万武南等[5]针对数据布局中的容错问题,提出了一种容错布局方案。他们对双容错RDP(row diagonal parity)码进行了扩展,提出了一种基于X-RDP阵列码3容错的数据分布策略。采用X-RDP码的代数定义,证明了X-RDP码具有MDS编码特性。并采用不同斜率几何直线图描述编译码过程,易于软硬件实现。

大数据平台由于资源种类繁多,必然是异构的。传统的重用距离在异构背景下面临平台差异性挑战,缺乏统一的计算框架。为了更好地刻画和优化异构程序的局部性,刘颖等[6]建立了一个多平台统一的重用距离计算机制和数据布局优化框架。该框架根据应用在异构架构下的并行执行方式,从统计平均的角度提出了放松重用距离,并以OpenCL程序为例给出了它的计算方法,为多平台数据布局优化决策提供统一的依据。

多数据中心的云计算环境下数据布局方面遇到了新的挑战,主要表现在如何减少跨数据中心的数据传输、如何保持数据间的依赖性以及如何在提高效率的同时兼顾全局的负载均衡等。郑湃等[7]针对这些挑战,提出一种三阶段数据布局策略,分别针对跨数据中心数据传输、数据依赖关系和全局负载均衡三个目标对数据布局方案进行求解和优化。

Map-Reduce计算框架下,数据布局对计算效率、能耗也影响巨大。传统方法难以应用到MapReduce集群。良好的数据布局可以优化集群能耗。基于此,宋杰[8]等首先定义了数据布局的能耗优化目标,并提出相应的数据布局算法;接着,从理论上证明该算法能够实现数据布局的能耗优化目标;最后,在异构集群中部署3种数据布局不同的MapReduce系统,通过对比三者在执行CPU密集型、I/O密集型和交互型这3种典型运算时的集群能耗,验证了所提出的数据布局算法的能耗优化效果。

综上所述,广大研究人员已经从大数据布局的均衡方法,能耗,异构性等多方面进行了广泛研究。但是这些并没有针对气象大数据环境下进行的数据布局。针对气象大数据既是计算密集型作业,又是数据密集型作业,提出了一种在多数据中心与计算中心混合存在的情况下,兼顾计算与数据访问效率的数据布局算法。气象数字平台,不但需要提供资源共享机制,更需要提供计算能力。现在应用广泛的气象模式种类繁多,其需要的气象基础数据也不相同。建设气象大数据气象数据[9-10]平台的目的是:(1)节省广大学生学校气象模式,对模式进行配置的时间,通过虚拟机模版实现直接克隆,即可实现气象模式的基本配置;(2)节省广大学生重复下载气象基础数据的时间,通过管理员设置读取权限,广大学生就可以获得相关的气象基础数据;(3)统一的基础数据及气象模式,也可以帮助教师统一授课,并且更容易对学习效果进行检验。

2 系统物理构架

系统结构如图1所示。气象大数据数字资源平台包括多个虚拟中心,其中包括VMware中心,超融合中心,以及学校以租赁形式购买的远程虚拟资源(计算资源及存储资源)。气象大数据数字平台,既要提供计算资源,又要提供数字资源。其提供的计算资源与其他资源不同的是,气象大数据数字平台主要提供的是气象模式的计算能力。通过统计,对常用的气象模式,如WRF(weather research and forecasting model)[11]、MASNUM(marine science and numerical modeling)[12-13]等,预先安装在相关的气象模式,并生成虚拟机模板,这样在用户申请之时,直接生成支持用户需求海浪模式即可。如图1,虚拟中心1与2提供了不同的虚拟机,这些虚拟机上面已经预装了相关的气象模式,管理员按照用户需求,提供支持用户需求的气象模式虚拟机。气象模式需要的数据存储在各个虚拟中心,管理员根据用户需求,将相关磁盘的读权限授予相关的用户(用户气象基础数据一般不需要修改,用户自己生成的数据存放在本地磁盘;如果气象基础数据集需要修改,一般由管理员完成)。用户向系统提出资源申请,申请信息包含需要的气象模式名称,需要的气象基础数据,申请的私有空间等,系统管理员根据这些信息及系统负载,决定计算资源分配位置(哪个虚拟中心)、计算资源、气象基础数据集及所需的私有存储资源。分配时,尽量以学校资源为主,只有在学校系统资源不够的情况下,才申请购买云资源。

图1 气象大数据数字平台物理结构

3 系统设计

图2给出了系统模块图。系统主要由四个模块组成:首页、共有数据管理、资源分配及资源使用情况统计。

图2 系统模块

首页主要展示系统资源分配及使用情况,系统当前负载,当前用户情况。这里不仅展示了自建虚拟中心与存储的使用情况,也展示当前购买的云资源使用情况。系统管理员从首页就可以对系统当前负载,使用情况进行监视,从而知道系统管理工作。

共有数据管理主要包含五个方面:气象模式虚拟机模板管理、气象基础数据管理、用户信息管理、存储资源管理及系统信息管理。这里每一个虚拟机模板可以支持一种或几种气象模式,这些虚拟机模板已经完成了气象模式的基本设置,从这些虚拟机模板克隆的虚拟机,只需要用户很少配置,就可以直接使用相关的气象模式。气象基础数据管理,不仅涉及到气象基础数据的增加、删除、修改,还涉及到气象基础数据的分配,气象基础数据一般是只读的,普通用户只能读取气象基础数据。用户通过向管理员申请,提出对某一类气象数据集的读取权限,管理员通过磁盘映射方式,将基础数据分配给用户。用户信息管理主要是指增加用户、删除用户、修改用户秘密等操作。存储资源管理主要指当多用户需要的气象基础数据之外的存储空间的管理。系统信息管理主要指系统配置信息管理:包括系统管理员信息管理,各个虚拟中心管理信息,系统备份信息等。

资源分配是气象大数据数字资源的核心,其分配方法的好坏,决定了系统的性能。主要包含三个模块:计算资源分配、公有气象基础数据分配方法及私有数据空间分配。计算资源分配除了分配计算资源(内存、CPU数量、带宽等),还包含与用户需求相适应的虚拟机。公有气象基础数据分配也是按照用户申请,分配相应权限,管理员将包含用户申请的数据磁盘映射给相应的用户,用户即可访问相关数据。如果某个数据集使用频率过高,管理员通过数据集副本方法,降低相应的数据集负载。私有存储空间分配主要指用户在申请计算资源、气象基础数据之外需要的存储空间。

资源使用情况统计主要是对系统的计算资源、气象基础数据、存储空间、租赁资源等进行统计分析。主要包含四个模块:公有计算资源统计、公有气象基础资源统计、存储资源统计及租赁资源统计。公有资源统计主要指统计计算资源(CPU、内存等)等分配情况,用户根据计算资源统计,决定资源分配策略。公有气象基础资源统计主要对各种气象基础数据访问频率进行统计,用以判断是否需要创建新的数据副本。存储资源统计主要统计已经分配的存储资源及系统负载。由于系统采用延迟分配方式,实际系统负载往往远低于已经分配的存储资源。租赁资源统计主要对租赁的计算资源,存储资源进行统计,分析租赁资源的效率。

4 气象基础数据布局策略

气象基础数据类别繁多,而各个气象模式需要的数据存在不一致,在多用户情况下,如何满足这些用户需求,是该系统需要解决的一个难题。图3给出了存储结构示意图。

图3 气象基础数据布局示意图

如图3所示,系统存储包含两种磁盘:高速磁盘及一般磁盘。高速磁盘主要存放的是虚拟机模板、虚拟机及常用气象基础数据。一般磁盘主要存放的是不常用的气象基础数据及用户申请的磁盘空间。对于气象基础数据采用加权排序方式,按照权值从高到底的方式计算。

系统的数据关系如图4所示。一个虚拟机模板可以支持多种气象模式,而一个气象模式需要的气象基础数据也可以是多个。从而,虚拟机模板、虚拟机、气象基础数据集之间建立起来了多对多的关系。气象模式需要的数据集既可以通过授权访问,也可以直接从历史记录中挖掘气象模式与数据集的关系,根据这种关系,由系统管理员直接授权访问。通过用户使用的气象模式、虚拟机、气象基础数据集的记录,统计常用的气象基础数据集,将这些数据集放在存储中心的高速磁盘之中,从而提高用户使用效果。

图4 系统数据关系示意图

5 基于大数据挖掘的气象数据布局算法

气象公共大数据包含天气资料也包含气候资料,主要指来源于各类气象观测站。在气象大数据环境下,公共气象数据存在体量大(时间长、记录条数多)、动态开放(更新频率高)、多源(卫星、气象站等)特征,考虑到气象数据与气象模式调用的关系,这为公共气象数据布局带来了新的技术挑战。其一,气象作业可能需要调度多种公共气象数据进行运算,而对于一种公共气象数据,可能只涉及部分属性(比如说站点资料的列);其二,多个气象作业可能需要同一种公共气象数据资料;其三,对于耦合气象模式,一个气象作业的调度输出会成为另一个气象作业的输入。因此,需要在气象大数据环境下,对公共气象数据进行合理优化的数据布局,使气象作业执行中公共气象数据读取负载均衡、减少数据中心之间数据移动成本、各中心与数据相关的计算负载均衡等,是本子课题主要研究内容。

挖掘气象模式与数据集之间的关系,是从调度日志数据挖掘某个气象模式可能需要的基础数据,这样在数据布局时即可以实现聚集(防止一个气象模式需要的数据集在多个数据中心,这里只涉及数据集,不涉及到采用某个数据集的多少列)。以气象模式为例,先对每个气象模式M[i](每一个气象模式)挖掘其与数据集D同时被调用的关系;再对气象模式集M挖掘其与数据集D[j](每一个数据集)同时被调用的关系;从而得到模式与数据集关联数据。图5给出了采用Apriori算法挖掘气象模式M[1]与数据集关联关系的算法。运算过程中,最小支持度可以采用动态尝试的方法获得,其结果只保留包含M[1]的频繁项集(阈值可以采取从大向小逐渐尝试方法)。同样,对每个数据集与气象模式采用图6中的方法,挖掘数据集同气象模式的关联关系。

图5 利用Apriori算法挖掘气象模式M[1]与数据集D的关联关系

图6 重复调用Apriori算法挖掘气象模式M与数据集D的关联关系

6 结束语

提出了一种气象大数据数字化教学平台的建设方案。采用Apriori算法挖掘气象模式与气象基础数据之间的关系,为气象大数据平台提供布局方案,方便用户操作。气象大数据数字平台不但提供计算能力,而且提供气象基础数据集。气象大数据数字平台为广大学生及教师节省了时间,方便配置,消除重复劳动,为气象模式教学提供了便利。考虑到用户的需求及系统负载,根据气象基础数据使用的频繁程度对气象基础数据集进行差别布局,提高了用户使用感知。由于气象大数据平台提供的磁盘速度与虚拟机计算速度有差异[14],如何有区分的分配满足不同用户的不同需求(磁盘容量、速度,计算速度)[15],是下一步需要解决的问题。

猜你喜欢

计算资源磁盘布局
基于模糊规划理论的云计算资源调度研究
解决Windows磁盘签名冲突
改进快速稀疏算法的云计算资源负载均衡
修改磁盘属性
基于Wi-Fi与Web的云计算资源调度算法研究
耦合分布式系统多任务动态调度算法
BP的可再生能源布局
磁盘组群组及iSCSI Target设置
创建VSAN群集
VR布局