一种基于NoSQL的地图瓦片数据存储技术_陈超
第38卷第1期2013年
01月
测绘科学
ScienceofSurveyingandMapping
Vol.38No.1
Jan.
一种基于NoSQL的地图瓦片数据存储技术
陈
超①②,王
亮①,闫浩文②,仇阿根①,李玉祥①,朱芳菲①
(①中国测绘科学研究院,北京100039;②兰州交通大学数理与软件工程学院,兰州730070)
【摘要】本文首先介绍了NoSQL(非关系型数据库)的起源与发展,对比其与关系型数据库的优缺点,提出了基于NoSQL的地图瓦片数据存储策略,通过实验对比分析了面向文档型的NoSQL数据库产品MongoDB与SQLServ-er2000在瓦片入库与并发访问性能上的差异。研究结果表明,MongoDB在海量空间数据存储与并发访问方面具有明显的高效性。
【关键词】NoSQL;地图瓦片;MongoDB;四叉树;SQLServer2000【中图分类号】P208【文献标识码】A【文章编号】1009-2307(2013)01-0142-03
1引言
2.2
随着互联网技术的发展,地图的使用被赋予了一种全新的方式。网络地图也作为新一代的地图产品脱颖而出,
[1]
特别是随着瓦片(Tile)的概念被提出以来,利用金字塔模型缓存地图瓦片的模式代替传统WebGIS地图模式构建WebGIS地图框架,大大提高了网络地图的响应速度,具有良好的用户体验。然而,这些海量数据能否被高效的访问,是影响WebGIS性能的重要因素。
为了提高地图切片(也叫瓦片)的访问效率,目前大多数的解决办法是建立空间索引机制,优化查询等方法。然而,这些方法都没有很好地解决访问效率的问题。由于在实际应用中,用户对于数据库高并发读写的需求、对海量数据的高效率存储和访问的需求、对数据库的高可扩展性和高可用性的需求等,传统关系型数据库在这些方面已经难以胜任。论文提出基于非关系型数据库(NoSQL)的地图图片存储方案,并对此方案进行实现。
2
2.1
非关系型数据库(NoSQL)的概述
NoSQL的起源与发展
NoSQL的发展最早可以追溯到1991年BerkeleyDB第一版的发布。BerkeleyDB是一个Key/Value(键/值)类型的Hash数据库。这种类型的数据库适用于数据类型相对简
[2]
单,但需要极高的插入和读取速度的嵌入式场合。No-SQL是一种非关系型的数据存储,它不需要固定的表结构,这种数据存储也不会表现出表之间的连接操作。典型的No-SQL数据库以key-values的形式存储数据,具有模式自由的
特点。
随着Web2.0技术的兴起,传统的关系型数据库在性能上似乎遇到了瓶颈问题,对于用户对数据库高并发的读写要求,特别是超大规模和高并发的SNS类型的Web2.0纯动态网站的时候更显得不能胜任,这时候非关系型数据库应运而生。很多大公司基于NoSQL的概念开发出了很多实际可用的数据库,例如,具有代表性的:Apache的Hbase,Amazon的Dynamo等都取得了显著的应用成效。
NoSQL与关系型数据库的比较NoSQL与关系型数据库的比较如下:
1)关系型数据库是高度结构化的[3],通常由表或视图里的字段构成,这些表都存储一些格式化的数据结构,并且每个元组的字段组成都一样。NoSQL数据库通常存储的是一对键值或数组(Tuples),它允许创建许多不同类型的非结构化的或任意格式的字段,从一定意义上来说,具有减少时间和空间的开销。
2)关系型数据库通常被部署在高性能的服务器上,价格比较昂贵。部署在多台服务器上的关系型数据库,为了保持数据同步,通过依赖互相复制的方法来实现。NoSQL数据库通常使用廉价服务器集群来管理暴增的数据与事务规模,如果有需要只要多增加站点就可以解决,不会影响到服务的提供。
3)NoSQL松散的存储结构可以使得数据的存储更加灵活和方便,但却很难实现数据的完整性。需要注意的是,这一不足在Web2.0的很多应用中并不很重要,因为很多Web实时系统并不要求严格的数据库事务,对读一致性要求很低,有些场合对写一致性要求也不高。
4)到目前为止,NoSQL一般都是以开源的形式存在,它们缺乏供应商技术人员的正式支持。关系型数据库大多是商业性质的,有很好的售后技术支持和服务,可以很好地保证产品的稳定性。
通过上述的比较我们可以看出,与传统的关系型数据库相比,NoSQL非关系型数据库具有存储模式自由、高可扩展性、高并发读写等优势,但也存在着一些诸如实现数据完整性、缺乏强有力的技术支持等问题。2.3NoSQL数据库的产品
NoSQL基本都是基于Key-values的形式进行存储,它
是很多非关系型数据存储的集合的总称。我们可以把No-SQL分为以下几种类型:
表1
数据存储方式
WideColumnStore/ColumnFamilies:DocumentStore:KeyValue/TupleStore:
NoSQL数据库类型
NoSQL数据库类型Hadoop/HBase、HypertableCouchDB、MongoDB
BerkeleyDB、Redis、TokyoCabinet
AmazonDynamo、Dynomite
),男,云南曲作者简介:陈超(1986-靖人,在读研究生,主要研究方向为地
理信息系统开发与应用、WebGIS等。E-mail:evedene@http://doc.guandang.net
5-20收稿日期:2011-基金项目:公益院属基本科研业务费基
金项目(7771014)
EventuallyConsistentKeyValueStore:
通过上述几种类型,我们大概可以把NoSQL分为两大类:面向文档的NoSQL和键值NoSQL。
1)面向文档的NoSQL
面向文档的NoSQL有CouchDB、MongoDB等,其中,MongoDB是一种基于JSON的面向文档的数据库,数据以BSON格式组织成一个文档,存储在一个集合里[4]。MongoDB可以将异构数据存储在同一个数据库中,同时其每个数
据集合中可以包括不同类型的数据,具有很高的访问效率。MongoDB自带一个分布式文件系统[5],用来支持海量数据的存储;此外,MongoDB还支持动态查询、完全索引;支持复制和故障恢复;自动处理碎片,以及支持云计算层次的扩展性等。
2)键值NoSQL
[6]
键值NoSQL有BerkeleyDB,Redis等,其中,Berke-leyDB是一种功能强大、可处理海量数据、支持高并发性和多样性扩展的键值数据库。它可以保存任意类型的键/值对,而且可以为一个键保存多个数据。BerkeleyDB其函数库只有300KB左右,却能管理高达256TB的数据。Berke-leyDB不支持复杂的SQL语言,从而避免了大量解析和处
[6]
理的开销,它适用于嵌入式应用、实时系统等。
3地图瓦片数据存储方案
在实际应用中我们发现,地图数据以海量著称。如何有效地组织地图数据,从而使其被高效的访问,是我们必须考虑的问题。在WebGIS中,客户端经常向服务器发送地图图形数据的请求,为了便于传输和减轻服务器端的压[7]
力,我们可以建立金字塔式的地图图形瓦片,将瓦片存储在NoSQL中,并建立服务器端缓存,客户端只需到缓存中下载需要的图片。3.1四叉树切割地图
首先,我们需要对原始数据进行配准和坐标转换。由
[8]
于我国属于东西延伸的中纬度地区,除1∶1000000之外的基本比例尺地形图,均采用横轴墨卡托投影,这也是Ya-hoo及国内众多在线地图服务的数据源投影选择的依据。然后,从左上角开始进行切图,每张瓦片的大小为256×256。以后不同等级地图之间采用四叉树分图法,即分辨率每增加一级,第L级上的一张瓦片到第L+1级将裂变成4张。裂变后每一子块采用的编码规则是:按照每一子块裂变成4块,左上、右上、左下、右下,分别用z、x、v、t表示。每一子块的 …… 此处隐藏:7370字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高中教育]电子线路高频非线性部分2.1
- [高中教育]中班美术活动——我的小手
- [高中教育]常用三极管参数大全
- [高中教育]计算机常见故障及解决办法
- [高中教育]风机基础环水平度控制方法探讨
- [高中教育]机械安全工程(专升本)阶段性作业3
- [高中教育]2009年安徽省高考语文考试说明刍议
- [高中教育]unit5 let's eat公开课教案设
- [高中教育]计算机网络原理课后习题答案
- [高中教育]2016-2022年中国新能源市场研究与投资
- [高中教育]2015-2020年中国会议行业市场评估及投
- [高中教育]经销商大会峰会主持人串词开场白
- [高中教育]2014新版北师大数学三年级上册小熊购物
- [高中教育]七年级第一学期体育与健康全套教案
- [高中教育]第三章:国际金融市场
- [高中教育]六年级下册数学单元测试-2.比例 北师大
- [高中教育]2016年上海海事大学法学院624刑法之《
- [高中教育]中国碳化钙产业竞争现状及未来五年投资
- [高中教育]网络时代,我们怎么玩
- [高中教育]圆锥曲线——高中数学基础知识与典型例
- 高集医院世界艾滋病宣传日活动方案
- 苏教版六年级英语上册期末试卷含答案
- 全民枪战生化英雄模式幽灵怎么玩 生化
- 灿烂的宋元文化一导学案
- 第2章货币资金与应收款项
- 北师大版八年级下册数学第三章《分式》
- 浅析高分子材料成型加工技术
- 华南理工大学2013年度共青团先进集体及
- 教师资格科目二小学教案模板(共合集)
- 工程扩建可研报告
- 中华人民共和国海事局2014年度招录公务
- 提高农村小学生作文能力的教学尝试
- 徒手心肺复苏术操作步骤
- 毛概试题库7-15章
- 2014-2015学年度(上)初中班主任工作计
- 企业驾驶员安全生产责任书
- 第07章 不等式测试题-2016年高考文科数
- 医疗器械经营企业工作程序
- 考研英语必背36篇_彩版_精华
- 初中9月13-15假期作业 (1)




