560 likes | 740 Views
ArcSDE. 空间数据库引擎. 空间数据库引擎. 嵌入式 GIS. 桌面 GIS. 专业 GIS. ?. ESRI 产品构架. MapObjects. ArcView GIS. ARC/INFO. ArcSDE 空间数据库引擎. 什么是 ArcSDE ?. 部 门 GIS. 项 目 GIS. 企业化 GIS. GIS 的发展阶段. 社会化 GIS. GIS 为中心 信息为中心. 较小数据量 少数用户共享数据 无须开放 响应要求不高. 超大数据量 大用户数 开放性需求 快速响应.
E N D
ArcSDE 空间数据库引擎 空间数据库引擎
嵌入式GIS 桌面GIS 专业GIS ? ESRI产品构架 MapObjects ArcView GIS ARC/INFO ArcSDE空间数据库引擎
部 门 GIS 项 目 GIS 企业化 GIS GIS的发展阶段 社会化 GIS GIS为中心 信息为中心 • 较小数据量 • 少数用户共享数据 • 无须开放 • 响应要求不高 • 超大数据量 • 大用户数 • 开放性需求 • 快速响应
ArcSDE—空间数据库引擎 • 用RDBMS管理空间数据 • 面向对象数据模型(Geodatabase) • 开放的应用程序接口(API) • Client/Server 工作模式 • 海量空间数据管理 用RDBMS管理空间数据
ArcSDE—空间数据库引擎 • 用RDBMS管理空间数据 • 面向对象数据模型(Geodatabase) • 开放的应用程序接口(API) • Client/Server 工作模式 • 海量空间数据管理 面向对象数据模型(Geodatabase)
ArcSDE—空间数据库引擎 • 用RDBMS管理空间数据 • 面向对象数据模型(Geodatabase) • 开放的应用程序接口(API) • Client/Server 工作模式 • 海量空间数据管理 开放的应用程序接口(API)
ArcSDE—空间数据库引擎 • 用RDBMS管理空间数据 • 面向对象数据模型(Geodatabase) • 开放的应用程序接口(API) • Client/Server 工作模式 • 海量空间数据管理 Client/Server 工作模式
ArcSDE—空间数据库引擎 • 用RDBMS管理空间数据 • 面向对象数据模型(Geodatabase) • 开放的应用程序接口(API) • Client/Server 工作模式 • 海量空间数据管理 海量空间数据管理
扩展的RDBMS 客户端 API 工 具 空间数据 RDBMS 服务器
SDE 的体系结构 用户接口 应用逻辑 应 用 客户库 C-API, 数据访问 网 络 网络数据传输 空间类型模拟 空间数据检索 DBMS 交 互 空间服务器 数据存储 SQL 处理 RDBMS
SDE 的开放策略 APIs SDE RDBMS 硬件平台 多硬件平台; 多数据库;多编程环境;多客户端
SDE 与应用的关系 数据浏览/发布 ArcExplorer ARC / INFO ArcView MapObjects 自开发应用 CAD应用 GIS Server 高级应用 SDE Spatial Database 数据管理
SDE的性能 数据: 全美街区 平均响应时间(秒) 1.38 1.50 1.25 1.17 1.11 1.06 1.00 0.50 0.00 16 32 64 96 8 并发访问用户数
空间要素类型 • 点 • 点簇 • 相遇相交的线 • 相遇不相交的线 • 环线 • 多边形 • 含洞多边形
SDE的数据组织 数据集 Dataset Layers 数据层 Features 要 素
SDE的空间数据表达 空间要素表 F Table A Table 要素描述表 空间属性表 S Table 空间索引表
空间项 FID Grid Coordinate FID Coordinates 3632 3632 地理要素描述结构 外部属性表(A) Shape(FID) 直 径 长 度 12 3632 47.58 空间索引表(S) 要素表(F)
空间要素表(F ) ....... Numofpts Envelope FID Date Entity BLOB 一个要素的所有坐标存储在一条记录 读取一个要素只需一次磁盘动作 x1,y1,x2,y2, ... ...xn,yn B A
基于要素的数据读取 读取一个要素至少需要三次磁盘动作 SDE 分解的图形数据存储 读取一个要素只需一次磁盘动作 线文件 多边形文件 1 2 B 3 A 点文件
1、每个要素在一个或多个网格中 2、每个网格可含多个要素 3、要素不真正被网格分割 空间索引表(S)
数据集 数据集 专题图层 空间索引表(S) 索引网格 空间对象 要素属性表 (A) 外部属性表 空间要素表(F)
拓扑关系在哪里 ? 不必预先存储拓扑关系 拓扑关系是实时计算的
数据的运算 • 布尔运算 • Equals • Touches
数据的运算(2) • 布尔运算 • Within • Contains (与Within反之)
数据的运算(3) • 布尔运算 • Crosses • Overlaps • (同维数椐间)
数据的运算(4) • 布尔运算 • Disjoint
数据的运算(5) • 叠加运算 • Intersect
数据的运算(6) • 叠加运算 • Difference
数据的运算(7) • 叠加运算 • 异 或
数据的运算(8) • 叠加运算 • Union
数据的运算(9) • Clip
数据访问模型 条 件 结果集指针 连 接 结 果 属性或图形
定义查询 • 查询的数据源: • layers, DBMS tables, … • 可定义基于 • 属性、空间、或两者的查询
定义属性查询 • 用标准的SQL语句 • Selecttaxes.parcel_id, owners.name, taxes.taxes • fromtaxes, owners • wheretaxes > 500 and taxes.parcel_id = owner.parcel_id OWNERS TAXES parcel_id name parcel_id year taxes 1000 Joe 1000 94 500 1000 Bob 1000 95 600 2000 Tom 1000 93 700 4000 Tim 4000 Joe
查询中增加空间限制条件 • 空间限制条件 • 由一组空间过滤器(spacial filters)实现 • 只有通过过滤器的shape才被加到结果集中 过滤器: SM_SC (全包含) 结果 shapes 查询shapes 候选shapes
FeatureID GridID 空间索引表 每一个要素 落在 某一级、某一个Grid中
空间检索 例:邻近分析
FeatureID GridID 空间检索 FeatureID Grid ID FeatureIDs 比较Envelope 比较坐标 得到结果
SDE的数据层 空间要素表 F Table A Table 要素描述表 空间属性表 S Table 空间索引表
拓扑关系计算 • 公共点 • 公共边 • 重 合 • 相 交 • 包 含 • 穿 越
空间分析 • 剪切 • 邻近分析 • 缓冲区分析 • 距离计算 • 多边形叠加 • 空间网络分析
客户 Unix SDE Server RDBMS Server 客户 (Load) 客户 Windows 95 客户 (Load) 客户 Windows NT Client/Server体系 TCP/IP协议 ARC/INFO ArcView MapObjects C++ DATABASE
协同操作机制 SQL查询 • PC • UNIX 空间数据服务器 客户机 CPU密集的操作 处理返回的数据 为要素提取而优化 返回查询的结果 或中间过程数据 自动分工, 各司其责
Server Client CPU 密集的 任务 检索 任务 优化的异步数据缓冲区 stream stream 数 据 缓冲区 数 据 缓冲区