I'm not sure if this is the place for this post but I didn't really know what it fell under so I apologize in advance if this belongs in another forum.

I'm looking at creating a new online app for myself and others to store certain types of data. I'd like the ability to display this data in a "versioned" sort of way.

For example, someone uploads some data for people to use. Someone else comes along and likes what they did, but wants to modify it and store it under their collection as well, so they "fork" it. I want anyone to be able to see the changes in this data and view it in almost a Microsoft Word track changes kind of way (not just a compare versions sort of way).

I was looking at doing this using Google App Engine and Python but am curious if what I'm wanting to do would work in the type of DB GAE (distributed I believe) uses efficiently or if hosting it somewhere else and using a "traditional" RDBMS like MySQL would be better.

So what would be the "best" technology to do this with?