地理数据库的类型geodatabase类型
地理数据库的类型geodatabase类型
地理数据库是用于保存数据集集合的“容器”。有以下三种类型:
- 文件地理数据库 - 在文件系统中以文件夹形式存储。每个数据集都以文件形式保存,该文件大小最多可扩展至 1 TB。建议使用文件地理数据库而不是个人地理数据库。
- 个人地理数据库 - 所有的数据集都存储于 Microsoft Access 数据文件内,该数据文件的大小最大为 2 GB。
- ArcSDE 地理数据库 - 使用 Oracle、Microsoft SQL Server、IBM DB2、IBM Informix 或 PostgreSQL 存储于关系数据库中。这些多用户地理数据库需要使用 ArcSDE,在大小和用户数量方面没有限制。
关键特征 |
ArcSDE 地理数据库 |
文件地理数据库 |
个人地理数据库 |
---|---|---|---|
描述 |
在关系数据库中以表的形式保存的各种类型的 GIS 数据集的集合(为在关系数据库中存储和管理的 ArcGIS 建议使用的本机数据格式。) |
在文件系统文件夹中保存的各种类型的 GIS 数据集的集合(为在文件系统文件夹中存储和管理的 ArcGIS 建议使用的本机数据格式。) |
在 Microsoft Access 数据文件中存储和管理的 ArcGIS 地理数据库的原始数据格式。(此数据格式的大小有限制且仅适用于 Windows 操作系统。) |
用户数 |
多用户:多位读取者和多位写入者 |
单个用户和较小的工作组:每个要素数据集、独立要素类或表有多位读取者或一位写入者。浮动使用任何特定文件最终都会导致大量读取者的降级。 |
单个用户和较小的工作组(具有较小的数据集):多位读取者和一位写入者。浮动使用最终会导致大量读取者的降级。 |
存储格式 |
|
每个数据集都是磁盘上的一个单独文件。文件地理数据库是用来保存其数据集文件的文件夹。 |
每个个人地理数据库中的所有内容都保存在单个 Microsoft Access 文件 (.mdb) 中。 |
大小限制 |
可达 DBMS 限制 |
每个数据集 1 TB。每个文件地理数据库可保存很多数据集。对于超大型影像数据集,可将 1 TB 限值提高到 256 TB。每个要素类最高可扩展至每个数据集数亿个矢量要素。 |
每个 Access 数据库 2 GB。性能下降前的有效限制通常介于每个 Access 数据库文件 250 到 500 MB 之间。 |
版本管理支持 |
完全支持所有的 DBMS。包括交叉数据库复制、使用检出和检入进行更新以及历史存档。 |
对于使用检出和检入提交更新的客户机和可使用单向复制向其发送更新的客户机,仅支持地理数据库格式。 |
对于使用检出和检入提交更新的客户机和可使用单向复制向其发送更新的客户机,仅支持地理数据库格式。 |
平台 |
Windows、UNIX、Linux 和与 DBMS 的直连,这些 DBMS 可能会在用户的本地网络中的任意平台上运行。 |
跨平台。 |
仅适用于 Windows。 |
安全和权限 |
由 DBMS 提供 |
操作文件系统安全。 |
Windows 文件系统安全。 |
数据库管理工具 |
备份、恢复、复制、SQL 支持、安全等的完整 DBMS 功能 |
文件系统管理。 |
Windows 文件系统管理。 |
注 |
需要使用 ArcSDE 技术。ArcSDE for SQL Server Express 包含于
ArcGIS Server Enterprise 中包含面向所有其他 DBMS 的 ArcSDE |
还可以以只读的压缩格式存储数据以降低存储要求。 |
通常用作属性表管理器(通过 Microsoft Access)。用户喜欢针对文本属性的字符串处理。 |
三种类型地理数据库的比较
文件地理数据库和个人地理数据库
文件地理数据库和个人地理数据库是专为支持地理数据库的完整信息模型而设计的,它包含拓扑、栅格目录、网络数据集、Terrain 数据集、地址定位器等,ArcView、ArcEditor 和 ArcInfo 的所有用户可免费获取这两种地理数据库。单用户可以对文件地理数据库和个人地理数据进行编辑,这两种地理数据库不支持地理数据库版本管理。使用文件地理数据库,如果要在不同的要素数据集、独立要素类或表中进行编辑,则可以同时存在多个编辑器。
文件地理数据库是在 ArcGIS 9.2 中发布的新地理数据库类型。其旨在执行以下操作:
- 为所有用户提供可用范围广泛、简单且可扩展的地理数据库解决方案。
- 提供能够跨操作系统工作的可移植地理数据库。
- 通过扩展可处理非常大的数据集。
- 性能和可扩展性极佳。例如,要支持包含超过 3 亿个要素的单个数据集,并支持可扩展为每个文件超过 500 GB(且可获得极佳的性能)的数据集。
- 使用性能和存储能力都得到优化的高效数据结构。文件地理数据库所使用的存储空间约为 shapefile 和个人地理数据库所必需的要素几何存储空间的三分之一。文件地理数据库还允许用户将矢量数据压缩为只读格式,以进一步降低存储要求。
- 在涉及属性的操作方面优于 shapefile,数据大小限制可进行扩展,可使其超出 shapefile 限制。
自从个人地理数据库最初在 ArcGIS 8.0 版本中首次发布以来,ArcGIS 中一直在使用个人地理数据库,该地理数据库使用了 Microsoft Access 数据文件结构(.mdb 文件)。它们支持的地理数据库的大小最大为 2 GB。不过,在数据库性能开始降低之前,有效的数据库大小会较小(介于 250 和 500 MB 之间)。个人地理数据库只能在 Microsoft Windows 操作系统下使用。用户喜欢他们能够通过 Microsoft Access 针对个人地理数据库执行的表操作。许多用户确实喜欢 Microsoft Access 中用于处理属性值的文本处理功能。
出于很多用途,ArcGIS 将继续支持个人地理数据库。不过,多数情况下,ESRI 推荐使用文件地理数据库以实现数据库大小的可扩展性,这样可大幅度提高性能并可跨平台使用。文件地理数据库非常适合处理用于 GIS 投影的基于文件的数据集,非常适合个人使用以及在小型工作组中使用。它具有很高的性能,在不需要使用 DBMS 的情况下能够进行很好的扩展以存储大量数据。另外,还可跨多个操作系统对其进行移植。
通常,用户会针对数据集合使用多个文件或个人地理数据库,并针对他们的 GIS 工作同时访问这些地理数据库。
ArcSDE 地理数据库
如果需要一种多位用户可同时编辑和使用的大型多用户地理数据库,则 ArcSDE 地理数据库可提供一种极佳的解决方案。新增的功能可用于管理共享式多用户地理数据库和支持多种基于版本的关键性 GIS 工作流。从而使利用贵组织企业关系数据库的能力成为 ArcSDE 地理数据库的一项重要优势。
ArcSDE 地理数据库适用于多种 DBMS 存储模型(IBM DB2、Informix、Oracle、PostgreSQL 和 SQL Server)。ArcSDE 地理数据库使用范围广泛,主要适用于个人、工作组、部门和企业设置。它们充分利用 DBMS 的基础架构以支持以下内容:
- 超大型连续 GIS 数据库
- 多位同步用户
- 长事务和版本化工作流
- 对 GIS 数据管理的关系数据库支持(为保证可伸缩性、可靠性、安全性、备份以及完整性等提供建立关系数据库的优势)
- 所有支持的 DBMS(Oracle、SQL Server、PostgreSQL、Informix 和 DB2)中的 SQL 空间类型
- 可适应大量用户不同要求的高性能
通过许多大型地理数据库的安装启用,我们发现在将 GIS 数据所需的大型二进制对象移入和移出表格时 DBMS 的效率极高。此外,与基于文件的 GIS 数据集相比,GIS 数据库的容量更大且支持的用户数量也更多。
有关 ArcSDE 地理数据库架构以及 ArcSDE 地理数据库如何利用关系数据库技术的信息,请参见地理数据库的架构。
ArcSDE 可对 DBMS 事务框架进行长事务管理和短事务管理
ArcSDE 的主要角色之一就是支持每个 DBMS 中的地理数据库版本管理框架。
绝大多数情况下,GIS 中的单个编辑事务可能涉及对多个表中的多个行进行更改。例如,更新宗地可能需要更改面的表示,并更改相应的边界线和宗地拐角。此外,还必须更新这些要素中每个要素的属性记录。此编辑操作需要对多个表中的多条记录进行更改。在这些情况下,用户希望将此编辑集合视为单个事务。提交或回滚这些更改时,会将它们视为一个统一的操作来进行管理。
同时,用户希望能够在一个编辑会话中撤消和重做单个编辑操作。为了使这种情况变得更为复杂,可能需要在与中央共享数据库断开连接的系统中执行编辑操作。
而且,在这些专门化的 GIS 数据维护过程中,GIS 数据库必须持续保持对日常操作可用,而在这些日常操作中,每位用户都有可能获取共享 GIS 数据库的个人视图或状态。
通过使用一种称为版本管理的方法,ArcSDE 地理数据库支持在多用户环境下对这些数据管理情景及许多其他数据管理情景进行管理和更新。在版本管理这种机制下,所有的数据库更改都作为表中的行进行记录。例如,每次更新某一行中的某个值时,旧值即会失效,并会新增一个更新行。
这样,通过将更改信息以增量记录的方式存储在数据库中,ArcSDE 技术就能在简单 DBMS 事务框架中管理复杂的高级 GIS 事务。
转自:http://blog.csdn.net/lz576825608/article/details/8281305
地理数据库的类型geodatabase类型的更多相关文章
- 《精通C#》自定义类型转化-扩展方法-匿名类型-指针类型(11.3-11.6)
1.类型转化在C#中有很多,常用的是int类型转string等,这些都有微软给我们定义好的,我们需要的时候直接调用就是了,这是值类型中的转化,有时候我们还会需要类类型(包括结构struct)的转化,还 ...
- [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理
原文地址:http://kb.cnblogs.com/page/42318/ 系列文章导航: [你必须知道的.NET] 开篇有益 [你必须知道的.NET] 第一回:恩怨情仇:is和as [你必须知道的 ...
- java基础-基础类型包装类型
想要对基本类型数据进行更多的操作,最方便的方式就是将其封装成对象. 为啥呢?因为在对象描述中就可以定义更多的属性和行为对该基本数据类型进行操作. [八种基本数据类型的包装类] byte --Byte ...
- C# 如何获取某个类型或类型实例对象的大小
在统计类型或类型实例对象时,出了个异常: “不能作为非托管结构进行封送处理;无法计算有意义的大小或偏移量.” 后来查了一下,原来,我们创建的struct或是class都是属于复杂类型的.(纠正一下,如 ...
- JavaScript的基本包装类型概述与基本包装类型_Number类型
JavaScript的基本包装类型示例 为了便于操作基本类型值,javaScript 提供了 3 个特殊的引用类型:Boolean.Number和 String. 这些类型与其他引用类型相似,但同时也 ...
- typescript枚举,类型推论,类型兼容性,高级类型,Symbols(学习笔记非干货)
枚举部分 Enumeration part 使用枚举我们可以定义一些有名字的数字常量. 枚举通过 enum关键字来定义. Using enumerations, we can define some ...
- Java 日期时间 Date类型,long类型,String类型表现形式的转换
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...
- 列表 ->join---> 字符串 转类型:x--->y类型 y(x)
列表 ->join---> 字符串 转类型:x--->y类型 y(x)
- 媒体类型(MIME类型)
# encoding=utf-8 #python 2.7.10 #xiaodeng #HTTP权威指南 #HTTP协议:超文本传输协议是在万维网上进行通信时所使用的协议方案. #媒体类型: #HTTP ...
随机推荐
- thinkphp 两表、三表联合查询
//两表联合查询 $Model = M('T1');$Model->join('left join t2 on t1.cid = t2.id')->select();// $list = ...
- 人人网的账号登录及api操作
.renren.php <?php /** * PHP Library for renren.com * * @author */ class renrenPHP { function __co ...
- hdu 4741 2013杭州赛区网络赛 dfs ***
起点忘记录了,一直wa 代码写的很整齐,看着很爽 #include<cstdio> #include<iostream> #include<algorithm> # ...
- Android系统架构
Linux内核层 为Android的各种设备提供了底层驱动 系统运行库层 为Android提供一些底层的库,如数据库.3D绘图等 应用框架层 核心API 应用层 具体的手机application An ...
- 智能车学习(二十)——浅谈C车硬连接与软连接
一.为何要追求软连接? 车子进行软连接之后,可以达到一种效果,就是在高速过程中,车子如果快要发生侧翻的时候,只会跳一个后轮,且只是轻微,而前轮如果进行的内倾,就可以让前轮最大面积接触,增大 ...
- (转载)一个用于Gnome桌面的下拉式终端: Guake 0.7.0 发布
转自:https://linux.cn/article-5507-1.html Linux的命令行是最好.最强大的东西,它使新手着迷,并为老手和极客的提供极其强大的功能.那些在服务器和生产环境下工作的 ...
- 【java 获取数据库信息】获取MySQL或其他数据库的详细信息
1.首先是 通过数据库获取数据表的详细列信息 package com.sxd.mysqlInfo.test; import java.sql.Connection; import java.sql.D ...
- 【JDK】电脑上安装多个JDK ,修改JAVA_HOME后没有作用
电脑上装了 C:\Program Files\Java\jdk1.6.0_43 C:\Program Files\Java\jdk1.7.0_80 C:\Program Files\ ...
- 587A
#include<iostream> #include<algorithm> #include<stdio.h> #include<stdlib.h> ...
- 性能测试中TPS和并发用户数
并发用户数与TPS之间的关系 1. 背景 在做性能测试的时候,很多人都用并发用户数来衡量系统的性能,觉得系统能支撑的并发用户数越多,系统的性能就越好:对TPS不是非常理解,也根本不知道它们之间的关系 ...