GIS中数据的存储方式Geodatabase数据模型的类型及数据组织 创建Personal Geodatabase
- 格式:docx
- 大小:27.34 KB
- 文档页数:12
GIS中的数据 中的数据 GIS中数据的存储方式 Geodatabase数据模型的类型及数据组织 创建Personal Geodatabase
GIS中的数据是多种多样的,除地图数据 外,还包括图像数据、表格数据、行为 规则以及数据处理模型等。
地图数据通常是矢量数据,是以离散的 点坐标表示地理要素(feature)。在GIS 中,不同的地理要素通常是分层表示, 如道路、河流、居民地等。同种要素组 成的图层称为要素类(feature class)。 图像数据是栅格数据(raster),是以一 系列栅格值来表示。
表格数据(table)是具有相同字段的记 录的集合,没有空间信息。 行为规则包括要素的子类、数据域、关 系、完整性规则(拓扑)及要素连通性 规则(几何网络)等。 数据处理模型包括工具、模型、脚本程 序等。
GIS中的数据 GIS中数据的存储方式 中数据的存储方式 Geodatabase数据模型的类型及数据组织 创建Personal Geodatabase
GIS中数据的存储方式主要有两种: – 文件方式 – 数据库方式
1 文件方式 采用文件方式存储,各种类型数据存储 在不同的文件中。 通常情况下,一个数据由几个文件组成, 如以Shapefile形式保存的地图数据包含了 shp、shx和dbf等文件,其中shp文件保存 空间图形数据,dbf文件是保存属性数据, shx文件是连接图形和属性的索引文件。
优点 – 简单易操作; – 软件投资较小。
缺点 – 不能定义数据规则; – 不支持版本管理; – 不支持多用户的并发访问; – 安全性较差。
2 数据库方式 所有数据统一存贮在数据库中,可以是 小型单用户数据库(如Access),也可 以是企业级的多用户数据库(如Oracle、 DB2、Informix、SQL Server等)。 优点 – 可以利用数据库强大的数据管理、数据安全、 并发以及事务处理等功能。
缺点 – 软件投资较大。
目前,主流的GIS软件都支持在标准的数 据库管理系统表中存储和管理地理信息, 当然,不同的软件具体方式有所不同。 在推出ArcGIS的同时,ESRI公司同时推 出了一种新的数据库方式的空间数据存 储模型——Geodatabase。
GIS中的数据 GIS中数据的存储方式 Geodatabase数据模型的类型及数据组织 数据模型的类型及数据组织 创建Personal Geodatabase
1 Geodatabase数据模型的类型 ArcGIS目前有两种Geodatabase: –个人Geodatabase(Personal Geodatabase) –多用户Geodatabase(Multiuser Geodatabase)。
个人Geodatabase使用微软的Access数 据库来管理数据,它支持单用户编辑, 不支持版本管理。 多用户Geodatabase通过ArcSDE连接企 业级数据库平台,它能支持海量数据库、 多用户的并发访问以及长事务和版本管 理的工作流。
个人和多用户Geodatabase比较 Geodatabase DBMS 注释
个人Geodatabase 个人 Microsoft Jet Engine (Access) ) 单用户编辑 2GB大小限制 大小限制 不支持版本管理 多用户Geodatabase 多用户 Oracle IBM DB2 IBM Informix Microsoft SQL Server 需要 需要ArcSDE 多用户编辑 基于版本管理的工作 流 数据库大小和用户数 限制依赖于数据库
2 Geodatabase数据组织 可以把矢量地图(Feature Class)、表格 (Table)、栅格图像(Raster Dataset)、地理 数据的行为规则以及元数据文档、空间处理工 具等存储在一个Geodatabase中。 在Geodatabase中,可以建立要素集(Feature Dataset),把具有相同空间参考的地图数据存 放到同一要素集中。在要素集中,可以定义集 合中空间相关要素行为的完整性规则(拓扑) 及要素连通性规则(几何网络)。
如对象之间存在的关联,则可建立关系 类,用来控制创建、修改、删除对象的 方式。关系类可以在要素集内,也可以 在要素集外。
在一个数据库 中存储的各种 类型数据
GIS中的数据 GIS中数据的存储方式 Geodatabase数据模型的类型及数据组织 创建Personal Geodatabase 创建
1 基本过程 在ArcCatalog环境下,选择一个文件夹 (或根目录),右击鼠标可以新建一个 Geodatabase。 在Geodatabase下,可以新建要素类和表 格,也可以新建一个要素集,把具有相 同空间参照的要素类放在同一要素集中。
在新建要素集时,可以定义要素集的坐 标系统以及X/Y、Z、M的域。 – 坐标系统的定义有三种方式:选择、输入和 新建。 – X/Y的域包括X/Y坐标值的精度(Precision) 及范围。如Precision 为1,则坐标值取整数, 如Precision为100,则坐标值精确到小数点后 面两位。由于Geodatabase是以4个字节存储 坐标值,小数位越多,能表示的X/Y范围就 越小。 – Z和M分别是高程值和测量值,同样可以定 义它们的域。
只要定义最小X/Y 值和精度,就能自 动计算出最大X/Y 值。 对新建的要素类或表格,我们可以定义 相应的字段(包括字段名及数据类型 等)。 ArcGIS data types table 对每个字段,我们可以定义字段值显示 的宽度(Precision)及小数位(Scale)。 当字段在数据库中产生时,字段类型可 能会根据定义的字段宽度与小数位发生 变化。 对要素类,需要定义Shape字段的类型 (point、line、polygon、multipoint以及 multipatch)。 Demo – 新建一个Personal Geodatabase。 – 在Personal Geodatabase下,新建一个 shanghai要素集,定义坐标系统为高斯投影, 单位为米,精度为1。 – 在shanghai要素集中,新建一个parcel要素类, Shape字段类型为polygon,新增字段 parcel_name(文本型)、 owner_name (文 本型) 。 – 在Personal Geodatabase下,新建一个owner 表,新增字段name (文本型) 、age (短 整型) 。
2 定义子类 子类(Subtype)是根据要素的某一字段 对要素进行细分,如电线杆按照材质可 以分成木质、铁质、水泥质等。子类的 定义有利于对对象进行管理,也有利于 数据输入。 如要创建子类,子类字段必须是整型 整型。 整型 在要素类或表的属性表中,选择子类选 项卡,然后输入每一个子类的代码和描 述。
Demo: – 在shanghai要素集中新建pole要素类(点要 素类),新增三个字段:类型(短整型)、 高度(短整型)和管理部门(文本型)。 – 在pole要素类的属性表中,选择子类选项卡, 根据type字段创建pole类型子类,包括Wood、 Steel和Cement。 – 在ArcMap环境下通过列表框选择对要素子 类进行赋值。
根据类型定义两 个子类 通过列表框选择对要素子类进行赋值 3 定义域 域(domain)是要素字段的有效取值与 范围。域的定义保证输入数据的有效性。 有两种类型的域:范围域和编码值域。 范围域是定义数字字段的有效取值范围; 编码值域是定义有效字段值的集合。 如数据存在子类字段,则同一字段可按 照子类选择不同的域。
编码值域 范围域 右击Geodatabase,点击properties,然后 点击Domain选项卡,定义不同的域。 对每个域,需要定义域所对应的字段类 型,在一个Geodatabase中,不同要素类 或表可以共享相同字段类型的域。如可 以定义5分制、100分制、150制成绩(均 为短整型)的范围域,语文成绩、数学 成绩、体育成绩(短整型字段)等均可 选用相应的域。 定义三个域,前两 个为范围域,第三 个为编码域 在新建要素类时,对新建的字段(或子 类)可以选择Geodatabase中已有的域作 为字段域。对已建的要素类,通过打开 要素类属性表,来定义子类以及子类域。 对一个字段(或子类)只能选择类型一 致的域,如字段为长整型,只能选择同 样是长整型的域。
选中某个子类,可 以定义该子类各个 字段值的域(从已 有的域中选择) 在ArcMap环境下,对字段值进行编辑时, 如果字段值有编码值域,只能在已定义 的值中进行选择;如果字段值有范围域, 利用Editor工具栏下的Validation命令可以 对选中的要素进行有效性检验(要素在 编辑状态下),如用户输入的数据在数 据域之外,该对象将被认为是一个无效 (invalid)对象。
Demo(按子类定义pole要素类的域) – 打开Geodatabase的属性表,定义三个域: Wood_pole高度域(短整型),20—30ft Steel_pole的高度域(短整型),30—50ft pole的管理部门域(文本),市管,区县管
– 打开pole要素类属性表,定义高度和管理部 门字段的域,其中,高度按子类定义。 – 在ArcMap环境下,增加若干个pole点,对选 中点进行属性编辑,其中管理部门只能在市 管和区县管两个值中选择;输入的高度值是 否有效,可以通过Validation命令对选中的要 素进行有效性检验。
4 创建关系 关系(relationship)是指对象之间存在的 关联。 对象之间的关系包括简单关系(simple) 和复合关系(composite)。 – 简单关系(simple)是指对象的存在是独立 的。如一个铁路的道口有一个或多个信号灯, 但它们的存在是独立的。 – 复合关系(composite)是指一个对象的生命 周期控制相关对象的生命周期,如电线杆与 变压器之间的关系。
电线杆与变压器的关系 建立关系的意义: – 在查询一个对象的属性时,可以同时显示与 之相关的对象及其属性,也可以以相关对象 的属性进行专题制图; – 如对象之间的关系为复合关系,在对一个对 象进行编辑时,可以通过关系使相关对象产 生同步变化。
在Geodatabase中,相互关联的对象可以 用关系类数据定义它们之间的关系。 空 间对象之间、非空间对象之间以及空间 对象和非空间对象之间都可以建立关系。