- 无标题文档
查看论文信息

中文题名:

 基于矢量瓦片的网络地图服务与共享平台    

姓名:

 李杰    

学号:

 1403121801    

保密级别:

 公开    

论文语种:

 chi    

学科代码:

 081203    

学科名称:

 计算机应用技术    

学生类型:

 硕士    

学位:

 工程硕士    

学校:

 西安电子科技大学    

院系:

 计算机学院    

专业:

 计算机技术    

第一导师姓名:

 李龙海    

第一导师单位:

 西安电子科技大学    

第二导师姓名:

 李莉    

完成日期:

 2017-06-14    

外文题名:

 Web Map Service Sharing Platform based on Vector Tile    

中文关键词:

 矢量瓦片 ; WebGIS ; 地图制图 ; Mapbox ; Node.js    

外文关键词:

 Vector Tile ; WebGIS ; Mapping ; Mapbox ; Node.js    

中文摘要:

最近几年来,随着地理信息产业的高速发展,基于网络提供地图服务已经成为一种主流的地理空间数据应用方式。国内的各大地图提供商(百度、高德等)都有自己的地图服务以及一系列衍生的功能服务。然而,随着用户数据在地图制作的过程中发挥出越来越大的作用,一个高性能、交互性强的地图服务与共享平台也显得越来越有必要。

本文研究了Mapbox矢量瓦片相关技术,并结合Node.js、MongoDB等技术,设计并实现了一个扩展性强、高性能且交互性强的地图服务与共享平台。该平台包括客户端、服务器端以及数据存储三部分,提供了从地理空间数据上传、获取、管理、在线制作地图到地图共享等一系列的网络地图服务。本文的主要工作如下:

(1) 研究了Mapbox矢量瓦片相关技术,具体有矢量瓦片标准、矢量瓦片样式文件结构、MBTiles瓦片存储技术、Tilelive瓦片调度技术等相关技术、标准、工具链。分析了通过矢量瓦片实现在线制图的两种原理和矢量瓦片编码规范。Mapbox矢量瓦片相关技术的研究是本文的理论基础部分。

(2) 明确了矢量瓦片制图的关键要素,即瓦片集、数据集、字体、符号库、样式。在此基础上清晰地划分出功能模块,进而对平台进行了网络结构设计、软件架构设计和数据存储方式、存储结构设计。

(3) 实现了网络地图服务与共享平台原型系统。采用适合海量数据存储且扩展性强的NoSQL数据库MongoDB作为主要存储手段;采用具有良好高并发特性的Node.js作为开发平台;Express作为后端服务框架,搭建了一系列的RESTful API;采用支持组件化开发方式的前端框架Vue进行客户端搭建;利用AJAX技术进行前后端通信,并且使用JSON Web Token技术作为身份认证手段。

(4) 提供了瓦片集数据、字体数据、符号库数据作为平台默认数据,并依据这些数据制作了两种默认样式Bright和Satellite,供用户进行不同场景的制图开发。

(5) 对服务器端和客户端进行了功能测试并利用性能评测工具进行了性能测试。

基于以上的研究、设计与实现,在实验室环境和阿里云上部署了本平台,经过本地和在线的测试,平台实现的功能得到了验证。基于矢量瓦片的网络地图服务与共享平台不仅能满足用户分享、管理数据和在线制图的需求,还具有跨平台、易扩展、性能强大等优点。

外文摘要:

With the fast development of geographic information industry in recent years, map service based on network has become a mainstream geospatial data application way. Major Chinese map suppliers (Baidu, and Amap etc) have their own map services and a series of extending functional services. However, since user data has played a much more important role in the process of mapping, it is the high time for developing a high-performance map service sharing platform with strong interaction capacity.

 

This thesis researches the related technologies of Mapbox Vector Tile, and combines Node.js, MongoDB and other technologies to design and realize the web map service sharing platform. The platform includes three parts, namely client, server and data storage, which provides a series network map service such as geospatial data uploading, acquiring, management, online mapping and map sharing. The main works of this thesis are as follows:

 

(1) Related technologies of Mapbox Vector Tile are researched, including vector tile standard, vector tile structure, MBTiles storage technology, Tilelive scheduling technology. Also, the two means of online mapping realization based on vector tile are analyzed. The research on the related technologies of Mapbox Vector Tile is the basic theoretical part of this thesis.

 

(2) The key elements, namely tileset, dataset, font, symbol library, and style file, of vector tile mapping are identified. Given these map styling elements, functional modules are clearly classified. Then, the network structure, software structure, data storage are designed.

 

(3) The prototype system of the map service sharing platform is implemented. MongoDB, a NoSQL database which is suitable for massive data storage, is used as main storage way. Node.js, which possesses better high concurrency, is used as development platform, Express is used as server side framework, and a series RESTful API is established. Frontend framework Vue is used to conduct modularization and build client side web page. AJAX is used to conduct client and server communication, and JSON Web Token is used as the method of Authentication.

 

(4) Tileset data, font data, symbol library data are provided as default data of the platform. Two kinds of default styles Bright and Satellite are designed and provided based on default data so that users can conduct mapping in different scenes.

 

(5) The functional tests are carried out on both server and client sides and the performance test tool is used to test the platform.

 

Based on above research, design and realization, this platform is finally deployed in lab environment and Ali Cloud. Through local and online tests, the platform’s functions are confirmed. The web map service sharing platform based on vector tile not only can satisfy users requirements to share, manage geospatial data and mapping online, but also possesses the advantages of cross platform, being easy to extend and better performance etc.

参考文献:
[1]黄家栋. 分布式地图切片系统的设计与实现[D]. 西安电子科技大学硕士学位论文. 2014
[2]曹建成, 王凯, 郭朝阳. 天地图客户端自助制图技术研究[J]. 测绘通报, 2016(9):123-126.
[3]ArcGIS10.4矢量瓦片介绍[EB]/[OL],http://zhihu.esrichina.com.cn/article/567
[4]麦世昌, 谢小燕. 浅谈手机地图产品未来发展方向——基于高德地图和百度地图[J]. 中国新通信, 2016(24):92-93.
[5]黄蔚. 国家地理信息公共服务平台天地图[J]. 卫星应用, 2014(1):41-44.
[6]朱紫焱, 伊雪琴. ArcGIS的演进路径研究[J]. 软件导刊, 2005(16):20-22.
[7]余冬梅, 曹阳, 高虎. GIS中空间数据结构综述[J]. 福建电脑, 2010, 26(2):5-6.
[8]关颖. 基于REST的瓦片地图Web服务研究[D]. 江西理工大学, 2013.
[9]任留成, 杨晓梅, 赵忠明. 空间墨卡托投影研究[J]. 测绘学报, 2003, 32(1):78-81.
[10]刘派. 基于Node.js的热计量监控预警系统的设计与实现[D]. 北京邮电大学, 2013.
[11]Cantelon M, Harter M, Holowaychuk T, et al. Node.js in Action[C]// Manning Publications Co. 2013.
[12]王金龙, 宋斌, 丁锐. Node.js:一种新的Web应用构建技术[J]. 现代电子技术, 2015, v.38;No.437(6):70-73.
[13]Banker K, Bakkum P, Hawkins T. MongoDB in Action[J]. Pearson Schweiz Ag, 2011.
[14]霍多罗夫, 迪洛尔夫程显峰. MongoDB权威指南 : MongoDB: the definitive guide[M]. 人民邮电出版社, 2011.
[15]张尧, 甘泉, 刘建川. 基于MongoDB的地理信息共享数据存储模型研究[J]. 测绘, 2014(4):147-150.
[16]Gong T X H, Xu-Wei L I. Protocol Buffers——Nearly 100 Times Faster Than XML[J]. Computer & Information Technology, 2009.
[17]Mapbox Vector-Tile-Spec[EB]/[OL]. https://github.com/mapbox/vector-tile-spec/
[18]Protocol Buffers[EB]/[OL]. http://developers.google.com/protocol-buffers/
[19]Mapbox MBTiles-Spec[EB]/[OL]. https://github.com/mapbox/mbtiles-spec/
[20]Awesome-Vector-Tiles[EB]/[OL]. https://github.com/mapbox/awesome-vetor-tiles/
[21]Mapnik[M]. Cede Publishing, 2012.
[22]Free Vector Tiles Downdload[EB]/[OL]. http://osm2vectortiles.org/downloads/
[23]CartoCSS[EB]/[OL]. https://carto.com/docs/carto-engine/cartocss
[24]Mapbox.Mapbox-GL-Style-Spec[EB]/[OL]. https://www.mapbox.com/mapbox-gl-js/style-spec/
[25]王永茂, 彭维平, 王玉琨. 用VC++实现矢量图形的无极缩放[J]. 福建电脑, 2006(6):182-183.
[26]陈腊梅, 李为, 程振林,等. AJAX跨域访问的研究与应用[J]. 计算机工程与设计, 2008, 29(22):5680-5684.
[27]范展源, 罗福强. JWT认证技术及其在WEB中的应用[J]. 数字技术与应用, 2016(2):114-114.
[28]何润民, 马俊. SHA-256算法的安全性分析[J]. 电子设计工程, 2014, 22(3):31-33.
[29]张志飞. 前端工程化的研究与实践[J]. 电脑知识与技术:学术交流, 2016, 12(25):224-226.
[30]许辉, 马晓鹏. 基于Web墨卡托投影地理信息系统设计与实现[J]. 电脑编程技巧与维护, 2011(8):41-43.
[31]Vue官网[EB]/[OL]. https://vuejs.org
[32]前后端分离-rest api设计[EB]/[OL]. http://bbear.me/qian-hou-duan-fen-chi-tr/
[33]加盐密码哈希[EB]/[OL]. https://linux.cn/article-2722-1.html
[34]米可夫斯基. 单页Web应用[M]. 人民邮电出版社, 2014.
[35]李宇轩. 基于WebRTC的即时通信视频系统的设计与实现[D]. 北京交通大学, 2014.
中图分类号:

 11    

馆藏号:

 11-36515    

开放日期:

 2017-12-16    

无标题文档

   建议浏览器: 谷歌 火狐 360请用极速模式,双核浏览器请用极速模式