当前位置:甜馍馍地理信息网 >> 地理信息系统GIS >> 空间数据库 >> 正文 >>  [阅读资讯:也来谈谈空间数据库优化的几种方案]

也来谈谈空间数据库优化的几种方案

[ 来源:互联网 | 时间:2007年09月16日 | 收藏本文 ] 【

除了以上几种优化数据的方案,在地图配置方面还有很多方法,在《GIS开发者》第二期“地图优化初探”一文中专门讨论了这个话题,这里就不详细说明了。另外,我们可以在空间数据库中对经常需要查询、而且区分度比较高的属性字段建立索引,来提高查询速度。

1.1 数据组织与存储

1.1.1 尽量减少数据源个数

在需要管理多比例尺、多区域的空间数据的项目中,有时候您会选择使用多个数据源来组织数据,这并不是一个好的办法,主要原因包括:

(1)多个数据源使用一个工作空间来管理,在打开的时候需要多次连接数据库,速度会比较慢;

(2)在多用户并发的时候,由于数据库本身的连接数也有限制,数据源过多也可能导致数据源连接失败。

建议数据源的个数控制在20个以内。

1.1.2 采用合适的编码方式存储矢量和栅格数据

采用合适的编码方式存储数据可以大大缩减数据的存储空间,不仅可以节省硬盘空间,更重要的是可以减少网络传输量,是一个很好的优化数据库访问性能的办法。

(1)对于矢量数据,可以采用SDC、SWC两种编码方式,使用SDC编码方式存储矢量数据可将存储空间压缩为原始空间的1/2,使用SWC编码方式存储矢量数据可将存储空间压缩为原始空间的1/4。

这里需要注意的是,两种编码方式都是有损压缩,SDC编码方式的损失率为1/20亿,SWC编码方式的损失率为1/65536,您可根据项目对数据精度的要求选择合适的编码方式,例如土地利用、房产等系统对数据的精度要求非常高,这类项目不太适合使用压缩存储,其他诸如设施管理、资产管理、社会经济统计等系统对精度的要求不是很高,可采用编码方式压缩存储数据,尤其对于B/S架构的发布系统,甚至可以选择压缩率较高的SWC编码方式,大多数情况下客户端对地图的浏览要求是可以满足的。

(2)对于栅格数据,其中GRID数据,SuperMap提供了SGL编码方式,这类数据一般用于分析,因此提供的这种编码是无损压缩的;而光栅数据,SuperMap提供了DCT编码,压缩比由压缩质量决定,压缩质量越高,损失越小,压缩比就更低;反之,压缩比就更高。

1.2 选择合适的空间索引

对于矢量数据的管理,选择合适的空间索引对于性能的优化是最关键的工作。SuperMap提供了三种空间索引以及本地缓存,该如何选择合适的空间索引呢,这里分别加以说明。

1.2.1 经常需要修改的数据

在数据需要经常变动的应用中,比如规划、电信、有线电视等项目,比较适合使用四叉树索引,这种索引在编辑数据的时候维护成本比较低,比较不容易出现由于索引不完整导致空间数据无法正常显示的问题。

1.2.2 不需要经常变动的数据

社会经济统计、设施管理等行业的项目,其空间数据基本属于静态数据,比较适合使用R树索引,这种索引的访问效率比四叉树索引高。

1.2.3 大数据量的数据

对于大数据量的数据,SuperMap还提供了三级索引,可以按照字段或者范围来索引,对于提高性能也是很有效果的。

1.2.4 网络带宽很低的情况下访问大数据量

网络带宽比较低的情况下,为了减少网络传输量,可以将一些静态的不需要经常变动的数据使用本地缓存的方式管理。

这里需要注意两点:

前两种索引是排斥的,只能有一种存在,而后两种是在前两种的基础上附加的。

本地缓存在三级索引的基础上使用效果最好。

1.3 对影像建立影像金字塔

影像金字塔技术是目前各软件处理海量影像必须采用的技术,对于大数据量的影像一定要建立影像金字塔,对提高影像数据的浏览速度非常有好处。

1.4 其他

除了以上几种优化数据的方案,在地图配置方面还有很多方法,在《GIS开发者》第二期“地图优化初探”一文中专门讨论了这个话题,这里就不详细说明了。另外,我们可以在空间数据库中对经常需要查询、而且区分度比较高的属性字段建立索引,来提高查询速度。

【推荐本文】 【打印本页】 【返回顶部
最新文章
推荐文章