浅谈优化空间数据库的几种方案(SuperMap)

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开发者》第二期“地图优化初探”一文中专门讨论了这个话题,这里就不详细说明了。另外,我们可以在空间数据库中对经常需要查询、而且区分度比较高的属性字段建立索引,来提高查询速度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值