基于MongoDB的空间数据管理毕业论文
2022-06-14 21:29:15
论文总字数:27663字
摘 要
随着近年来GIS产业的飞速发展,GIS对数据的需求越来越高,特别是非结构化数据在空间数据中的比例不断提高,原有的传统数据库已经难以满足GIS空间数据的存储和管理要求。而NoSQL这类数据库存储技术,这正适合解决GIS数据存储所面临的问题。NoSQL数据库中MongoDB以其容易扩展、功能丰富、性能卓越和管理简便等优势深受欢迎。
本文主要通过对MongoDB数据库和Shapefile等GIS数据格式的学习,实现GIS空间数据基于MongoDB的管理,主要包括空间数据存储与空间数据管理两个部分。本文以MongoDB作为数据库,通过使用Python语言平台,结合GDAL空间数据转换库,实现空间数据的存储。而通过JavaScript对MongoDB数据库进行操作,结合可视化工具MongoVUE,实现对空间数据的管理,主要包括查询、插入、更新等基本功能。
关键词:空间数据管理 MongoDB数据库 GDAL Python
Spatial data management based on MongoDB
Abstract
As the rapid development of the GIS industry in recent years, GIS has increasingly high demand for data, particularly the proportion of unstructured data in spatial data continues to improve. Original traditional database has been difficult to meet the storage and management requirements of GIS spatial data. The database storage technology such as NoSQL is suitable to solve the problem faced by GIS data storage. MongoDB is popular with its advantages in NoSQL database, such as easy to extend, feature-rich, high performance and easy to manage.
This paper focuses on learning MongoDB database and GIS data formats like Shapefile, complete the GIS spatial data management based on MongoDB, including spatial data storage and spatial data management. In this paper, the database is MongoDB, use the Python as language platform, combined with GDAL spatial data conversion library, implements the spatial data storage. Through JavaScript to operate on MongoDB database, combined with visualization tools MongoVUE to manage spatial data, including queries, inserts, updates, and other basic functions.
Key Words: Spatial Data Management; MongoDB; GDAL; Python
目 录
摘 要 I
Abstract II
第一章 绪论 1
1.1 研究背景和意义 1
1.2 国内外研究现状 2
1.3 论文的组织结构 4
第二章 基于NoSQL空间数据管理 5
2.1 空间数据 5
2.1.1 地理空间数据特征 5
2.1.2 空间数据管理模式 6
2.2 NoSQL非关系型数据库 8
2.2.1 NoSQL概念 8
2.2.2 NoSQL特点 9
2.3 面向文档的 MongoDB 数据库 10
2.3.1 MongoDB 体系结构 10
2.3.2 MongoDB 的分片 11
2.3.3 MongoDB 的优缺点 11
第三章 开发环境配置 13
3.1 MongoDB环境配置与快速使用 13
3.1.1 MongoDB的安装配置 13
3.1.2 MongoDB的快速使用 13
3.2 MongoVUE基本配置 15
3.3GDAL环境配置 17
3.3.1 GDAL类库简介 17
3.3.2 OGR体系结构 17
3.3.3 GDAL编译 18
3.4 Python环境搭建 19
3.4.1 Python 综述 19
3.4.2 Python配置 20
第四章 空间数据管理系统设计与实现 23
4.1 MongoDB表结构设计 23
4.2 相关软件关系设计 24
4.3 空间数据入库实现 25
4.4 MongoDB管理功能实现 28
结束语 30
参考文献 31
致谢 33
第一章 绪论
1.1 研究背景和意义
地理信息系统(GIS)是采集、存储、管理和分析地理空间数据的技术系统,在空间数据获取、存储、分析和应用中,非结构化和半结构化存储格式逐渐成为一种主流[1]。传统的关系型数据管理系统(RDBMS)对于海量非结构化和半结构化数据的存储效果不理想,其独有的关系模型制约了对海量空间数据快速访问和处理的能力[2]。需要有对半结构化、非结构化存储和管理具有优势的数据库来改善不足。MongoDB支持GIS丰富数据类型的存储和GIS海量数据的查询与扩展,同时可以向GIS系统提供高效的访问[3]。MongoDB作为一种新的非关系型数据库在非结构化数据管理中表现出好的应用前景。
随着地理信息技术(GIS),尤其是网络地理信息技术(Web GIS)、云地理信息技术(Cloud GIS)的发展,不同行业、不同部门、不同应用之间地理信息数据的共享已经越来越普遍,共享数据的规模和容量也随之越来越大,这给共享数据的存储和管理提出了新的课题[4]。而传统的关系型数据管理技术经过了将近40年的发展,在扩展性等方面遇到了巨大的障碍[5]。基于现在的架构模式已逐渐显现出一些不足,如数据之间的强关联关系制约着检索的高效性,缺乏对多媒体信息的处理能力,难以满足数据快速增长带来的更新和查询需求等[6]。传统数据库已经难以满足愈加巨大的数据存储和管理等需求。
NoSQL是与传统RDBMS(Relational Database Management System)截然不同的、基于键值对的非关系型数据库管理系统.。目前各种NoSQL数据库的可扩展性都较高,主要用来解决对数据库的高并发读写、海量大数据的高效存取问题[7]。近年来,各种NoSQL数据库产品发展十分迅猛,典型代表包括MongoDB、Membase、CouchDB和Apache Cassandra等。其中MongoDB作为一款性能优良,功能丰富,支持海量数据存储的数据库管理工具,愈发受到用户的青睐[5]。它支持的数据结构非常松散,因此可以存储比较复杂的数据类型。它是由C 语言编写的、基于Google BigTable分布式文件存储系统的NoSQL数据库,同时也是高性能、开源、无模式的文档型数据库,主要用于提供可拓展的高性能数据库解决方案[8]。
请支付后下载全文,论文总字数:27663字