基于计算机技术的遥感大数据分布式管理与训练云平台设计
2024-04-07陈霞
陈霞
(亳州工业学校,安徽 亳州 236000)
针对当前遥感图像数据海量、更新频繁等特点,本项目拟采用基于云计算的并行计算技术,研究基于云计算的遥感图像数据存储与管理方法。基于分布式计算、分布式存储等技术,面向遥感数据对象识别、变化检测等实际应用需求,利用自主开发的在线样本收集技术和深度学习技术,实现多源遥感图像的自动判读。
同时,该平台也为模型预测结果的人为修正提供了依据,并将这些人为的反馈信息传递给模型训练模块,使其能够自我迭代学习。相比传统的离线图像数据处理方式,该系统采用分布式存储计算模式,可有效地减少图像数据在生产中的存储分配问题,并可有效地简化深度遥感模型的训练过程,从而提高深度遥感模型的训练效率,从而为大规模遥感数据的管理和应用研究提供新的思路。
1 遥感大数据分布式管理与训练云平台概述
遥感大数据分布式管理与训练云平台是基于遥感大数据的资源池,支持多任务并行处理和海量数据的并行存储与计算,将海量遥感数据从集中式管理模式转变为分布式管理模式。该平台可以满足用户在不同层次的需求,例如:
(1)系统用户可以根据自身的需求,对遥感大数据进行不同的计算任务分配和存储任务分配。
(2)用户可以根据自己的工作需要,在平台上自定义遥感大数据计算任务。
(3)用户可以根据自己的需要,将已有的遥感大数据资源以不同方式组合在一起,构建一个新的计算模型。
(4)用户可以通过对已有资源的配置,对遥感大数据进行动态调整、升级和扩容。
(5)用户可以对自己在平台上构建出来的计算模型进行分析与评估。
遥感大数据分布式管理与训练云平台系统具有以下特点:
(1)基于资源池机制,支持多任务并行计算和海量数据处理。
(2)基于Hadoop 大数据技术,支持分布式存储和分布式计算。
(3)基于MapReduce 分布式并行计算框架,支持对遥感大数据进行实时分析、挖掘和建模。
(4)支持云存储、云备份和云监控。
2 大数据云平台架构
遥感大数据训练云平台的总体架构包含云管理系统、遥感数据存储系统和遥感数据处理系统。其中,云管理系统主要用于对遥感数据进行统一的管理和监控,其功能主要包括对存储空间、文件资源的统一分配以及对计算任务进行动态调度等。遥感数据存储系统是将所有的遥感数据以文件的形式存储在一个数据库中,便于管理和使用。遥感数据处理系统是对遥感数据进行初步的计算和分析,然后通过计算结果将分析结果保存到数据库中,并生成可视化的图表。同时,将分析结果进行存储,以便于进一步的挖掘和使用。遥感数据管理与训练云平台构成了一个完整的体系结构,该体系结构主要由云管理、云存储、云应用和云训练四个部分组成。
其中,云管理是整个体系结构的核心,其功能是将所有与之相关的资源进行统一管理。云管理主要包含用户管理、权限管理、设备管理等功能,以实现对整个云计算平台的统一管理。
云存储则主要用于实现数据存储服务和资源共享服务。
云应用则是对云应用进行开发的平台,其主要功能是通过对用户提交的遥感数据进行分析,来挖掘数据中的特征信息,以便于进一步的数据挖掘和分析。
云训练则是对云计算平台提供服务的能力进行训练,其主要功能是对云计算平台提供的服务能力进行训练。
该体系结构中,用户可以根据自己的需求将不同种类、不同用途的资源统一管理起来,从而达到充分利用资源、提高效率的目的。
3 分布式训练框架设计
在遥感大数据的处理中,通过对大数据应用框架进行训练,从而达到提高训练效率的目的。而在分布式训练框架设计中,主要包括数据传输模块、数据存储模块和算法调用模块。在数据传输模块中,主要是将训练数据从服务器端传输到客户端,使客户端能够直接从服务器端下载训练数据;在数据存储模块中,将分布式训练框架中的模型文件和参数文件存放于云存储平台中,并利用缓存机制,将客户端下载的模型文件和参数文件缓存起来;在算法调用模块中,利用机器学习算法来训练深度学习模型。
从遥感大数据的训练框架设计上来看,主要包括以下几个模块:
(1)分布式训练框架。基于 Hadoop 集群的分布式训练框架。
(2)数据传输模块。将遥感大数据的存储格式与传输格式相结合,实现对遥感大数据的存储与传输。
(3)数据存储模块。对训练所需的遥感大数据进行存储与管理。
(4)算法调用模块。根据分布式训练框架中的算法模型,使用深度学习算法来实现对遥感大数据的处理。
(5)数据库查询模块。通过MapReduce 计算引擎来实现对遥感大数据的计算。
在整个分布式训练框架设计中,主要是利用Hadoop集群对遥感大数据进行存储、计算和资源调度等工作。其中,数据传输模块是实现分布式训练框架中各子功能模块之间相互通信与交互的关键环节;数据存储模块实现了海量遥感大数据的存储与管理;算法调用模块是分布式训练框架中各子功能模块之间相互协作的桥梁。
4 关键技术
4.1 分散式混合存储器模式
该平台针对不同的数据类型,对其进行了结构化设计。重点介绍了图像数据模型的建立、向量信息的建立、标签数据的建立、服务数据的建立等。影像资料模式包括影像资料、影像影像资料及影像资料。本文提出了一种基于数据集的遥感元数据标准化方法。最后,选择了一个分布式的Key-Value NoSQL 数据库 Accumulo 来存储图像块数据。
由于矢量空间元素间具有复杂的拓扑关系,且在迭代时需对批矢量点数据进行有效的更新。该平台选择了HBase 数据库作为向量元素的存储对象。利用 HBase 进行向量空间数据的存储与管理具有高效、高扩展性等优点。
标记数据是利用空间矢量数据,经过向量转栅的算法处理而获得的。Ceph 对象存储使用 RADOS (Reliable Autonomic Distributed ObjectStore)来保证标签数据的读写效率,使用 CRUSH 数据放置采取算法来保证标签数据负载可以得到有效均衡。
4.2 空间和时间大数据的索引
在此基础上,利用 Geomesa 语言建立了空间-时间-空间-空间-时间的向量表,以实现对空间-时间和空间-时间向量表的快速访问。使用 Geomesa 提供的XZ3 时空索引,将包含经度、纬度和时间三个维度的数据,按照基于Z-Order 填充曲线的GeoHash 时空编码技术,对数据进行降维,得到一维数据作为Key,便于在HBase 数据库中进行查询。本项目提出的时空索引方法,在保证空间分布特征的前提下,能够有效实现空间分布特征的前提下,有效提升空间分布特征,提升空间分布特征。
4.3 microservices 架构
在此基础上,提出了一种基于服务网格的微服务体系结构。这种模式减少了与Dubbo 和SpringCloud 的耦合。在此基础上,提出了一种以多智能体为主体的有机体为中心的网状结构。以通用组件的形式,对系统中的所有服务通信流量进行管控,并且下沉了微服务开发的技术栈,从而可以实现跨语言的服务调用、功能可扩展。
在此基础上,提出一种高可用性、高扩展性、可扩展性、可维护性、智能运维的遥感大数据管理和培训微服务体系结构,并将其应用于遥感大数据处理中。
5 遥感大数据的分布式管理
遥感数据在进行处理时,往往会涉及海量的遥感数据,在管理这些庞大的数据时,传统的基于单机或者文件系统的管理方式已经不能满足需求,所以需要对遥感大数据进行分布式管理。在遥感大数据的管理中,往往需要将遥感大数据分解成若干个小任务,每个小任务都有自己独立的存储和处理信息,这样才能进行统一的管理。但是由于每个小任务都是独立操作,其操作结果会存在差异。在这种情况下,如果直接将遥感大数据全部交给集群管理系统处理,就会造成大量数据丢失以及不必要的重复劳动。
为了解决这个问题,可以采用一种“云计算”概念来进行遥感大数据的分布式管理。在“云计算”环境下,各个计算节点所拥有的计算资源都是共享的。在实现对遥感大数据分布式管理时,将计算任务进行分解,分配到各个节点上进行处理。同时,通过在“云计算”平台中引入分布式存储技术来解决数据量大而导致存储空间不足的问题。此外,“云计算”环境下的大数据应用框架也是基于分布式计算技术构建起来的,并且通过引入机器学习算法来提高数据分析处理效率。
6 训练过程中的任务调度和管理
在遥感训练过程中,云平台主要是根据机器学习算法对海量遥感数据进行处理。对于海量遥感数据,一般有多个训练节点。在训练过程中,通过调度算法,将训练任务合理地分配到各个节点上,使训练任务能够顺利地执行。在实际训练过程中,往往有多个训练任务同时进行,例如,对多个图像数据进行分类、特征提取、模型构建等。同时,由于训练数据量庞大,单个节点的资源难以满足多个训练任务的要求。因此,需要将训练任务分散到各个节点上去执行。
由于遥感数据的特征提取通常是在多个节点上同时进行的,因此需要对遥感数据进行分类处理。在分类过程中,一般会涉及图像特征提取、模型构建以及分类结※果验证等步骤。在分类过程中,需要对各个节点的数据进行分类处理。由于遥感数据具有不规则性以及离散性,因此,采用传统的机器学习算法往往难以取得理想的效果。在实际应用中,往往采用深度学习算法对遥感图像进行分类处理。
本文所设计的基于计算机技术的遥感大数据分布式管理与训练云平台是基于云计算技术设计实现的。该平台可以满足多个训练节点之间协同工作的要求。通过分布式计算技术,将不同节点上的任务合理地分配到各个节点上去执行。同时,利用云计算平台提供的分布式计算、资源共享等功能为遥感图像训练提供支持。在任务调度和管理过程中,通过对各个节点进行任务分配以及调度管理来保证任务能够按照规定的时间节点完成任务。
7 实验与分析
本节对云计算环境下的遥感数据训练云平台进行了实验测试,将采用支持向量机(SVM)的机器学习算法,以及随机森林(RF)的遥感数据分类算法作为测试算法。在实验环境中,将一个500kB 大小的遥感数据集作为测试数据,计算其在云计算平台上训练一个分类模型所需要的时间,并将训练好的模型与采用传统训练方法得到的模型进行比较。
采用云计算平台进行遥感数据训练,所需时间明显缩短,但是,在相同的计算时间内所得到的遥感数据分类准确率并不高。这是由于传统机器学习方法训练得到的模型在面对大规模数据时,准确率不高,而云计算环境下得到的遥感数据分类模型在面对大规模数据时准确率较高。因此,通过云计算平台进行遥感数据训练具有一定优势,但是在训练速度和准确率方面还需要进一步完善。
在未来的研究中,将针对云计算环境下遥感数据训练过程中出现的问题进行进一步探讨,例如,如何提高遥感数据的训练效率,以及如何对遥感数据进行清洗和预处理,以达到提高训练效率的目的。
8 结语
本文设计了一种基于计算机技术的一站式遥感大数据分布式管理与模型训练云平台。平台构建了以异构的遥感数据为基础的混合存储模型,以Spark 为载体的分布式计算模型,以服务注册与发现、服务交互为基础的微服务架构。结合深度学习在遥感影像数据处理的应用,完成了一站式遥感大数据分布式管理与模型训练云平台的整体建设,为构建高可用、易扩展的遥感数据存储共享与处理平台提供了解决方案。