同步复制使用系列二-OneWay

来源:互联网 发布:政府利用大数据分析 编辑:程序博客网 时间:2024/06/05 00:25

 

One Way

简单介绍

组织需要为一组编辑者提供支持,同时也要支持具有只读访问权限的用户对系统进行访问。为满足这两组用户的需求,组织建立了两个 ArcSDE 地理数据库。一个是可由编辑者直接编辑的生产地理数据库,另一个是可由读取者访问的此地理数据库的复本。读取者可通过 ArcIMS 或 ArcGIS 服务器对此数据进行访问。

在这种情况下,发布地理数据库中的复本是生产地理数据库的只读副本。发布地理数据库中的数据无需进行版本化。可将复制限制为只在一个方向上发送数据。在生产地理数据库中进行所需的编辑,然后将编辑内容从生产地理数据库发送到发布地理数据库。这些编辑内容会被传输到发布地理数据库并与其中的数据进行同步,然后供读取者查看。

clip_image002

几点必要条件

Ø 每一个数据集都必须有GlobeID字段,标识每条记录在该GDB内或GDB之间的唯一性

Ø 空间数据必须以高精度的空间参考存储(9.2以后的GDB)

Ø 数据库用户必须对数据有write权限

Ø 数据必须注册为版本,且没有勾选move edits to base选项

假设场景

许多用户的应用场景是这样的,一个发布库一个编辑库,编辑库是可以对数据进行相关的编辑操作,也就是说是可写的,但是发布库是只是对数据的只读,而且对于编辑库的变化数据要与发布库的数据进行同步,那么我们ArcGIS的同步复制的One Way就很好的解决了该问题。One Way可以是ArcSDE库到PGDB、FGDB、ArcSDE GDB都是可以的。

编辑库

Oracle 11.1.0.6 64Bit、ArcSDE10(以下称父库)

clip_image004

发布库

SQLServer2008 64Bit、ArcSDE10、无数据(以下称子库)

操作步骤演示

首先我们对父库的数据数据注册版本,不打勾的选择,然后添加Global ID操作

clip_image006

clip_image008

然后我们创建一个复本,我们可以看到如下图所示,One Way选项中有从父到子,有从子到父(ArcGIS10新特性),其实两个是差不多的,从父到子大家理解比较容易,从子到父其实就是将相关场景调换过来即可。本身Oneway支持Simple/Full Model的。

clip_image010

直接下一步,默认完成即可。查看SQLServer库的数据,看到Oracle库里面的数据已经同步过来了

clip_image012

然后对Oracle数据库的数据进行编辑,增加图形、分割图形、删除图形等操作,鉴于图片大小比例尺可能不一样。

然后我们对父库的数据进行相关的编辑操作。

clip_image014

进行同步复制功能,看到划圈的要选择好相应的数据源和复本名称(版本名称)

clip_image016

点击完成,我们可以看到父库编辑的数据已经与子库进行了数据的同步。

clip_image018

ArcGIS10新特性

上面介绍了我们对父库进行同步复制的OnaWay,是可以利用版本的机制来进行同步的,但是在ArcGIS 10中可以采用历史归档的方式进行同步复制,也就是说对父库的数据进行历史归档,然后对Default的版本进行数据编辑,那么进行同步复制时就不需要利用版本的机制来获得变化数据了,只需要对归档表的数据进行同步,这样效率就会提高很多,至于效率为什么提高,可以参考2010年华北区用户大会的《ArcGIS历史库策略》的讲座。

参考地址:http://www.esrichina-bj.cn/market/2010uc/zlxz.php

理解子到父操作

OneWay既支持从父到子,又支持从子到父,有一点大家必须弄清楚,之所以叫One Way,就是单向复制,一个方向,把握住这个点,理解就容易的多。

clip_image020clip_image022

有一点误区大家需要注意:就是不要立即为当父库与子库已经建立了一个One way关系,进行同步之后,原来的子库可以再与父库建立一个OneWay关系,这样理解是不对的,这样的话其实就与OneWay的单向复制有悖了。所以这一点大家需要特别注意。

Schema的映射

映射流程

父库字段改变-子库与父库比较Schema-生成XML文件-子库导入该XML文件-Schema同步。

具体操作步骤

接着上面的父库数据,我们进行试验。首先看一下父库的结构,我们对父库结构添加一个rrrr字段。

clip_image024

然后查看一下子库的数据结构

clip_image026

我们可以看到子库中并没有rrrr字段(Oracle和SQLServer库存储不一样,SQLServer数据看到LEN和AREA字段),我们只关注BB、CCC、GGGG、RRRR这些字段。

我们在子库数据,选择Compare Replica Schema按钮,生成XML文件

clip_image028

clip_image030

然后导入生成的XML文件

clip_image032

clip_image034

我们查看子库的Schema,增加了RRRR字段。

clip_image036

 

原创粉丝点击