ArcGIS的Compress、Compact、Analyze命令

ArcGIS的Compress命令有两种,一种是对ArcSDE数据的压缩命令,一种是针对FileGDB数据的压缩命令。

ArcSDE数据的Compress

使用方式

以下相关命令的使用方式类比参考

1:ArcCatalog方式。

1.在ArcCatalog中,单击View菜单,指向Toolbars,并单击Customize。

2.复选toolbars列表中的Context Menus。

3.单击Context Menus菜单。

4.单击Remote Database Context Menu旁边的箭头。

5.单击定制对话框中的Commands选项卡。

6.单击Geodatabase tools。

7.单击并从Commands列表中拖动Compress Database命令到Remote Database Context Menu的子菜单中。

该命令出现在弹出式菜单中。

8.单击定制对话框的Close按钮

2:ArcToolbox方式

Database-Compress

3:代码方式

IVersionedWorkspace.Compress

4:命令行

compress_management 'Database Connections\Connection to deerfoot.sde'

5:脚本语言

import arcgisscripting

gp = arcgisscripting.create()

gp.toolbox = "management"

gp.compress("Database Connections\Connection to deerfoot.sde"

 

6:SDE命令

sdeversion -o compress        [-N]

                              [-u <DB_user_name>] [-p <DB_User_password>] [-q]

                              [-i <service>] [-s <server_name>] [-D <database>]

版本原理简单介绍

利用ArcGIS版本进行管理,在版本注册(without the option to move edits to base)针对某个要素类会产生一组Delta表(A表增加表、D表删除表),数据的编辑信息其实是记录在Delta表中,然后在SDE元数据库中的States表中记录编辑的状态,State_lineages表记录一个要素的横向变化。利用State_ID来对这些表进行相互关联。但是在用户在操作过程中会多次协调、提交,在子版本没有提交Default版本的情况下删除子版本等等,这些都会在数据库中的产生大量的冗余或者无效数据,如果时间累计,则会造成数据的查询分析效率低下。

适用范围

利用ArcGIS版本原理来管理SDE数据库,并且对数据进行频繁的编辑(增加、删除、修改)

压缩前准备

<!--[if !supportLists]-->Ø  <!--[endif]-->按照工作需求,尽量对版本进行协调和提交

<!--[if !supportLists]-->Ø  <!--[endif]-->删除已经协调过的版本

        压缩(Compress)命令在没有首先进行版本调和、提交和删除版本的情况下也可以执行,但压缩效率可能不明显。

压缩目标

1:删除未引用的状态和多余的数据(States)

<!--[if !supportLists]-->Ø  <!--[endif]-->某个版本进行删除之后,该版本的相关操作状态

<!--[if !supportLists]-->Ø  <!--[endif]-->重复进行版本协调、提交产生的状态等

   减少存储空间

2:将所有版本的Delta表数据转移到Base表中(without the option to move edits to base)

   减少检索时间

压缩建议

建议定期对版本数据进行压缩。如果累计时间太久,数据量巨大,则压缩时间也会相应加长

压缩注意事项

<!--[if !supportLists]-->Ø  <!--[endif]-->只有ArcSDE管理员才能执行Compress操作,不能压缩其他用户的数据

<!--[if !supportLists]-->Ø  <!--[endif]-->一旦数据库进行压缩之后,删除数据不能恢复。

<!--[if !supportLists]-->Ø  <!--[endif]-->压缩完数据库之后,建议使用Analyze工具进行数据库统计,这样就会加快显示和查询的性能

<!--[if !supportLists]-->Ø  <!--[endif]-->压缩时用户可以连接,但是如果有用户进行编辑,则被锁定不参与压缩。

FGDB数据的Compress

数据类型

          支持:Geodatabase、数据集、要素类、普通表等

          半支持:Raster Dataset、Raster Catalog通过GP工具才能实现

          不支持: Schematic、Cadastral fabric、 Survey dataset

应用范围

        成熟的数据(不需要经常编辑的数据)

压缩原理

         将数据压缩为Read-Only格式   

压缩识别

选择数据集-右框(Contents)

要素类-Properties -General

压缩效果

       可以减少文件的存储空间

       可以感觉到在查询和显示方面有轻微的性能改进,但其他操作略有减缓

压缩限制

         压缩后的数据不能进行数据编辑。

         可以编辑的:要素类名称(别名)、属性索引、元数据

压缩说明

         压缩为无损的,不会有信息丢失

压缩依据

<!--[if !supportLists]-->Ø  <!--[endif]-->要素类中构成要素点的平均数

<!--[if !supportLists]-->n   <!--[endif]-->点和简单线压缩比要高于多点构成的线或者面

<!--[if !supportLists]-->Ø  <!--[endif]-->字段类型

<!--[if !supportLists]-->n   <!--[endif]-->文本、整型、日期型等压缩比要高于浮点型和双精度类型

<!--[if !supportLists]-->Ø  <!--[endif]-->分辨率(resolution)

<!--[if !supportLists]-->n   <!--[endif]-->分辨率高的压缩比高于分辨率低的

压缩注意

压缩的数据可以进行创建、复制、粘贴等功能。那么就数据就会包括已压缩的数据和未压缩的数据的混合状态。但是如果需要编辑数据,需要重新解压缩数据。

如果压缩关系类的一侧,不能编辑另一测。混合状态可以创建拓扑,但仅限于未压缩的数据。

Compacting file and personal geodatabases

原因

 当第一次将数据加载到FGDB或者PGDB中时,文件中的记录是顺序排列的,但是如果以后删除或者添加要素,则文件中的记录就没有顺序了,会存在很多没有利用的空间,这将加大文件存储的空间,使得数据访问起来速度很慢。

作用

 Compacting是将文件记录整理、重新归类,以减少存储空间。

范围

 如果经常添加或者删除数据,就必须定期对数据实现Compact,这能够减少文件大小,提高访问速度。

注意

   如果数据被独占不能进行Compact功能

Analyze

适用范围

         数据集

         业务表、要素表、A表、D表、历史表、栅格表

         单独表分析使用Arctoolbox工具

分析原理

         更新表的统计信息以及这些表的索引的统计信息

适用情况

         在数据加载、数据删除、数据更新、数据压缩等操作

适用目的

       提高数据库检索查询的效率

其他

        如果该要素数据集包含几何网络,则该网络的表也进行了更新。

posted @ 2011-03-22 13:59  海平  阅读(2788)  评论(0编辑  收藏  举报