Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I would like to design an application that would use an SDE database with simple features and a geometric network. That geodatabase would then be replicated out to any number of personal geodatabases that would be edited using an ArcEngine application. These engine users could be offline at any point and ideally the changes that were made would be sync'ed/merged in both directions upon reconnection to the network without any versioning or checking in/out data.

Can SDE replication be configured to accomplish this scenario? What other alternative is there to make this happen?

share|improve this question
add comment

1 Answer

The short answer to your questions is no, but the reasons why are pretty important in the context of distributed databases using ESRI technology.

Here is the ESRI help document on Creating a One-way or Two-way replica.

What is important to note is that a Two-way replica can only be created when the replica is an SDE Geodatabase. You cannot use a Personal Geodatabase in a 2-way replica. There are two ways to have an SDE Geodatabase. The first would be to use the SQL Server Express installation that comes with an ArcINFO License of ArcGIS. The other would be to simply add on to an ArcGIS Server installation.

An important question would be why you want to have an offline application that would be synced and merged in both directions that didn't have any versioning in place? If you are working with an application where data is being edited by multiple users, versioning is critical for maintaining data integrity. The Replication and Versioning process through SDE are what ESRI uses to validate data between different users and the base dataset, and also, and potentially more importantly, to allow an Administrator to resolve conflicts in cases of two or more people editing the same feature.

The way that you could get around this, is slightly complicated from a management point of view, but it will work, and maintain data integrity. You can create 1-Way replicas that are in Personal Geodatabases. If you created a number of these, then users could perform edits and synchronize from the Replicas in to the Parent SDE Geodatabase. Since this is only going in one direction, the PGDB's would eventually get out of synch with each other and the Parent GDB. So, on a set schedule, you would need to drop these replicas and create new 1-Way replicas to PGDB's of the same name. This way, you wouldn't have to repath any data in your application.

The volume and frequency of edits would determine how often you would need to recreate these replicas.

share|improve this answer
    
I am sorry but I have to disagree with this statement: versioning is critical for maintaining data integrity. Even code version control systems don't work this way anymore. Every popular system I can think of uses a merging method unless there is a conflict. –  eptiliom May 2 '12 at 10:38
    
@eptiliom, I see your point. I am not up on code development methods, etc. My comment was pretty specific to ESRI products and the fact that using versioning and replication are part of the ESRI supported process for multi-user data entry and editing. If it were me, I would rather try to work within their system, than have data loss and be told that they are sorry but they can't support me because I went counter to their defined methodology. The other choice is to use a different system, but that isn't what you asked about. –  Get Spatial May 2 '12 at 14:53
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.