首页> 中国专利> 一种基于分布式文件系统的海量地学数据并行处理方法

一种基于分布式文件系统的海量地学数据并行处理方法

摘要

本发明公开了一种基于分布式文件系统的海量地学数据并行处理方法。本方法为:1)采用分布式文件系统作为地学数据的存储系统,部署在计算集群上;分布式文件系统拥有统一的名称空间;2)计算集群的作业调度系统将接收的计算作业保存到一等待队列中;3)调度系统从等待队列中选择一个计算作业进入运行队列;4)调度系统根据计算作业信息在分布式文件系统的元数据中查找该计算作业运行需要的数据文件所在的计算节点;5)作业调度系统挑选一持有该计算作业运行需要的数据最多的计算节点;该计算节点远程获取该计算作业需要但该计算节点未持有的数据文件,然后在该计算节点执行该计算作业,并返回执行结果。本方法最大程度的做到了计算本地化。

著录项

  • 公开/公告号CN103198097A

    专利类型发明专利

  • 公开/公告日2013-07-10

    原文格式PDF

  • 申请/专利权人 中国科学院计算机网络信息中心;

    申请/专利号CN201310076895.2

  • 申请日2013-03-11

  • 分类号

  • 代理机构北京君尚知识产权代理事务所(普通合伙);

  • 代理人余长江

  • 地址 100190 北京市海淀区中关村南四街4号

  • 入库时间 2024-02-19 19:11:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-02-10

    授权

    授权

  • 2013-08-07

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20130311

    实质审查的生效

  • 2013-07-10

    公开

    公开

说明书

技术领域

本发明属于生态及地理信息学技术领域,涉及海量遥感地学数据的存储与并行处理,尤 其涉及一种基于分布式文件系统的海量地学数据并行处理方法,主要应用于遥感生态监测、 物种分布预测以及遥感地学数据反演等相关领域的针对海量数据的处理方法。

背景技术

文件系统是计算机系统重要的组成部分,随着网络技术的发展,独立平台上的文件系统 有向高速局域网上发展的趋势,逐渐形成分布式计算机环境中的一个支撑技术-分布式文件 系统(Distributed File System)。分布式文件系统的关键技术主要包括虚拟文件系统、高速缓 存技术以及所需的通讯技术(应朝晖高洪奎.《计算机工程与科学》1995年第3期。)分布式 文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机 网络与节点相连。分布式文件系统的设计基于客户机/服务器模式。

作业调度系统又叫做任务调度系统,用于将大批量的计算任务分配给多个计算单元,使 这些计算单元可以并行的处理计算任务,最常见的是操作系统的进程调度器。在一个分布式 计算系统中,作业调度器的主要功能是收集并管理计算任务,将任务合理的分配给网络上的 各个节点,使批量的任务可以并行高效的执行。同时,它还要具备一些与作业执行相关的辅 助功能,比如追踪作业执行的过程,回收作业执行的结果等等。作业调度系统多用于高性能 计算和计算网格中,调度技术的应用,不仅缩短了大批量计算任务的处理时间,而且使得计 算集群的计算性能得以高效的发挥。

遥感影像是地理信息数据的主要组成部分,凡是纪录各种地物电磁波大小的胶片(或相 片),都称为遥感影像,在这里主要是指航空像片和卫星像片。对于大量的遥感数据,想要从 中获取有用的地学信息,需要使用复杂的计算机系统对其进行处理。常见的软件工具像GDAL (Geospatial Data Abstraction Library),GDAL(http://www.gdal.org/)是一个在X/MIT许可协议 下的开源栅格空间数据转换库。它利用抽象数据模型来表达所支持的各种文件格式,还包含 一系列命令行工具来进行数据转换和处理。过去二十年里,对地观测已经获取了海量的影像 数据。在下个十年,对地观测系统(EOS)和其他地球观察平台将以每天超过115TB的速度产 生海量影像数据。面对这些堆积如山的影像数据,如何从中高效地检索、显示用户感兴趣的 数据成为当前的研究热点。(Ruixin Yang.Value range queries on earth science data via  histogram clustering[M].Lecture Notes In Computer Science,1999.)

地学影像数据大数据量和计算复杂度高的特点使得地学数据的处理,特别是海量数据相 关的计算和对响应时间要求较高的在线数据计算服务成为了一个重大的挑战。因此需要一种 方法能够解决海量地学数据的存储和快速处理的问题,并且能够提供高质量的数据计算服务。 虽然一些传统的大数据处理技术已被应用于各个领域的数据处理,但对于以遥感影像文件为 主的地学信息计算,受制于数据文件的特别格式和处理工具的单一使用方式,传统的处理技 术很难在短时间内满足地学信息计算的需求。

发明内容

从以上的分析可以看出,地学数据的数据量非常大,遥感数据的存储和处理亟需高效可 用的技术方案。单台服务器处理数据的方式受制于机器内存和存储空间的限制,无法满足处 理海量数据的需求。现有的一些通用的大数据处理集群技术,比如MapReduce、MPI等,由于 地学计算的特殊性,又无法方便快速的应用于地学数据的计算。针对现有技术存在的技术问 题,本发明的目的在于提供一种基于分布式文件系统的海量地学数据并行处理方法,本发明 利用分布式文件系统和作业调度技术,将一个单台服务器上运行的地学数据处理应用扩展为 一个可在集群上高效并行执行的应用的技术。

本发明的技术方案为:

一种基于分布式文件系统的海量地学数据并行处理方法,其步骤为:

1)采用分布式文件系统作为地学数据的存储系统,将所述分布式文件系统部署在计算集 群上;其中,所述分布式文件系统拥有一个统一的名称空间;

2)计算集群的作业调度系统将接收的计算作业保存到一等待队列中;

3)作业调度系统从所述等待队列中选择一个计算作业进入运行队列;

4)作业调度系统根据进入所述运行队列的计算作业信息,在分布式文件系统的元数据中 查找该计算作业运行需要的数据文件所在的计算节点;

5)作业调度系统从4)所得计算节点中挑选一持有该计算作业运行需要的数据最多的计 算节点;该计算节点远程获取该计算作业需要但该计算节点未持有的数据文件,然后 在该计算节点执行该计算作业,并将执行结果返回给作业调度系统;

6)作业调度系统从所述运行队列中删除该计算作业。

进一步的,每个地学数据文件在所述计算集群中存在至少一个副本;所有属于一个文件 副本的数据都仅保存在一个计算节点上,其存储位置信息保存在分布式文件系统的元数据中。

进一步的,每一计算节点具有多个磁盘,文件副本分为多个文件块,属于同一文件副本 的文件块在多磁盘上随机均匀分布。

进一步的,所述作业调度系统对所述等待队列中的计算作业请求实时备份到一磁盘文件 中。

进一步的,所述作业调度系统对所述等待队列中的计算作业请求实时备份到一关系数据 库中。

进一步的,所述作业调度系统根据先入先出策略从所述等待队列中选择一个作业进入所 述运行队列。

进一步的,所述作业调度系统部署在所述计算集群的调度器中。

本发明中使用高性能分布式文件系统作为地学数据的存储系统,同时由一个作业调度系 统管理用户提交的计算任务。分布式文件系统部署在多台服务器上,每台服务器安装有多块 硬盘,一个文件(即原文件或副本文件)被分散成多个文件块,文件块分布在多个硬盘上, 这样,当有一个对某文件的IO请求出现时,文件系统可以同时在多块磁盘上搜索属于这个文 件的文件块,文件的IO将由多块磁盘同时发起。本发明中的分布式文件系统拥有统一的名称 空间,计算集群中的所有节点(节点即分布式框架或计算集群中的一服务器)都可挂载此文 件系统,可以使用这个统一的名称空间,所以每个计算节点都可以访问到文件系统中的所有 地学数据文件。文件系统支持文件副本,即每个文件在集群中都存在一个或一个以上的副本。 在每个计算节点上,属于同一文件副本的文件块在多磁盘上的分布使用随机的均匀分布,但 属于同一文件副本的文件块不会跨节点存储,即所有属于一个文件副本的数据都仅保存在一 个计算节点上。文件副本的物理位置是固定的,其位置相关信息保存在分布式文件系统的元 数据中。

与现有技术相比,本发明的积极效果为:

本发明为了保证作业相关信息的安全性,调度系统中的队列都有一个在本地存储系统上 的实时备份,这个备份保存在磁盘文件或者关系数据库中,与内存中的队列保持一致,在遇 到类似于断电这种系统无法预防的特殊情况时,作业的完整信息不会丢失,在作业调度系统 重新启动后,内存中的队列会恢复到断电前最后一次保存的状态。

一个计算作业可能需要不止一个输入文件,借助分布式文件系统的功能支持,调度系统 可以获取所有输入文件的位置和文件大小,通过简单计算即可选择出持有输入文件数据量最 大的计算节点,为最大程度的做到计算本地化,调度系统会把作业安排到这个节点。

附图说明

附图为地学计算作业调度系统工作流程图。

具体实施方式

在很多分布式计算框架中,对海量数据的处理最大的问题就是很难避免大量数据在网络 上的传输。比如常用的开源MapReduce系统Hadoop,很多算法在Reduce阶段会在网络上产 生较大的流量,由于CPU处理速度与网络传输速度之间存在巨大差别,整个计算过程的效率 最大的瓶颈往往在于此。由于地学数据具有数据量大,计算复杂程度高的特点,使用常规的 分布式计算方式很难满足用户对计算时间的要求,为了解决这个问题,本发明设计了一个作 业调度系统,结合具备特定功能(允许用户指定文件副本的物理位置,使得某一文件副本的 所有数据块都可以保存在一台节点上,无需通过网络传输就可以保证需要读取此副本的计算 作业获取到所需数据)的分布式文件系统,根据计算需要的地学数据文件的所在位置,将复 杂的计算作业安排到文件所在的服务器上执行,尽可能的减少海量数据在网络上的传输,计 算作业对输入文件的读取基本上被限制在本地磁盘的读操作,最大程度的做到了计算本地化。 本发明中最核心的部分是作业调度系统,作业调度系统主要由两个队列构成,等待队列中保 存了所有用户提交的但还未被分配的作业,运行队列保存了所有已被分配到某台服务器,正 在运行的作业。作业调度系统在短时间内接受大量的前端系统提交的计算作业,根据提交的 作业中包含的地学数据相关信息计算出本次计算需要的地学数据文件的分布,找到包含所需 数据最多的计算节点,将作业分配到这个节点。

如图所示,本发明作业调度系统的工作流程如下:

1.接收新作业进入等待队列。

2.更新等待队列的备份。

3.根据先入先出策略选择一个作业进入运行队列。

4.根据进入运行队列的作业中包含的关于输入数据的文件信息(文件在分布式文件系统 中保存的路径),在分布式文件系统的元数据中查找此作业运行需要的数据文件分布 在哪些计算节点上。

5.挑选一个持有需要数据最多的计算节点。

6.在这个计算节点上执行作业,作业所需的所有数据从分布式文件系统中读取。由于大 部分数据保存在本地,计算作业只需获取少量的远程数据,网络流量较小。

7.计算节点与调度器保持通信。

8.计算节点通知调度器作业完成。

9.调度器取回运算结果将作业从运行队列中删除。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号