Using Versioning / Archive to keep database history

09-04-2014 12:11 AM
New Contributor III

Hello all,


Part of my organisation's gis data is stored in an SQL Server Geodatabase, within a single dataset that contains dozens of simple feature classes.

Twice a year we receive an update package that contains the latest version of those feature classes. I used to overwrite the existing data with the new package while keeping the old data in a File Geodatabase. 

I want to be able keep the data in our SQL Server Geodatabase and to able to see how the data looked like at a certain point in the past. I thought about using Geodatabase archiving but I'm not sure how to insert the new update package. Should I delete the rows of the feature classes and then append the new data? Should I use "Load data"? Is there some other way?



Technical info:

1. SQL Server 2012.

2. ArcGIS 10.2.1.

3. The new data doesn't change schema / feature class structure.

4. Most of the data doesn't change at all.

5. The new data contains all sorts of changes: added features, deleted features, feature-shape changes, attribute changes and so on.

0 Kudos
3 Replies
Esri Esteemed Contributor

Hi Shahar,

You can use delete rows and then append.  The one thing I recommend is creating a Historical Marker Manager before performing the delete/append.  This will allow you to easily query back to a given date.

New Contributor III

Thanks Jake,

I'm using versioning. If I understand correctly, doing delete/append will copy all the current features (the deleted ones) into the Delete table and copy all the new features into the Adds table. That sounds like a waste of resources.

I was thinking that maybe I can treat the update package as a new version and reconcile it with the original dataset. That way, only the changed features will be written to the D/A tables.

How do I do something like that? And will it affect archiving?

0 Kudos
Esri Esteemed Contributor

As long as you perform a compress on a regular basis, your A & D tables will be cleared and good performance will be maintained.

You won't be able to treat the update package as a new version.  A version is almost like a snapshot of the data.  So, if you were to create a new version of the data, delete the rows and append the package to that version, you still are populating the A & D tables.

Another option would be to unregister your feature class as versioned, and enable archiving without versioning.

0 Kudos