转自:http://www.cnblogs.com/quansixiang/archive/2010/09/17/1829286.html

1  Geodatabase概念

  Geodatabase是ArcInfo8引入的一种全新的面向对象的空间数据模型,是建立在DBMS之上的统一的、智能的空间数据模型。“统一”是指,Geodatabase之前的多个空间数据模型都不能在一个统一的模型框架下对地理空间要素信息进行统一的描述,而Geodatabase做到了这一点;“智能化”是指,在Geodatabase模型中,对空间要素的描述和表达较之前的空间数据模型更接近我们的现实世界,更能清晰、准确地反映现实空间对象的信息。

  GeoDatabase的设计主要是针对标准关系数据库技术的扩展,它扩展了传统的点、线和面特征,为空间信息定义了一个统一的模型。在该模型的基础上,使用者可以定义和操作不同应用的具体模型,例如交通规划模型、土地管理模型、电力线路模型等。GeoDatabase为创建和操作不同用户的数据模型提供了一个统一的、强大的平台。

  由于Geodatabase是一种面向对象的数据模型,在此模型中,空间中的实体可以表示为具有性质、行为和关系的对象。Geodatabase描述地理对象主要通过以下以下四种形式:

  (1)用矢量数据描述不连续的对象;

  (2)用栅格数据描述连续对象;

  (3)用TINs描述地理表面;

  (4)用Location或者Address描述位址。

  Geodatabase还支持表达具有不同类型特征的对象,包括简单的物体、地理要素(具有空间信息的对象)、网络要素(与其他要素有几何关系的对象)、拓扑相关要素、注记要素以及其他更专业的特征类型。该模型还允许定义对象之间的关系和规则,从而保持地物对象间相关性和拓扑性的完整。

2  Geodatabase体系结构

  Geodatabase以层次结构的数据对象来组织地理数据。这些数据对象存储在要素类(Feature Classes)、对象类(0bject classes)和数据集(Feature datasets)中。Object Class可以理解为是一个在Geodatabase中储存非空间数据的表。而Feature class是具有相同几何类型和属性结构的要素(Feature)的集合。

  要素数据集(Feature datasets)是共用同一空间参考要素类的集合。要素类(Feature Class)储存可以在要素数据集(Feature datasets)内部组织简单要素,也可以独立于要素数据集(Feature datasets)。独立于要素数据集(Feature datasets)的简单的要素类(Feature Class)称为独立要素类(Feature class)。存储拓扑要素( Feature )的要素类必须在要素数据集(Feature dataset)内,以确保一个共同的空间参考。

  Geodatabase的基本体系结构包括要素数据集、栅格数据集、TIN数据集、独立的对象类、独立的要素类、独立的关系类和属性域。其中,要素数据集又由对象类、要素类、关系类、几何网络构成。

3  Geodatabase的三种存储方案

  Geodatabase提供了不同层次的空间数据存储方案,可以分成三种——PersonalGeodatabase(个人空间数据库)、File Geodatabase(基于文件格式的数据库)和ArcSDE Geodatabase(企业级空间数据库)。

1.Personal Geodatabase

  Personal Geodatabase主要适用于在单用户下工作的CIS系统,适用于小型项目的地理信息系统。ArcGIS对个人Geodatabase同样具有全功能支持。Personal Geodatabase实际上就是一个Microsoft Access数据库,当用户安装ArcGIS的时候,系统就自动安装了Microsoft Jet,用户无需再另外安装Microsoft Access数据库。也就是说,PersonalGeodatabase对于ArcGIS用户是免费的,它使用Microsoft Jet Engine的数据文件,将空间数据存放在Access数据库中。Personal Geodatabase更像基于文件的工作空间,在使用Personal Geodatabase时需要注意的是,Personal Geodatabase的最大容量是2G,并且只支持windows平台。

2.File Geodatabase

  在ArcGIS 9.2版本中,引入了一种全新的空间数据存储方案——File Geodatabase,它也是适用于单用户环境的,同样能够支持完整的Geodatabase数据模型,同样可以让用户在没有DBMS的情况下使用大数据集。File Geodatabase数据以文件形式存储在Windows、Solaris以及Linux系统的文件夹内。容量限制方面,File Geodatabase中的每个表都能存储1TB的数据,这就是说对任何应用目的,用户都能够支持非常大的数据集。Fiel Geodatabase还具有压缩矢量数据的选项,通过这个选项,用户可以在保证性能的同时减少硬盘占用,压缩比率可以达到2:1到25:1。从目前测试的情况来看,File Geodatabsse性能比Personal Geodatabase要高20%到10倍。如果采用压缩方式,它的性能与Shape文件相仿,并且要强于Personal Geodatabase。存储同样的数据时,File Geodatabase比Personal Geodatabase减少了50%到80%的磁盘占用空间。

  ArcGIS提供了一些工具来从DBMS形式的Geodatabase中提取一个File Geodatabase以及将一个File Geodatabase导人DBMS中。用户可以通过从其他任何Geodatabase或者所支持的文件结构内,例如Shape文件,加载数据来轻松地创建File Geodatabaee。File Geodatabase很容易被ArcGIS Desktop、ArcGIS Engine以及ArcGIS Server访问和使用。

  另外,File Geodatabage还支持存储海量栅格数据集,与ArcSDE raster schema兼容。从目前的趋势来看,File Geodatabase将要逐步取代Personal Geodatabase。

3.ArcSDE Geodatabase

  ArcSDE Geodatabase主要用于在多用户网络环境下工作的GIS系统。通过TCP/IP协议,安装在管理企业数据的关系数据库的服务器上的ArcSDE为运行在客户端的CIS应用程序提供ArcSDE Geodatabase。通过ArcSDE,用户可以将多种数据产品按照Geodatabase模型存储于商业数据库系统中,并获得高效的管理和检索服务。

  ArcSDE Geodatabase的一个最大特点就是使用ArcSDE在网络环境下对空间数据进行多用户并行操作。另外 ArcSDE Geodatabaee提供的版本控制机制也是Personal Geodatabaee和File Geodatabase不具有的。通过ArcSDE,用户可以在0racle、Microsoft SQL Server、InfoMix和DB2  中存取SDE图层。

  当用户从SDE图层中创建Geodatabase时,客户端需要向这些图层加入元数据表。这些元数据包括子类、域、关联类、要素集等,这些元数据使得ArcSDE管理的空间数据库真正体现了Geodatabase模型。

3  Geodatabase的优势

  地理空间数据模型从最初的CAD数据模型到Coverage数据模型,再发展为现今普通使用的Geodatabase 数据模型,经历了几十年的时间。Geodatabase为GIS应用程序提供常用的数据接口和管理框架,提供了处理丰富数据类型、应用复杂规则和关系、存取大量地理数据等功能。

  Geodatabase的优势主要在该模型对关系数据库的扩展,具体体现以下几个方面:

  (1)  Geodatabase存储要素的几何特性,便于开发GIS应用程序中的空间操作功能,比如查找与要素邻近的对象或者具有特定长度的对象,Geodatabase中还提供定义和管理数据的地理坐标系统的框架。

  (2) Geodatabase中的几何网络(Geometric Network)可以模拟道路运输实业或者其他公用设施网络,进行网络拓扑运算。

  (3) Geodatabase中可以定义对象、要素之间的关联(Relationships)。使用拓扑关系、空间表达和一般关联,用户不仅可以定义要素的特征,还可以定义要素与其他要素的关联规则。当要素被移动、修改或删除的时候,用户预先定义好的关联要素也会作出相应的变化。

  (4) Geodatabase通过定义域(Domain)和验证规则(Validation rule)来增强属性的完整性。

  (5) Geodatabase将要素的一些“自然”行为绑定到存储要素的表中。

  (6) Geodatabase可以有多个版本(Version),同一时刻允许不同用户对同一数据进行编辑,并可自动协调出现的冲突。

转载于:https://www.cnblogs.com/cugwx/p/3726816.html

GIS数据格式:Geodatabase相关推荐

  1. GIS基础(4)常见的GIS数据格式

    1 引言 为什么几乎我打开一个应用,这个应用都要问一个问题,能否获取您的位置信息.可以说,现在大部分的数据都有一个地理位置的信息,我们可以称之为空间数据. 这些空间数据可能是一些地图,一些卫星影像,又 ...

  2. GIS数据格式整理之Coverage篇

    我之前做了一个模块,基本实现了ArcCatalog中左边树状结构的功能,但是后续的处理中,我发现了很多自己依旧不太熟练的内容,看到对于GIS数据格式还要继续深入理解. 所以我决定按照专题方式研究每一个 ...

  3. 【Arc GIS 零基础教学】这些常见的GIS数据格式你知道几个

    Hi,我是胡学长!今天我们来学习一下常见的GIS数据格式:矢量数据.栅格数据. (一)什么是矢量数据 矢量数据(Vector Data)是用X.Y.Z坐标表示地图图形或地理实体位置的数据. 矢量数据一 ...

  4. GIS数据格式:Coverage

    Coverage是ArcInfo workstation的原生数据格式,被称为是"基于文件夹的存储"方式.Coverage格式的空间信息和属性信息是分别存放在两个文件夹里.空间信息 ...

  5. GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)

    文章目录 前言 一.坐标系 1.地球坐标 (WGS84) 2.国测局坐标系(GCJ-02.火星坐标系) 3.百度坐标(BD-09) 4.国家大地2000坐标系(CGCS2000) 二.百度坐标系(BD ...

  6. mysql中存储gis数据类型_GIS数据格式及存储方式的基本概念

    GIS概念中有相当多的数据文件格式,我们经常接触到的数据格式可以大致分为"栅格数据"与"矢量数据"这两类.这两类数据分别对应着不同的应用场景,我们通常使用&qu ...

  7. 最全的测绘、地信数据格式介绍

    文章目录 测绘.地信数据格式 矢量 GIS 文件格式 栅格 GIS 文件格式 压缩栅格文件格式 地理数据库文件格式 关系数据库管理系统 (RDBMS) 激光雷达文件格式 CAD 文件格式 高程文件格式 ...

  8. GISer必备数据格式清单,含矢量数据、栅格数据、切片地图

    你知道GIS数据有哪些类型吗? GISer的职业生涯中,都会遇到各种各样的数据.本期,小编将会为大家详细介绍GIS中常用的各种数据格式.请毫不犹豫的分享和收藏吧,万一派上用场了呢! Part One ...

  9. gis 数据框裁剪_BIM+GIS的八大挑战!大挑战,见未来

    BIM与GIS的跨界融合,使微观领域的BIM信息与宏观领域的GIS信息实现交换和互操作,提升了BIM应用深度,将BIM的应用从单体延伸到建筑群甚至城市级,为GIS行业发展带来了新的契机,同时也带来了一 ...

最新文章

  1. ios 替换数组中元素_ios可变数组的所有操作
  2. 【c语言】蓝桥杯算法提高 一元一次方程
  3. python相同程序执行结果不同_原理相同只是精简了的python代码,运行结果不同是为什么...
  4. 数字图像处理matlab实验对图像复原,数字图像处理实验07图像的复原处理
  5. 介绍10个常用的Python内置函数,99.99%的人都在用!
  6. 表达式求值负数乘负数_为什么现在很多期权的时间价值都为负数?
  7. 简单六步,用数据说服你的听众
  8. 作者:胡青青(1984-),女,现就职于中国人民银行征信中心数据部,主要研究方向为数据挖掘。...
  9. 万字长文深入探究Oracle DML锁机制
  10. 精读《手写 SQL 编译器 - 性能优化之缓存》
  11. sudo spctl --master-disable_2020推荐聊城灭火器检测--正规企业--【聊城市久安消防】...
  12. QT5入门学习(一)
  13. 手机浏览器查看控制台
  14. 户外广告牌新标准将规定字体、颜色
  15. DayDayUp:20190908易建联27分中国男篮负无缘直通奥运—回顾2008年奥运中国男篮— 易建联加油!中国男篮加油!
  16. python实现Excel邮件合并
  17. Redis大Key优化
  18. COGS 613. 火车站饭店 解题报告
  19. OPPO R7s线刷和恢复出厂设置的比较
  20. 13 个优秀的 Vue 开源项目及合集推荐

热门文章

  1. 【Linux】一步一步学Linux——su命令(103)
  2. 【Linux系统编程】浅谈进程地址空间与虚拟存储空间
  3. android权限询问,Android:检查是否必须询问运行时权限
  4. 前端js自动填写 点击_爬虫自动填写学生健康打卡表
  5. sql like 绑定变量_码硬解析的改进方法之二使用绑定变量
  6. android edittext seterror,EditText之setError方法一二
  7. php 循环curl,PHP实现的curl批量请求操作示例
  8. suse linux 安装oracle,SUSE Linux下安装Oracle 11g服务器
  9. CentOS设置开机自动启动某服务
  10. 一个Lex/Yacc完整的示例(可使用C++)