ArcSDE数据迁移

Arc SDE 数据迁移

题记

这篇文章主要是利用ArcGIS桌面、ArcSDE命令提供的多种ArcGIS数据导入导出数据(可以理解为数据迁移)的方式和数据库迁移的方式(以Oracle数据库为例),来介绍一下ArcGIS不同迁移方式、数据库不同迁移方式的优缺点,而且这些迁移方式也是根据不同的数据量、不同的运行环境、不同的业务需求来设计的。

注意

首先再次强调,迁移之前做好数据备份工作。

ArcGIS迁移方式

 

                            Copy/Paste

操作方式

复制粘贴功能是ArcGIS最推荐用户使用的数据迁移方式,也就是说直接对ArcSDE数据库的数据集进行复制,然后在新建的File Geodatabase(强烈建议经常使用Personal Geodatabase的用户使用文件地理数据库)进行粘贴。

该迁移方式将所有Geodatabase支持的简单模型(点、线、面要素类)和复杂模型(拓扑、几何网络、关系类等)全部进行了迁移。

适用环境

因为中间数据存储方式以File Geodatabase,那么可以支持跨操作系统、跨数据库类型、跨数据库版本、跨ArcGIS版本(只要桌面可以读取)等

如果数据量在50GB内,甚至是100GB内都可以使用该迁移方式

优点

使用该迁移方式最大的优点是安全,一般如果没有其他意外发生(网络中断),数据的相互组织关系都是没有问题的,而且操作非常简单,上面也提到了跨环境、跨库等。

缺点

如果数据量比较大时,可能会稍显等待时间较长。对ArcGIS桌面所在机器的配置稍高(配置高,效率也会好一些)

其他说明

常常有用户会有这样的一个需求,就是可能他们对图层的ObjectID的值进行使用,那么在数据迁移过程中往往有可能改变该值,但是使用该迁移方式后,图层的ObjectID的值不会重排,所以对ObjectID有要求的用户可以放心大胆的使用该迁移方式。

                     
                   Import/Export(Feature Class)

操作方式

其实该方式已经不能用数据迁移来使用了,这种方式主要是对本地数据的数据导入,导出,外部小数据量的GDB或者shapefile文件的操作。

与上面复制粘贴的方式不同,该方式其实主要立足与简单的对象(点、线、面要素类)进行导入导出,而复杂的对象基本不能进行处理。

适用环境

因为中间数据存储方式以File Geodatabase或Shapefile,那么可以支持跨操作系统、跨数据库类型、跨数据库版本、跨ArcGIS版本(只要桌面可以读取)等。

如果数据量10GB内(shapefile存储不能超过2GB)都可以使用该迁移方式。

优点

使用该迁移方式最大的优点是安全,因为本身数据量不大,显得效率也是不错的。

缺点

该迁移方式只支持简单模型。

其他说明

对比上一个方式,使用该方式的导入图层的ObjectID的值会重排。

                       
                        Import/Export(XML)

个人感觉这个功能并不建议用户使用它来迁移数据,虽然说它也可以进行数据迁移,但是最主要的应该是一个数据库Schema的迁移。

假如一个公司做相关的数据库适合不同的县市,那么就可以使用该功能将数据库的Schema进行签入签出,因为它本身也是将数据库的库结构用XML进行存储。而且该功能也支持full model(复杂模型)。

也曾经有用户使用该方法将10来GB的数据导入导出,屡试不爽,但是如果出现问题,10几个GB的XML文件,谁能将错误找不来吧,所以不建议用户使用该方法进行数据迁移。

 

 

                           同步复制

同步复制应该说不应该作为数据迁移的方法,但是因为同步复制的功能有一项创建复本,该功能可以变相理解为一个数据迁移。

优点:支持复杂数据模型、可以跨环境、跨版本、跨数据库等

缺点:操作稍显复杂。

操作方法:http://wenku.baidu.com/album/view/ec856dce0508763231121237

 

 

 

                     Sdeexport/sdeimport

Sdeexport是ArcSDE的数据导出导入命令,使用该命令个人感觉比桌面的import功能效率稍高。

使用方式:http://wenku.baidu.com/view/ed03afc58bd63186bcebbcc2.html

优点:效率高,可以不使用ArcGIS桌面或者相关的客户端,对迁移环境要求不高

缺点:sdeimport功能支持将数据文件导入到数据库中,以要素类的形式,不能直接导入指定的数据集,所以如果需要对数据集导入要素类,还需要再操作。

使用该功能,用户可以编辑批处理文件,进行循环的数据导入导出,提供工作效率。

 

 

 

                       Sde2shp/shp2sde

Sde2shp是ArcSDE数据与Shapefile数据的导出导入命令,因为Shapefile存储有2GB的限制,所以这种方法使用数据迁移显得很不靠谱,他适合于如果有用户没有安装ArcGIS客户端,而且有需要使用shapefile格式数据,该方法无疑比较方便。

该方法也支持批处理模式进行循环使用。

该命令不支持64位操作系统。

在使用shp2sde时,默认是不导入其他属性字段的,如果需要将其他属性字段都导入到SDE中需要添加参数-a

使用方法:

  1. C:/ >shp2sde -o create -l dddw,shape -f c:/1.shp -u sde -p sde -a all 
  2. ArcSDE 9.3.1 for Oracle11g Build 1632 Thu Feb 26 12:05:37 2009 
  3. Shape to Layer Loading Administration Utility 
  4. —————————————————– 
  5. Set X_offset = 506464 
  6. Set Y_offset = 3845496 
  7. Set XY_scale =1000000000000 
  8. Set Grid Size0 = 62 
  9. 1207 features converted. 
  10. 1207 features stored. 

 

数据库迁移方式

 

                        Impdp/expdp

如果Oracle数据库比较熟悉的用户可能选择使用Oracle的方法进行数据迁移,但是这需要比较深厚的Oracle基础做支撑,出现一些简单的问题可以自行解决,这一点对ArcGIS数据的迁移都是支持的。

使用方式:http://wenku.baidu.com/view/13dda98102d276a200292eea.html

尽管这样我们不建议用户使用该方式。最主要的问题不安全。

有些用户喜欢利用Oracle的数据库操作方式来操作ArcGIS的Schema表,我们曾经不断强调ArcGIS的表之间都是有相互关系的,如果对这些表不太熟悉的话,是不能仅仅通过数据表的名称来理解ArcGIS的数据存储,有些情况下某些信息不仅仅是存储在你以为的一个表或者两个表中的。

典型问题:使用数据泵进行迁移,假设源数据有sde用户,gis1用户,gis2用户,可能用户只将sde用户和gis1用户的数据进行了迁移,gis2用户可能不再需要了,就用管了,数据导入之后应该没有问题,但是在使用ArcCatalog创建某个名称的要素类时系统会提示你已经存在该名称的要素类了,但是检查gis1用户下所有的数据表并没有发现该名称的表,这是为什么呢?

解答:因为我们使用arcSDE进行管理数据,那么所有通过arcSDE入库的数据都会在ArcSDE的Schema进行注册,也就是如上所示gis1、gis2下所有用户的表都会在arcSDE的某几个表进行存储,但是用户只迁移了gis1用户,gis2用户并没有迁移,但是gis2的表信息等都在sde某个表进行存储了,所以在创建新要素类时会检查sde
schema的相关信息,可能你所创建的信息已经存储了(就是gis2下的某个表),所以就会报这个问题。

 

 

                           冷备份

冷备份是我们最推荐用户如果想使用Oracle方式进行备份的一种,因为他操作简单,而且主要都是物理文件的迁移,只要不漏文件,一般没有什么问题。

缺点:如果是7×24小时的用户可能就不行了。

优点:大数据量效率也是可以保证。

操作步骤:http://wenku.baidu.com/view/ae5e538271fe910ef12df832.html

 

 

 

                           RMAN

其实不管是什么软件只要是在Oracle数据库存储,肯定oracle对这些东西最了解,Oracle也会用自己特有的方式进行迁移,RMAN无疑是最安全,最高效的方式。

缺点:技术含量高(目前我也没有试验过)

优点:任何情况都可以。

 

 

                          总结

总结一下就是,如果用户需要对ArcSDE数据进行迁移或者备份等,我们还是建议使用arcGIS的方式来做,如果数据库水平比较高的尽量也是建议用户使用冷备份或者RMAN来操作。

转载自:https://blog.csdn.net/u010865734/article/details/77944318

You may also like...