I need some suggestions/inspiration for a problem we have.

**The problem:**

We have an ArcSDE master GIS database. We will edit this data almost exclusively outside of ArcGIS and outside of ArcSDE. In other words, we will make an export of some small area and edit this. Then we will push this data back into an other SDE table (diff database).
We will also maintain an extra attribute that contains: add, delete, edit.

What we want to do now is write this diff table to the master. My question is what is the best tool for doing this?
Using Arcpy with cursor, using FME, or are there other Arcgis tools to help?
I was thinking using ArcPy and doing something like this:

* simply add all objects with status add.
* search for every id with status delete and delete it
* search for all ids with status edit and copy the edited ones

What do you think would be the best tool to do this?

* Arcpy?
* FME
* direct SQL (we are using MS SQL)
* others...

The master database will be in the range of about 500.000 objects, so performance is maybe an issue. At the moment we are thinking about a sync operation where an operator starts the sync and can wait for it to finish so he can do some checks after it is completed.

Bonus questions:
We will need to sync dimensionings and labels too. The problem is that, in the diff database, we probably cannot store them as arcgis dimensioning feature classes but they will be line and point symbols with the necessary data attachted to it. Can we use the same technique for transforming and migrating this data so it fits in the dimensioning classes?