What I Read(1) 地理空间数据库原理(A) 绪论

引用部分均为笔者思考.

1. 空间数据库的抽象表达方法论

地图在抽象概括表达中使用两种观点:

  • 场观点
  • 对象观点

1.1 场观点

场的视角一般面对非对象模型,如一些"自然现象",即它们没有对象这个概念,或者对象粒度太小.但传统数据库的粒度一般是对象语义的,场的存储可能不适合直接存放于传统数据库.

  • 有必要为场数据专门设计数据库吗?
  • 或者说为场数据在现有数据库中专门设计容器,让其操作起来像场,但实际是对象?

场模型主要有以下3种:

  • 图斑模型:
    • 将场划分为多个简单的联通域
    • 每个域使用数学函数表达某个属性的变化
  • 理论上是精度最高的,但如何找到/划分合适联通域,找到合适的数学函数表达式则很难
  • 因为值都是实时计算出来,所以参与其他计算时会比较麻烦
  • 等值线模型
    • 一条等值线是地面上所有具有相同属性值的点的有序集合

可以看做对象模型,但需要区分两种划分对象的方式(以等值线为例):

  • 层形:生成大于/小于某个高程的一整张面
  • 环形:生成大于某个高程值且小于某个高程值的环
    两种划分方式适用于不同的使用场景
  • 选样模型
    • 有限的抽样数据表达无限的连续现象
    • 非抽样点采用插值计算得来

选样模型不容易参与矢量运算,比较适合参与栅格计算

1.2 对象观点

  • 边界明确
  • 具有一定的属性
  • 可以被抽象化为点线面体等基本单元

对象观点是我们更加容易接触到的,也天生适合放入数据库管理.

2. 空间数据的特征

  • 空间特征:
    • 传统数据的内部结构更紧凑/固定
    • 空间数据内部变化大,包含内容多:
      • 结构内部还有结构
      • 支持嵌套
      • 还具有拓扑信息
  • 属性特征:对象观点下,地理实体必有其非地理属性,否则就失去现实意义了.
  • 时间特征:
    • 主要描述属性/位置随时间变化而变化
    • 给空间数据增加时间维度会增加在管理/操作/组织时的困难
  • 一般来说,通过业务设计而非底层支持已经能满足很多时间维度的需求
    • 相比空间需求,时间维度的需求可能即少,又不同,因此不适宜做成通用功能,因此传统空间数据库底层设计为带时间维度的较少.
  • 地理数据随着时间变化的一般随其复杂度/尺度下降而上升:
    • 人抽象化为一个点,则不断在变
    • 更加复杂的房子,道路则一般不变
  • 尺度特征.同一物体 在不同的尺度下:
    • 可以具有不同点集合外形
    • 可以表现出不同的聚集/分离/消失等特性
    • 具有不同的属性

一般来说,小于厘米级的尺度已经不能算是传统的地理信息尺度了,但随着传感器的性能上升,会出现单个尺度极小但整体空间范围在地理尺度的地物.比如高精点云.这又与场类似了,但场一般只要求地理级别的精度.

  • 海量性特征

海量性特征具有深刻的现实意义:个人往往无法掌握海量的空间数据,但拥有海量空间数据的组织往往具有独特的需求,他们的海量数据可能是场形式或者对象形式,或者拥有庞大的时间维度,不一而足.传统的空间数据库需要变得越来越复杂,才能更好的应对不同用户的需求,但这也意味着:

  • 就算空间数据库变得越来越复杂,也往往是诸多需求的交集,难以满足更精细/定制化的需求
  • 对于用户来说,定制数据库远比定制自己的业务更难,但空间数据中的数据又最适合在库内计算.因此无法实现成本效率的最优
  • 软件的分发是低成本的,对用户/厂商来说开关某个功能的成本很低,但如果是带硬件加速的功能呢?对于非定制化的空间数据库,采购无用的功能的成本就让用户支付了.

以上这些没有发生可能因为用户的需求还没有真正的被释放出来

你可能感兴趣的:(What I Read(1) 地理空间数据库原理(A) 绪论)