ArcSDE 通过把空间坐标信息存储为长二进制数据类型,用多张相关联的表来表达空间和属性数据之间关系,以及空间数据内部结构的方法来组织和存放空间要素而不改变和影响现有数据库的使用。ArcSDE 对所有的图层建立了层表(layer table) ,其中,每条记录对应一个图层,其中记录了如下信息:所有者、对应表名、空间数据列名称、空间索引大小、包络矩形(MBR) 、内部ID 号(layer - id) 等。
每一个图层由业务表( business table) 、要素表(feature table) 和空间索引表(spatial index table ) 组成,3 个表的名称有一定的规律,其中,业务表的名称为图层名称;要素表名称为f < layer - id > ,索引表的名称为s < layer - id > 。图1 是用ArcSDE for SQL Server 2000 往数据库中添加一个图层后,在SQL Server2000 中自动增加的3 张表的结构,其中,业务表的shape 字段唯一,可以为空,要素表的fid 唯一,非空,索引表的sp - fid 非空,不唯一。
图1 SDE 组织空间数据的方式
业务表中每一行代表一个地物要素用来存放地物要素的属性数据,通过Shape 字段和其他两个表关联。
要素表包括要素标识符(fid) 、要素包含的点的数目、shape 的类型、shape 的包络矩形以及要素的坐标点信息等。每个shape 的包络矩形是指覆盖一个完整要素的最小矩形边框的左上角和右下角的坐标对(x ,y) 以及中心点的坐标对。
点状要素的坐标(x ,y) 就是其包络矩形。在SQL Server2000中,坐标点信息是以image 类型来存储的,其中,对于点要素是可以用单一的(x ,y) 坐标表示,对于简单线要素是一组不自相交的(x ,y) 坐标,对于线要素是一组可自相交的(x ,y)坐标,对于面要素是一组起点和终点坐标值相等的(x ,y) 坐标定义的同质、闭合的面。一个多边形可以有一个内部的洞(内部边界) ,先以逆时针方向存储外围边界点,再以顺时针方向存储内部的边界点。在ArcSDE 中的洞并不被认为是一个shape , 仅仅表示多边形内部的一个空的空间,在计算面积时被排除。这里需要注意的是在ArcSDE 中存放的坐标是正的整数坐标,所以在加载数据前,必须确定一个坐标的偏移量和比例系数。偏移量和比例系数一旦设定不可以再修改。
空间索引表包括索引标识符(sp - fid) 、格网单元信息、要素的包络矩形。格网单元可以随时进行修改,最佳格网单元的大小受平均包络矩形大小的影响,格网单元不能小于要素包络矩形平均大小,否则导致索引表中很多的格网单元都索引出相同的包络矩形,使索引表变大,查询时间变长。一般把格网单元大小设置为平均包络矩形大小的3 倍较合适。
分享到:
相关推荐
ArcSDE存储机制:ArcSDE利用多张关联的表来把空间数据存储到纯关系型数据库中。 ArcSDE的存储机制可以将空间数据存储在多个表中,从而可以提高空间数据的查询效率。 比较研究: Oracle Spatial和ArcSDE都是利用...
【arcsde for oracle 存储机制研究】 在Oracle地理数据库中,arcsde用于管理和存储GIS(地理信息系统)数据,其中包括矢量、栅格和属性数据。BLOB(Binary Large Object)是Oracle数据库用于存储大容量二进制数据的...
#### ArcSDE的空间数据存储机制 ArcSDE采用中间件技术,自身并不直接存储空间数据,而是作为数据库的空间扩展,将空间坐标信息存储为长二进制数据类型,并通过多张相关联的表来表达空间与属性数据的关系以及空间...
### ArcSDE 的版本机制详解 #### 一、引言 ArcSDE 是 ESRI 公司开发的一款高性能的空间数据库引擎,它为地理信息系统(GIS)提供了强大的数据管理和访问功能。ArcSDE 支持多用户环境下的空间数据管理,并通过版本...
8. **安全性和备份**:ArcSDE支持Oracle的安全机制,如角色和权限管理,确保数据安全。同时,用户需要考虑数据备份策略,以防止数据丢失,并定期进行数据库维护和更新。 9. **故障排查**:在安装和使用过程中,可能...
ArcSDE是ESRI公司开发的一款用于管理地理空间数据的核心组件,它允许用户在关系数据库管理系统(RDBMS)中存储、管理和操作海量的地理信息。 1. ArcSDE简介:ArcSDE是ArcGIS系统的重要组成部分,它提供了一个中间件...
通过ArcSDE,用户可以高效地存储、管理和分析大量的地理空间数据,为GIS应用提供强大的数据支持。 ### 一、ArcSDE C API概述 ArcSDE提供了多种编程接口,包括Java、.NET、C++等,其中C API是用于C语言环境下的编程...
ArcSDE(Spatial Database Engine)是由ESRI公司推出的一款高级空间数据库管理系统,主要用于存储、管理和分析地理空间数据。它不仅提供了强大的空间数据处理能力,还支持与多种数据库平台的集成,如Oracle、SQL ...
##### ArcSDE存储参数 - **DBTUNE表** - 用于存储关于空间数据存储的配置信息。 - **编辑DBTUNE表** - 修改DBTUNE表中的参数以优化空间数据的存储。 - **DBTUNE修改实例** - 具体示例展示如何通过编辑DBTUNE表来...
3. **存储机制**: Geodatabase利用RDBMS的强大功能,通过二维表存储几何数据和属性数据。空间数据以矢量或栅格形式存在,与传统属性字段一同存储在表的列中。例如,多边形要素的Shape列存储了几何坐标和形状信息。 ...
3. **版本管理和事务处理**:ArcSDE提供了强大的版本控制机制,允许用户对数据进行回滚或恢复;同时也支持事务处理,确保数据的一致性和完整性。 4. **高级安全机制**:支持基于角色的安全模型,可以根据不同的用户...
矢量数据的存储在ArcSDE中主要依赖于业务表、要素表和空间索引表。业务表是用户直接交互的部分,而其他表格由SDE自动维护。对于栅格数据,存储方式与矢量数据类似,但使用不同的表。ArcSDE提供了RasterDataSet和...
ArcSDE 9.3许可是Esri公司提供的一个关键组件,用于在企业级数据库中存储、管理和分发地理空间数据。ArcSDE是ArcGIS系统的重要组成部分,它允许用户在大型数据库系统(如Oracle、SQL Server、IBM DB2等)中存储地理...
ArcSDE(ArcSpatial Data Engine)是Esri公司提供的一种强大的数据管理工具,它允许用户在多用户环境下存储、管理和操作大型地理空间数据库。本文将深入探讨ArcSDE API for JAVA的相关知识点,为开发者提供详尽的...
ArcSDE是ESRI(Environmental Systems Research Institute)公司开发的一个产品,它提供了一个中间件解决方案,用于在关系数据库管理系统(RDBMS)中存储、管理和操作大规模的地理空间数据。 **描述分析:** ...
ArcSDE提供了一种高效的数据共享机制,使得多用户能够同时访问和编辑地理信息。以下是一个详细的ArcSDE配置步骤,以Oracle 8i数据库为例: 1. **创建数据库实例和表空间** 在配置ArcSDE之前,首先需要创建一个...
2. **多用户编辑**:支持多个用户同时对同一数据进行编辑,通过版本管理机制确保数据的一致性和完整性。 3. **数据分布**:ArcSDE可以将大型地理数据库分割成小块,方便网络上的分发和访问,提高数据传输效率。 4....
#### 二、ArcSDE与Oracle数据库的连接机制 1. **Oracle数据库架构**: - **Instance**:Oracle实例由一系列内存结构(如SGA)和后台进程组成。 - **Server Process**:服务器进程负责处理来自客户端的请求。 - *...