空间数据存储模式的比较研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
工程地质计算机应用
2009 年第 2 期
总 54 期
空间数据存储模式的比较研究
李骁 范冲 邹峥嵘
(中南大学测绘与国土信息工程系 湖南 长沙,410083;)
【摘要】空间数据存储是 GIS 发展中的瓶颈所在。本文叙述了空间数据存储技术发展的历程,并综述了其优缺点。 然后重点分析比较了三种空间数据的存储模式,并探讨了空间数据库开发方案设计中比较合理的空间数据存储模 式。 【关键词】空间数据库;存储模式;地理信息系统
库存储、面向对象数据库存储、对象关系型存储。表 1 中列出了五种空间数据存储结构的方式及特点:
表 1 空间数据存储的发展历程
存储结构
存储方式
优点
缺点
空间和非空间数据用文
数据安全性低;
文件系统存储
件分开储存,两个文件中 的空间数据和属性数据
数据模型简单; 容易处理
无法保证数据一致性; 无法建立复杂的数据
YES
YES
YES
空间数据库的设计方案有很多种,现在比较流行的是 ESRI 公司的 ARCSDE 和 Oracle 数据库的 Oracle Spatial。本文以这两种空间数据库设计方案为例,详细比较他们存储模式的优缺点。
根据 4 种常见的关系型数据库(IBM DB2、Informix、mircrosoft SQL Server、Oracle)的存储模式,综 合了空间数据存储的方法,一共有如表 4 所示的 7 种存储方法。
SDO_GEOMETRY
Oracle Spatial - Normalized Schema
number
根据上表可知,ArcSDE 和 Oracle Spatial 支持的空间数据物理存储模型分别是: (1)ArcSDE 支持的:压缩二进制 LONG RAW、压缩二进制 LOB、OGC 空间类型 ArcSDE 支持的格式不是与 OGC(OpenGIS Consortium)颁布的规范(Simple Feature Specification for SQL)一致, 就是在 OGC 规范的基础上作了一定的扩展。 (2)ORACLE 支持的:对象相关 VARRAY、规范化存储 ORACLE 所支持的两种格式都与 OGC 规范不全相容。这种不兼容会影响基于该平台的 GIS 系统的数 据共享和互操作性。而数据共享和系统互操作性是 GIS 平台本身及其应用发展的关键趋势。 ArcSDE 的方式是“黑箱”,客户端不能直接在数据库表一级直接操作底层数据对象结构中的内容。 ORACLE 的对象相关 VARRAY 方式是“白箱”,即数据对象所“包裹”的内容是可以直接访问和操纵的,“白 箱”的好处是其客户端可以直接通过 SQL 访问数据,但这造成数据的一致性方面的问题。
storage schema 、The Normalized geometry storage schema 以及 The Geometry Type where the SQL type system is extended。
4.1 存储模式的简介
(1) The Binary geometry storage schema 几何特征表与属性表独立存储。将几何图形的坐标数据以二进制对象(BLOB)的方式单独存储于
表 4 4 种常见数据库空间数据存取模式
DBMS
GEOMETRY STORAGE
COLUMN TYPE
IBM DB2
Spatial Extender - Geometry Type
ST_Geometry*
Informix
Spatial DataBlade - Geometry Type
百度文库
ST_Geometry*
(3) The Geometry Type where the SQL type system is extended 每个几何图形作为SQL对象可以直接存储在属性表中。几何图形被分为了十一种简单的几何对象 ,
如 point、curve、linestring、surface、 polygon、collection、multipoint、multicurve、multilinestring、 multisurface、 multipolygon 等 。 4.2 存储模式的比较
5 结论
通过文中可知,开发空间数据库系统时,对选取何种中间件和空间数据库应从多方面进行对比考虑, 并结合具体空间数据库的要求来实现。但是从空间数据的存储角度来说,我们应该选择存储模式比较多, 符合 OGC 的规范并且“黑箱“的存储模型。只有从多方面综合考虑,并结合实际需求,才能找到合适的 数据存储模式。
YES
NO
YES
SQL Functions
NO
NO
YES
AREA or LENGTH as
a spatial search
YES
NO
YES
constraint
通过上表可看出,三种空间数据存储模式中,Normalized Geometry 支持的功能最少,而 Geometry Type 支持的功能最多。由于每种数据库所支持的空间数据存储模式也不尽相同,支持功能少的存储模式必然被 支持的数据库也较少。可通过表 3 看出:
1
工程地质计算机应用
2009 年第 2 期
总 54 期
中间件的优点在于能无缝地连入应用开发环境中,应用程序可以很快定位和共享中间件提供的应用逻辑和 数据,易于系统集成。
4 空间数据存储模式比较研究
空间数据存储模式发展至今,有三种较成熟与常用的存储模式,它们分别是:The Binary geometry
MS SQL Server
Binary Schema (ArcSDE Compressed Binary)
Image
Oracle
Binary Schema(ArcSDE Compressed Binary)
Long Raw
Binary Schema(LOB)
Blob
Oracle Spatial - Geometry Type
1 引言
在地理信息系统开发过程中,空间数据的存储十分重要,因为空间数据的模式对于 GIS 的功能和索引 效率等等方面有着很重要的影响,由此引发空间数据库开发方案的问题。本文分析比较了三种空间数据存 储模式,并从现常用的空间数据开发方案来分析其对数据库开发方案设计的影响。
2 空间数据存储的发展
至今,GIS 中空间数据的存储结构的发展经历了五个时代:文件系统存储、混合数据存储、关系数据
用唯一标识连接
模型
文件形式存储空间数据,
混合数据存储
关系数据库管理属性数 据。以指针联系空间数据
属性数据管理和访问 都容易
无法保证数据一致性 和数据安全
文件和属性数据库
关系数据库存储
关系库中引入复杂的数 据类型存储空间数据
数据完整性、一致性较 好
空间分析能力欠缺
面向对象数据库存 储
面向对象方法建立数据 存取和处理
2
工程地质计算机应用
2009 年第 2 期
总 54 期
表 3 常用关系数据库空间数据存储模式支持表
Binary Geometry
Normalized Geometry
Geometry Type
IBM DB2
YES
NO
YES
Informix
YES
NO
YES
MS SQL Server
YES
NO
NO
Oracle
能准确描述空间对象 及行为; 建模能力强
查询能力欠缺
对象关系型存储
关系数据库和面向对象 技术的结合
准确描述空间对象 数据完整性、一致性好
空间分析能力和查询 能力都较好
现如今,对象关系型数据存储模式已成为 GIS 开发中管理空间数据的首要模式。
3 空间数据库设计模式
目前 GIS 开发中,空间数据库的设计方案有两种,一种是数据库厂商的空间数据库扩展技术:如 Informix 数据库的 Spatial DataBlade 技术和 Oracle 数据库的 Oracle Spatial。此外一种是 GIS 厂商 发展的中间件技术:如 ESRI 公司的 ArcSDE 和 Mapinfo 公司的 SpatialWare。中间件是一个软件,它允许应 用元素通过网络连接进行互操作,屏蔽其下的通讯协议、系统结构、操作系统、数据库和其他应用服务。
3
几何特征表中,通过“Geometry ID”字段与属性表关联。
(2) The Normalized geometry storage schema 几何特征表与属性表独立存储。该模式中几何图形数据以数值型(Number)的方式存储于几何特征表 中,且几何图形被分为“Point”、“Line”、“Polygon”三个类型。几何特征表与属性表之间的关联也是通过 相同的字段“Geometry ID”关联起来。
参考文献
[1] Oracle8i Spatial User’s Guide and Reference Release 8.1.5 ,Oracle 公司 [2] ArcSDE Developer Help Guilde[R]. ESRI, 1999 [3] OpenGIS Specification for Simple Features in SQL Revision1.1 ,1999
表 2 三种空间数据存储模式支持功能一览表
Binary Geometry
Normalized Geometry
Geometry Type
2D geometry
YES
YES
YES
Elevations (Z)
YES
NO
YES
Measures (M)
YES
NO
YES
Annotation
YES
NO
YES
CAD
2009 年第 2 期
总 54 期
空间数据存储模式的比较研究
李骁 范冲 邹峥嵘
(中南大学测绘与国土信息工程系 湖南 长沙,410083;)
【摘要】空间数据存储是 GIS 发展中的瓶颈所在。本文叙述了空间数据存储技术发展的历程,并综述了其优缺点。 然后重点分析比较了三种空间数据的存储模式,并探讨了空间数据库开发方案设计中比较合理的空间数据存储模 式。 【关键词】空间数据库;存储模式;地理信息系统
库存储、面向对象数据库存储、对象关系型存储。表 1 中列出了五种空间数据存储结构的方式及特点:
表 1 空间数据存储的发展历程
存储结构
存储方式
优点
缺点
空间和非空间数据用文
数据安全性低;
文件系统存储
件分开储存,两个文件中 的空间数据和属性数据
数据模型简单; 容易处理
无法保证数据一致性; 无法建立复杂的数据
YES
YES
YES
空间数据库的设计方案有很多种,现在比较流行的是 ESRI 公司的 ARCSDE 和 Oracle 数据库的 Oracle Spatial。本文以这两种空间数据库设计方案为例,详细比较他们存储模式的优缺点。
根据 4 种常见的关系型数据库(IBM DB2、Informix、mircrosoft SQL Server、Oracle)的存储模式,综 合了空间数据存储的方法,一共有如表 4 所示的 7 种存储方法。
SDO_GEOMETRY
Oracle Spatial - Normalized Schema
number
根据上表可知,ArcSDE 和 Oracle Spatial 支持的空间数据物理存储模型分别是: (1)ArcSDE 支持的:压缩二进制 LONG RAW、压缩二进制 LOB、OGC 空间类型 ArcSDE 支持的格式不是与 OGC(OpenGIS Consortium)颁布的规范(Simple Feature Specification for SQL)一致, 就是在 OGC 规范的基础上作了一定的扩展。 (2)ORACLE 支持的:对象相关 VARRAY、规范化存储 ORACLE 所支持的两种格式都与 OGC 规范不全相容。这种不兼容会影响基于该平台的 GIS 系统的数 据共享和互操作性。而数据共享和系统互操作性是 GIS 平台本身及其应用发展的关键趋势。 ArcSDE 的方式是“黑箱”,客户端不能直接在数据库表一级直接操作底层数据对象结构中的内容。 ORACLE 的对象相关 VARRAY 方式是“白箱”,即数据对象所“包裹”的内容是可以直接访问和操纵的,“白 箱”的好处是其客户端可以直接通过 SQL 访问数据,但这造成数据的一致性方面的问题。
storage schema 、The Normalized geometry storage schema 以及 The Geometry Type where the SQL type system is extended。
4.1 存储模式的简介
(1) The Binary geometry storage schema 几何特征表与属性表独立存储。将几何图形的坐标数据以二进制对象(BLOB)的方式单独存储于
表 4 4 种常见数据库空间数据存取模式
DBMS
GEOMETRY STORAGE
COLUMN TYPE
IBM DB2
Spatial Extender - Geometry Type
ST_Geometry*
Informix
Spatial DataBlade - Geometry Type
百度文库
ST_Geometry*
(3) The Geometry Type where the SQL type system is extended 每个几何图形作为SQL对象可以直接存储在属性表中。几何图形被分为了十一种简单的几何对象 ,
如 point、curve、linestring、surface、 polygon、collection、multipoint、multicurve、multilinestring、 multisurface、 multipolygon 等 。 4.2 存储模式的比较
5 结论
通过文中可知,开发空间数据库系统时,对选取何种中间件和空间数据库应从多方面进行对比考虑, 并结合具体空间数据库的要求来实现。但是从空间数据的存储角度来说,我们应该选择存储模式比较多, 符合 OGC 的规范并且“黑箱“的存储模型。只有从多方面综合考虑,并结合实际需求,才能找到合适的 数据存储模式。
YES
NO
YES
SQL Functions
NO
NO
YES
AREA or LENGTH as
a spatial search
YES
NO
YES
constraint
通过上表可看出,三种空间数据存储模式中,Normalized Geometry 支持的功能最少,而 Geometry Type 支持的功能最多。由于每种数据库所支持的空间数据存储模式也不尽相同,支持功能少的存储模式必然被 支持的数据库也较少。可通过表 3 看出:
1
工程地质计算机应用
2009 年第 2 期
总 54 期
中间件的优点在于能无缝地连入应用开发环境中,应用程序可以很快定位和共享中间件提供的应用逻辑和 数据,易于系统集成。
4 空间数据存储模式比较研究
空间数据存储模式发展至今,有三种较成熟与常用的存储模式,它们分别是:The Binary geometry
MS SQL Server
Binary Schema (ArcSDE Compressed Binary)
Image
Oracle
Binary Schema(ArcSDE Compressed Binary)
Long Raw
Binary Schema(LOB)
Blob
Oracle Spatial - Geometry Type
1 引言
在地理信息系统开发过程中,空间数据的存储十分重要,因为空间数据的模式对于 GIS 的功能和索引 效率等等方面有着很重要的影响,由此引发空间数据库开发方案的问题。本文分析比较了三种空间数据存 储模式,并从现常用的空间数据开发方案来分析其对数据库开发方案设计的影响。
2 空间数据存储的发展
至今,GIS 中空间数据的存储结构的发展经历了五个时代:文件系统存储、混合数据存储、关系数据
用唯一标识连接
模型
文件形式存储空间数据,
混合数据存储
关系数据库管理属性数 据。以指针联系空间数据
属性数据管理和访问 都容易
无法保证数据一致性 和数据安全
文件和属性数据库
关系数据库存储
关系库中引入复杂的数 据类型存储空间数据
数据完整性、一致性较 好
空间分析能力欠缺
面向对象数据库存 储
面向对象方法建立数据 存取和处理
2
工程地质计算机应用
2009 年第 2 期
总 54 期
表 3 常用关系数据库空间数据存储模式支持表
Binary Geometry
Normalized Geometry
Geometry Type
IBM DB2
YES
NO
YES
Informix
YES
NO
YES
MS SQL Server
YES
NO
NO
Oracle
能准确描述空间对象 及行为; 建模能力强
查询能力欠缺
对象关系型存储
关系数据库和面向对象 技术的结合
准确描述空间对象 数据完整性、一致性好
空间分析能力和查询 能力都较好
现如今,对象关系型数据存储模式已成为 GIS 开发中管理空间数据的首要模式。
3 空间数据库设计模式
目前 GIS 开发中,空间数据库的设计方案有两种,一种是数据库厂商的空间数据库扩展技术:如 Informix 数据库的 Spatial DataBlade 技术和 Oracle 数据库的 Oracle Spatial。此外一种是 GIS 厂商 发展的中间件技术:如 ESRI 公司的 ArcSDE 和 Mapinfo 公司的 SpatialWare。中间件是一个软件,它允许应 用元素通过网络连接进行互操作,屏蔽其下的通讯协议、系统结构、操作系统、数据库和其他应用服务。
3
几何特征表中,通过“Geometry ID”字段与属性表关联。
(2) The Normalized geometry storage schema 几何特征表与属性表独立存储。该模式中几何图形数据以数值型(Number)的方式存储于几何特征表 中,且几何图形被分为“Point”、“Line”、“Polygon”三个类型。几何特征表与属性表之间的关联也是通过 相同的字段“Geometry ID”关联起来。
参考文献
[1] Oracle8i Spatial User’s Guide and Reference Release 8.1.5 ,Oracle 公司 [2] ArcSDE Developer Help Guilde[R]. ESRI, 1999 [3] OpenGIS Specification for Simple Features in SQL Revision1.1 ,1999
表 2 三种空间数据存储模式支持功能一览表
Binary Geometry
Normalized Geometry
Geometry Type
2D geometry
YES
YES
YES
Elevations (Z)
YES
NO
YES
Measures (M)
YES
NO
YES
Annotation
YES
NO
YES
CAD