收藏 分销(赏)

基于MongoDB与Hadoop的地学遥感大数据管理系统的设计.pdf

上传人:曲**** 文档编号:13309832 上传时间:2026-02-26 格式:PDF 页数:107 大小:9.27MB 下载积分:12 金币
下载 相关 举报
基于MongoDB与Hadoop的地学遥感大数据管理系统的设计.pdf_第1页
第1页 / 共107页
基于MongoDB与Hadoop的地学遥感大数据管理系统的设计.pdf_第2页
第2页 / 共107页


点击查看更多>>
资源描述
基于MongoDB与Hadoop的地学遥感大数据管理系统的设计摘要随着遥感技术的发展,卫星分辨率与覆盖率的日益提高,遥感数据的数据量 呈爆炸式增长,目前每天以TB级别增长,存储级别已经为PB级别。同时由于 采集遥感数据的卫星存在差异,导致数据产品在格式,大小等方面存在不同。因 此对海量遥感数据的高效存储与管理已经成为业界关注的重点问题。针对该问 题,本文讨论了一个基于MongoDB与Hadoop的地学遥感大数据管理系统的设 计情况,主要研究工作有以下几个方面:(1)分析并总结了遥感数据管理信息系统发展的现状,给出了系统的总体 需求及其设计原则,阐述了系统的业务逻辑、体系结构,规划了系统的功能,设 计了系统的数据结构,给出了系统的安全应对策略;(2)对系统的数据采集、数据查询、数据导出、数据计算服务、用户管理、节点维护、日志管理等子系统进行了设计,并对系统中的关键功能模块进行了算 法的详细设计与部分实现,给出了系统的分布式架构的部署方案,对系统部分关 键功能模块进行了性能的测试;(3)对系统的建设进行了总结,并提出下一步的主要工作任务。关键词:遥感数据;管理信息系统;系统设计;MongoDB;Hadoop;分布式The designing of a data management system of Big Remote-sens i ng Geodata based on MongoDB and HadoopAbstractWith the development of remote sensing technology,the resolution and coverage of satellite are ever-increasing.The amount of remote sensing data is in an explosive growth with a daily increase in the level of TB,which results in a storage level of PB.At the same time,due to differences in the satellites acquiring remote sensing data,the acquired data products may have different formats and sizes.Therefore how to store and manage the massive remote sensing data efficiently has become a common-concerned problem of computer science and geoscience researchers.This paper discussed the designing of a big geodata management system based on MongoDB and Hadoop.The main research work includes following aspects:(1)By analyzing and summarizing the the present situation of the remote sensing data management system,the designing principles and the requirements of the system are put forward.This paper also discusses the business logic and the structure of the system,plans the system functions,designs the data structure of the system and provides some systems security strategy;(2)The acquisition,query,output and computing services of the data are designed in this system as well as the the user management,node maintenance and the log management.The key functions are designed in detail and partly implemented and the distributed architecture is built.To make the system more comfortable and stable,the performance tests of the key functions are put forward;(3)The main tasks are raised by summarizing the constrction of the system.Key words:remote sensing data,management information system,system design,MongoDB,Hadoop,distributed systemii兰州大学专业学位研究生学位论文 闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计目录第一章绪论.11.1 遥感数据管理系统现状.11.2 项目目标及预期效果.71.3 项目研究内容.8第二章相关理论与技术.92.1 MongoDB 概述.92.2 Hadoop 概述.10第三章系统的总体设计.123.1 总体需求及设计原则.123.1.1 总体需求.123.1.2 系统的设计原则.123.2 系统的业务逻辑.133.3 系统的体系结构.143.4 系统的功能模块.153.5 系统的数据结构设计.163.5.1 概述.163.5.2 用户个人信息数据结构设计.173.5.3 用户状态数据结构设计.173.5.4 用户作业数据结构设计.173.5.5 系统信息数据结构设计.183.5.6 日志数据结构设计.183.5.7 遥感元数据数据结构设计.183.6 系统的安全策略.193.7 系统的环境及要求.201兰州大学专业学位研究生学位论文 闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计第四章 数据采集子系统的设计.214.1 概述.214.2 数据采集子系统中关键功能模块的设计.224.2.1 图像入库.224.2.2 遥感产品入库.234.2.3 CSV数据入库.254.2.4 用户自定义数据入库.264.2.5 查询结果导入计算节点.27第五章数据查询子系统的设计与实现.295.1 概述.295.2 数据查询子系统中关键功能模块的设计与实现.295.2.1 简单查询.295.2.2 复杂查询.305.2.3 空间查询.335.2.4 地图查询.34第六章数据导出子系统的设计.356.1 概述.356.2 数据导出子系统中关键功能模块的设计.366.2.1 图表展示.36622地图展示.376.2.3 动态展示.396.2.4 数据下载.40第七章数据计算服务子系统的设计.437.1 概述.437.2 数据计算服务子系统中关键功能模块的设计与实现.447.2.1 数据去重.44722坐标变换.452兰州大学专业学位研究生学位论文 闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计7.2.3 地图融合.477.2.4 像素统计.497.2.5 图像识别.51第八章用户管理子系统的设计.538.1 概述.538.2 用户管理子系统中关键功能模块的设计.548.2.1 用户基本管理.548.2.2 用户权限管理.568.2.3 用户作业管理.578.2.4 用户行为分析.59第九章节点维护子系统的设计.619.1 概述.619.2 节点维护子系统中关键功能模块的设计.629.2.1 节点运行监控.62922节点动态拓扑.639.2.3 节点配置设置.649.2.4 数据分片设置.669.2.5 节点任务分配.67第十章日志管理子系统的设计.7010.1 概述.7010.2 日志管理子系统中关键功能模块的设计.7110.2.1 节点日志收集.7110.2.2 日志并行分析.7210.2.3 日志备份.7410.2.4 分析结果可视化.75第十一章系统的分布式架构部署.7711.1 概述.773兰州大学专业学位研究生学位论文 闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计11.2 MongoDB分布式架构的部署.7711.3 Hadoop分布式架构的部署.7911.4 MongoDB与Hadoop分布式架构统一管理.81第十二章系统性能及部分应用测试.8212.1 概述.8212.2 系统分布式存储架构稳定性测试.8212.3 系统分布式存储架构安全性测试.8312.4 数据清洗及数据导入性能测试.8412.5 数据检索性能测试.89第十三章总结及下一步工作.9013.1 工作总结.9013.2 下一步主要工作.90参考文献.92攻读硕士期间参加的主要科研项目.94致谢.95附录1 L45TM数据产品元数据清洗及导入代码.96附录2 L45TM数据产品内文件解压及导入代码.98附录3波段文件名中元数据的提取代码.1004兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计第一章绪论1.1 遥感数据管理系统现状随着遥感技术的发展,卫星分辨率与覆盖率的日益提高,遥感数据的数据量呈爆炸式增长,目 前每天以TB级别增长,存储级别已经为PB级别。因此对海量遥感数据的高效存储与管理已经成为 计算机科学研究者与地学研究者共同关注的问题。对海量遥感数据存储而言,通常需要结合其时间 与空间特性设计相关存储结构。同时由于遥感数据增量大、总量大,在存储时应采用分布式存储技 术,在负载均衡的基础上,实现数据的分布式存储,以适应日益增长的数据量。对遥感数据的管理 而言,人们最关注的就是高效检索功能,由于遥感数据单个文件大、总数多,在检索时速度会受到 很大限制,因此海量遥感数据的管理需考虑建立一个科学、合理的存储模型,以提高数据的访问速 度。目前,国外遥感数据管理系统或数据存储中心主要有NASAEOS,World Wind,Google Earth,Google Maps,Bing Maps,Microsoft TerraServe,ESA,Earth Simulator,GeoEye 等。国内遥感数据 管理系统或数据存储中心主要有天地图,中国资源卫星应用中心,国家卫星气象中心,国家海洋应 用中心等。(1)NASA EOSNASA EOS是由美国国家航空航天局开发的地球观测系统。该系统包括了一系列的低轨卫星通 过低倾角长期观测地球表面,其中包括地表、农业、生物圈、大气、海洋等。作为美国国家航空航 天局科学任务理事会中地球科学部分的一个重要组成部分,EOS能够将对地球的认识作为一个集成 的系统。通过对早期地球系统观测任务的总结分析,为了建立一个更好的观测系统,NASA EOS项 目启动于上世纪80年代,并在90年代早期成型。EOS包含了一系列的观测卫星,以监测气候系统 的关键要素与它们在长期全球观测中的关联关系。EOS的任务主要集中在以下气候科学领域:辐射、云、水蒸气和沉淀;海洋;温室气体;陆面水文和生态系统过程;冰川、海洋冰和冰盖;臭氧层和 平流层化学;天然气和人造气体溶胶口。NASA EOS主要由三个部分组成,其中包括空间数据观测 平台、数据信息管理系统、科学研究计划。在EOS的发展过程中,经历了三个重要困难阶段2引:1)1995年,也就是EOS初步成型的时代,数据量日益增大,面对海量数据,当时系统难以解决其高效 存储与管理的问题;2)2005年,数据量规模空前,需要解决的最大问题就是在海量数据中实现高 效检索与快速分发,以满足用户对数据的查找需求;3)随着海量数据存储与管理的发展,对硬件方 1兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计面的考虑日益突出,当前面临的问题主要是如何在低能耗、低损耗的情况下存储与管理数据,同时 对数据进行相关维护。EOS的数据存储格式非常统一,系统内所有类型的EOS数据具有统一的访问接口。EOS的数 据格式是一种基于分层的扩展格式,即HDF-EOS数据。此格式为EOS的标准产品格式。HDF-EOS 在HDF支持6种数据类型的基础上定义了 3种额外数据类型,分别为:点、网格与刈幅。同时采用 了结构化的元数据来描述HDF-EOS文件的相关信息,以便于对数据的检索与管理巴叫(2)World WindWorld Wind,由NASA研发,是一款开源的地理科普软件。World Wind是一个可视化的地球仪,它允许用户从卫星的高度俯瞰地球上的任何地方,同时可进行不同比例的放大。WorldWind利用高 分辨率卫星影像和SRTM高程数据为用户提供丰富的三维地球视觉经验,使用户有身临其境的感觉。World Wind包含一个软件包,使用户能够访问并浏览其他网站的地图或图像,使其包含信息量更加 丰富。World Wind能够通过鼠标操作实现所有功能,并适合各个年龄段的人使用。在数据组织形式上,World Wind采用基于球面经纬度网格的多分辨率影像瓦片层来存储遥感数 据。每个瓦片根据其所在行列号进行命名,其中具体命名采用瓦片数据集、层级、行号行号.列号 结合的方式叫。(3)谷歌地球谷歌地球(Google Earth)是一款由Google开发的虚拟地球仪软件,用户可以通过下载电脑客 户端或移动App来免费使用。谷歌地球将遥感影像数据按一定组织形式布置在一个三维的地球模型 上,用户可以通过鼠标操作查看特定区域内的图像信息。谷歌地球于2005年推出,并成为用户最乐 于使用的产品之一。谷歌地球采用分层瓦片格式存储数据,同时根据不同层级与数据参数,每个瓦片的像素大小不 定,但通常瓦片为正方形。不同分辨率的瓦片影像数据根据其分辨率被放置在不同的层级上,用户 在操作时,通过鼠标点击放大或缩小来选择不同分辨率层级的数据。每个层级中的瓦片通过单独的 KML文件来标记原始影像文件的相对路径、地理坐标范围、层级以及与上下层级的对应关系,以便 于对影像数据的高效管理与检索。谷歌地球的数据组织形式为金字塔模式,顶层分辨率最低,按层 级逐级提高分辨率。谷歌地球内影像文件根据瓦片列序来命名,其中具体命名采用瓦片数据集、放 大层级、行序、列序.影像类型相结合的方式。在谷歌地球内,遥感影像数据通常格式统一为JPEG、PNG 或 GeoTIFF910o止匕外,谷歌地球采用谷歌云计算框架来完成对影像数据的检索、显示工作。谷歌云计算框架主 要包括四部分,均为谷歌自行研发,具体如下:分布式文件管理系统GFS、非关系型数据库BigTable.2兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计并行计算框架MapReduce与分布式提供锁服务的服务器Chubby11-130谷歌地球主要采用基于GFS 的BigTable来存储和管理遥感数据,利用分布式服务器集群来对数据进行索引,从而能够快速、准 确地查找不同空间与分辨率的影像数据-I%(4)谷歌地图谷歌地图(Google Maps)是由Google公司制作的一款电子地图产品,该产品内除了常见地图 信息外还包含了局部详细的卫星图像与3D全息影像信息。此款产品在功能上与谷歌地球类似,但 展示方式具有极大差别,谷歌地图采用比较传统的地图展示形式,而谷歌地球采用形象的地球仪形 式。在2014年3月5日,谷歌表示已经完成印度75个当地比较流行场所的室内地图,但只有22个 城市用户可以访问。在数据存储格式上,谷歌地图采用与谷歌地球近似的金字塔结构瓦片模型存储遥感影像数据。谷歌地图采用四叉树的形式,将数据按分辨率进行分层,其中第一层影像代表整个球面,通过经纬 度为。的中心,将影像分为四块子节点,每一块子节点作为下一层的父节点,按此规则将地球表面 进行划分,每一层代表了不同的缩放等级。通过上述组织形式,用户可以通过鼠标操作,简易地获 得想要查询区域的影像信息。止匕外,谷歌地图采用的影像数据单个文件较小,存储格式为JPEG与 PNG9o(5)Bing MapsBingMaps是由微软公司研发并推出的一款在线地图服务产品。通过BingMaps,用户可以在浏 览器上查看世界的每一个角落。Bing Maps原名为“MSN Virtual Earth”,在微软推出了 Windows Live 后它被改进后更名为Live Search Maps并整合到了 Windows Live产品系列中。Bing Maps目前已经 成为Bing搜索引擎中重要的组件之一。Bing Maps同谷歌地图类似,采用四叉树的形式将数据进行瓦片式分层。在划分方式上,第一 层即为2义2瓦片,通过4个影像将地球表面划分,4个影像中心即为经纬度均为0的点。第二层以 第一层每个影像中心作为父节点,将各个影像继续按照2义2的形式将影像四等分,依此类推,逐层 将地球表面细化。在本系统内,每个瓦片影像数据大小均为256X256像素,这意味着每个影像数据 可以更为方便地存储与管理。在Bing Maps中,影像的命名方式按照其所在层级的列序来进行,数 据格式通常采用JPEG与PNG17o(6)TerraServerTerraServer是一家提供卫星与航空影像的公司,其产品能够为个人和商业用户提供低成本、易 于理解的空间解决方案以满足其了解复杂世界的需求。TerraServer服务的行业包括工程、农业、法 律、保险、娱乐和媒体等。止匕外,TerraServer也能够为政府、非政府组织和急救反应机构提供有效 3兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计情报。目前,TerraServer的高品质数字影像产品包括黑白、彩色、多光谱、雷达和激光雷达。TerraServer对地球的划分采用了 UTM投影方式,该投影系统常用于美国军方制作军事地图和 地球资源卫星影像。UTM投影将北纬84度与南纬80度之间以6度为单位,将其分为60个带,其 中美国占10个UTM区域。TerraServer将地球按UTM投影方式划分后,按划分结果存储和管理遥 感影像数据口82。(7)ESAESA(欧洲航天局)成立于1975年,其主要任务是在和平的基础上促进欧洲各国空间研究的发 展,目前主要任务有空间科学研究、对地球及其环境的观测、负责电信业务、提供发射装置、载人 飞行与微重力研究。ESA数据中心采用基于任务的分布式存储结构,通过一个多任务目录框架来管 理各个分布式存储中心口。ESA采用分级存储管理的方式,按数据类型将数据分为在线数据与近线数据,存储方式如下:在线数据采用SAN+Cluster方式存储,即集中式管理高速存储网络与集群相结合的存储方式;近线 数据采用磁带库存档方式存储。目前ESA已经建立了一个能够满足PB级数据获取、存储、管理、访问的数据仓库以23。(8)Earth SimulatorEarth Simulator(地球模拟器)由日本科学技术厅、日本原子能研究所、宇宙航空研究开发机构、海洋研究开发机构共同研发,并于2002年3月15日正式上线。该产品是一个大型矢量超级计算机,建立初期采用了 640个计算节点,从而搭建了一个可以模拟地球环境的集成计算和存储框架。但由 于节点过多,能源消耗和维护成本太大,2009年节点数量减少到了 160个。随着计算机技术的发展,该系统通过硬件升级与软件优化,计算速度和存储性能提高了 23倍,但高额的能耗问题仍然没有 得到很好的解决。在数据管理方面,Earth Simulator采用网格管理方式对数据进行管理,同时采用分 布式集群来存储数据侬。Earth Simulator能够对大气、陆面以及海洋模型进行模拟,在模拟计算时,将地球表面以立方体 网格的方式进行划分,每个计算节点只负责某个特定区域内的数据计算内26。随着划分区域的增多,计算节点也会相应增加,尽管会极大提高计算速度,但同时也会增加系统整体的能耗。(9)GeoEyeGeoEye是目前世界上最大的提供商业遥感卫星影像的地理空间信息供应商。该公司的用户主要 包括:国防用户、战略合作伙伴、经销商和商业客户,此公司产品能够为以上用户提供全球测绘、监测与测量。该公司的影像产品质量极高,覆盖范围达4.2亿平方公里,由于每天数据量急剧增长,对海量数据的存储与管理已成为GeoEye所面临的最大挑战。4兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计对于数据的保存与管理,GeoEye最初采用自行研发的分级存储方式来将磁盘池与磁带库之间的 数据同步管理。Geoeye采用StroNext数据管理系统作为数据获取、处理与分发的中间系统,使以上 功能能够正常有序运作,同时能够简化分级存储的程序并便于系统维护。该系统能够将数据获取系 统SGI与处理影像的系统连接到数据共享存储池,通过数据共享池实现特定数据集在不同系统间的 交互与共享mi。(10)天地图天地图是由国家测绘地理信息局主导建设的国家地理信息公共服务平台。该平台地理数据信息 来源主要有:来自全国各级地理测绘部门提供的地理信息,来自相关政府部门、企事业单位、社会 团体、大众的地理信息资源。该系统面向大众,提供免费、全面的地理信息检索服务,用户能够根 据自身需要使用相应服务。该系统于2011年1月正式上线并正式运行,其主要设计思想为:通过集 成来自全国的地理信息数据,建立一个一体化的地理信息数据体系,同时提供多个部门之间的共享 服务,通过资源共享使得信息资源更加完善2%与常见地图系统相似,天地图也采取了基于多分辨率的金字塔分层方式,根据经纬度对地球球 面进行划分,将地理空间数据进行分层存储,同时每层设置固定分辨率,通过逐层存储来满足用户 浏览地图需求。在瓦片分层方式上,天地图采用的是四叉树分层方式,每层的四个瓦片均作为下一 层四个瓦片的父节点,按此规则依次划分整个地球表面。天地图瓦片影像数据大小为256X 256像素,由于数据较小,常用数据格式为PNG或JPG。(11)中国资源卫星应用中心中国资源卫星应用中心由国家计委、国防科工委和航空航天部于1990年联合筹备成立,目前由 国家发改委和国防科工委负责业务领导,中国航天科技集团负责行政管理,现已成为国家三大卫星 应用中心之一。中国资源卫星应用中心主要负责陆地卫星遥感影像等数据的存储与管理,同时能够 为用户提供检索、浏览与下载等功能。在数据管理上,中国资源卫星应用中心采用集中式存储的方式存储数据,采用分布式处理数据。网络管理方面,采用内部与外部网络相结合的方式,同时通过网闸将二者隔离。数据存储采用的数 据库为Oracle,通过B/S架构为用户提供Web方式检索服务。中心内数据产品格式均为GeoTIFF,能够为用户提供详细的影像数据,同时也提供2级遥感数据产品29,3叫(12)国家卫星气象中心国家卫星气象中心成立于1971年,是一个国家级科技型的提供公益基础地理信息服务的单位。该中心的主要业务包括:拟定中国气象卫星与气象事业的发展规划、承担气象卫星应用的业务运行 与卫星的运行管理、负责气象卫星应用启动的建设与维护、从事相关气象领域与气象卫星领域的研 5兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计究、开发气象卫星相关应用产品、提供气象预警服务等。该中心为国家三大卫星应用中心之一,其 重要职责是负责FY-1/2/3系列风云卫星数据的收发、存储与管理。通过对气象数据中心的建设,努 力推动气象数据的高效、便捷管理,努力实现低能耗、高共享、高扩展式存储m3叫在数据存储与管理上,国家卫星气象中心采用SQLServer与Sybase企业级数据库,将数据按照 条带进行组织,根据卫星的类型和数据采集日期进行编目,采用HDF格式存储数据。此外,该中心 系统全天运行,用户能够通过Web来访问数据中心进行数据检索与下载。(13)国家卫星海洋应用中心国家卫星海洋应用中心直属国家海洋局,是目前国内三大国家卫星应用中心之一,主要负责海 洋卫星的发展与应用工作。此中心主要职责是负责HY-1A/1B、NOAA系列卫星与EOS-MODIS卫星 相关数据的收发、存储及管理。在存储架构上,中心内存储系统采用NAS三级存储体系结构,其中 一级存储结构采用光纤磁盘阵列进行在线存储,以满足对数据高速存取的需求;二级存储结构采用 大容量SATA磁盘阵列,以较低成本存储大量数据;第三级结构主要通过磁带库和刻录系统对在线 数据进行备份MM。上述管理系统或数据存储中心存在以下问题:(1)就功能而言,上述产品功能集成性较低。主要产品功能包括数据产品展示、数据存储与管 理和数据处理、存储与分发。从功能角度来看,没有一个产品可以包括上述所有功能。而随着大数 据时代的来临,用户对数据的需求方式更加多样化,不仅要满足其可视化需求,还应为用户提供数 据管理、处理和下载等相关接口。(2)就数据类型而言,上述产品管理的数据类型较为单一,而且部分数据区域性不强。谷歌地 图等地图类管理系统具有较大区域的数据,但其数据功能主要是为用户提供直观展示,并不能全面 地展示该地区的各项地学特征,也不能将其数据提供给用户以满足用户多样化的计算方式。数据存 储中心通常针对特定卫星产品进行存储,在跨产品类型检索时会出现诸多不便,不能满足用户针对 区域性的多种数据类型查找需求。(3)就数据区域而言,上述产品的数据区域包括两种:全球性数据与固定卫星数据。对于较专 业的用户而言,需求数据通常为特定区域内的多种类型数据,因此全球性数据检索速度慢、数据会 存在不全的情况,固定卫星数据区域可能会同用户需求区域产生偏差。(4)就网络因素而言,大部分国内用户在使用国外产品时,会受到明显的网络限制。用户可能 面临网速限制和访问控制限制的问题,因此用户难以下载或上传所需数据。随着大数据时代的到来,海量数据在各行各业中产生,其中地学数据尤为突出。每天地学数据 以TB级别增长,然而其中蕴含的知识却难以被挖掘,同时数据量的庞大也给数据存储及分析带来 6兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计了巨大的压力。但地学大数据的共享与分析所带来的经济价值却不容忽视,因此对地学大数据的存 取、分析、处理具有重要意义。本项目为甘肃省资源环境科学数据工程技术研究中心开放基金项目基于MongoDB与Hadoop 平台的地学大数据管理系统。本项目针对地理空间数据云所提供的西北五省约100TB多种类型遥 感数据产品,开发了 一个将分布式NoSQL数据库MongoDB与Hadoop分布式计算平台相结合的遥 感数据管理系统。本系统能够针对用户需求,设计相关实用性接口,为用户提供数据定制服务,同 时本系统内数据较为具有针对性,大部分为西北五省地学遥感数据,能够为特定用户提供便捷服务。中国科学院寒区旱区科学大数据中心成立于2014年6月,拥有大型超算机房与500TB的磁盘 存储阵列,为本项目提供了有力的硬件支持。1.2项目目标及预期效果本项目基于MongoDB与Hadoop平台的地学大数据管理系统所建立的地学数据管理系统主 要针对遥感数据产品,该系统研发完成后需要实现以下几个主要目标:(1)遥感产品管理体系的建立:本项目采用地理空间数据云的约100TB西北五省遥感数据,通过非关系型数据库MongoDB的数据库保存遥感元数据,通过MongoDB文件管理系统保存遥感数 据文件。通过对数据库中的元数据检索,查找所需文件并从文件管理系统内获得文件。止匕外,利用 MongoDB分布式特性,建立数据分布管理框架,对每个存储节点进行备份。最终实现遥感数据的统 一、规范化管理。(2)用户管理体系的建立:由于本系统面向用户的特性,系统在设计时,添加了大量用户管理 模块。用户能够登录并管理个人信息、查看系统状态、查看作业状态等。同时,提供多种用户信息 安全策略,以保证用户安全登录与操作。(3)基于Hadoop的分布式计算框架的建立:利用Hadoop建立一个用于遥感数据计算、日志 分析的分布式计算平台,通过Hadoop分布式集群,实现多种遥感数据处理算法,为用户提供大量计 算接口和更多的数据服务。(4)平台应用功能开发:通过C/S,Java等技术开发系统应用平台,为用户提供一个友善的可 视化操作界面,界面内实现全部功能接口,便于实现平台功能的各项操作。通过该系统的研发,预计本管理系统将达到以下效果:(1)通过该遥感数据管理系统,将用户所关注的地理信息通过地图、图表等形式直观、形象地 展示出来。使用户能够轻易地了解特定时间、区域内的气象、地形等信息。7兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计(2)通过该遥感数据管理系统,使寒区旱区地学工作者能够自由、高效地管理所需地学数据,为其提供稳定有效的科研数据保障。(3)通过该遥感数据管理系统,使得寒区旱区地学工作者能够便利、高效地对自己需求数据进 行定制计算。(4)通过该遥感管理系统提供的管理接口,管理用户能够快速应对系统出现的各种问题,同时 管理用户也可以对用户作业进行分析以获得用户需求预测等数据。1.3项目研究内容基于MongoDB与Hadoop平台的地学大数据管理系统由中科院寒旱所大数据中心自主研发,本人是项目中总体设计的负责人之一,主要工作有以下几方面:(1)负责地学大数据管理系统的可行性分析与需求分析。通过查阅文献等方式查找当前已存在 的实用系统,分析其文件组织形式与存储相关技术。对用户需求进行统计调查,了解地学工作者对 遥感数据的管理需求。(2)针对用户数据、遥感数据、管理数据等设计了相应的数据结构,同时设计了数据在数据库 内存储与组织方式。(3)负责总体框架、技术路线、安全策略等设计,同时设计了系统内所有功能模块,并建立相 关业务流程。(4)设计了遥感数据管理系统内的数据采集系统、数据查询系统、数据导出系统、数据计算服 务系统、用户管理系统、节点维护系统与日志管理系统。(5)通过编程技术实现各子系统内功能模块,并设计部分可视化界面。(6)负责系统分布式架构部署设计,分别建立了 MongoDB分布式存储集群与Hadoop分布式 计算集群。(7)负责系统运行的日常维护、存储与计算节点的监控及维护。本篇论文主要围绕本人承担的主要工作来撰写。8兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计第二章相关理论与技术2.1 MongoDB 概述以下以文献38为依据对MongoDB进行概述。MongoDB是目前较为实用的非关系型数据库之一,采用C+编写,同时提供多种语言如Java、PHP、Ruby等驱动包,便于各类开发者使用。MongoDB采用分布式文件存储架构,能够通过数据 分片将数据按一定规则自动存储到各个存储节点上,同时能够自动实现负载均衡。MongoDB通过复 制集实现对每个存储节点的备份,当存储主节点瘫痪时,备份节点能够自动替换主节点,同时主节 点和备份节点数据能够实现动态同步区。MongoDB是一款非关系型数据库产品,该产品既保留了关系型数据库的大部分特性,同时针对 海量数据对其特性进行了大量扩展。MongoDB支持的数据格式为BSON格式,此类型数据基于JSON 格式并增加了多个参数,可以满足大部分数据类型的存储。MongoDB查询语言的语法类似于面向对 象语言,用户对数据进行CRUD操作较为简单、易于上手,同时MongoDB内几乎支持所有关系型 数据库的功能,因此习惯于关系型数据库的用户也能够很快地适应对MongoDB的各项操作。MongoDB的最主要优势为基于数据分片的分布式存储以及存储节点的自动负载均衡和较为松 散的数据结构(键的数量及键值的种类不定),适合多种格式数据存储在同一集合下。其功能特性如 下:(1)采用集合存储数据。在MongoDB中,集合概念类似于关系型数据库中的表,每个集合内 可以存储大量文档,每条文档类似于常见关系型数据库表中的一行数据。MongoDB内文档采用 BSON数据格式,数据结构为key-value对形式,同时value值也可以嵌入key-value对或一条文档,每条文档均可作为一个数据对象。(2)数据模式自由。在MongoDB内每条文档数据可以包含任意多个key-value对,即同一集 合下的每条数据可以拥有不同数量的键,同时键值也可以以key-value对形式出现。(3)索引支持度高。MongoDB内不仅可以对任意属性(包括对象)建立索引,同时也可以对 坐标数据建立空间索引。(4)查询功能强大。MongoDB不但有面向对象的查询方式,也能够支持SQL中大部分查询方 式。(5)聚合查询能力。MongoDB内提供聚合查询功能,用户能够通过编写脚本进行复杂的查询。9兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计在进行聚合查询时,MongoDB也支持MapReduce功能。(6)数据备份与恢复。MongoDB采用主从存储节点结合的备份方式,主从存储节点数据保持 同步,当主节点瘫痪时,从节点会自动接替主节点成为可用的存储节点。(7)采用二进制存储数据,通过高效的二进制存储方式,MongoDB内可以保存所有类型的数 据对象。(8)采用基于数据自动分片的分布式存储架构。通过MongoDB的自动分片功能,数据可按照 一定规则保存到不同的节点上,同时在数据不断写入的过程中,实现自动负载均衡。止匕外,在负载 均衡的基础上MongoDB能够实现动态拓扑节点,便于支持云计算的扩展。(9)支持Perl、PHP、Java、C#、JavaScript Ruby、C和C+语言的驱动程序,保证大部分开 发人员能够轻易上手,对MongoDB进行进一步的开发。(10)文件存储格式为BSON(JSON的一种扩展)。BSON是一种对象型存储格式,支持数据 内部套嵌。(11)可以通过网络访问。MongoDB服务程序启动时可设置相关权限,用户可以通过网络安全 登录和使用MongoDB o2.2 Hadoop 概述以下以文献39为依据对Hadoop进行概述。Hadoop由Apache基金会开发和维护,是一个具有分布式存储和计算功能的基础架构。Hadoop 通过较高的开发完成度,为用户提供了简易的开发接口,使用户能够在不了解底层运行机理的情况 下根据自身需求编写用于分布式计算的程序,同时将处理结果直观地反馈给用户。Hadoop能够利用 大量低成本的硬件建立一个大型集群,以实现高速运算与存储。Hadoop内数据存储通过一个分布式 文件管理系统HDFS实现,该系统具有很高的容错性,使得低成本硬件组成的存储集群具有较高的 安全性。Hadoop分布式计算框架基于Google提出的MapReduce计算框架,用户能够在MapReduce 编程框架的基础上轻松编写数据处理程序并提交给Hadoop计算平台。HDFS和MapReduce共同组 成了 Hadoop的核心框架网。Hadoop的主要优点如下:(1)高可靠性。Hadoop通过按位操作,极大提高了存储与处理效率。(2)高扩展性。Hadoop内对计算节点数量没有限制,可以动态增删计算节点,以适应计算任务需求。10兰州大学专业学位研究生学位论文闫玮:基于MongoDB与Hadoop的地学遥感大数据管理系统的设计(3)高效性。在处理数据时,Hadoop可以实现节点间数据动态传输,保证节点负载平衡,极 大提高数据处理效率。(
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服