Hi all, 

I am planning to create a new open source data migration project to better 
manage app engine data. Basically you will need to checkout the project and 
deploy to your application (of course to a non-default version with admin 
access only). It will support some CRUD operations which are not supported 
by admin console at the moment, for example, edit text fields, add new 
fields to an entity which doesn't exist in meta data, upload / download file 
from a blob fields etc. Other than that, I will also try to support some of 
SQL for data migration. It will use task (pipeline) API to perform 
operations over large set of data and notify admins on the result via email 
(won't write anything to datastore). For example: *UPDATE person SET 
firstName = 'Max' WHERE firstName IS NULL *or* DELETE FROM person WHERE NOT 
EXISTS (SELECT 1 FROM apartment WHERE apartment.owner = person.name )*

It will also try to implement some new data migration syntax specific for 
app engine. For example, *INDEX person (firstName)* *WHERE age > 25*will 
iterate over all person entities and for each of them partial index 
firstName is indexed when age is more than 25. 

Some health check functions may also be helpful. For example: *CHECK UNIQUE 
person (firstName)* will iterate over all person entities to make sure 
firstName is not duplicated (will need an index to perform this check, and 
only indexed entities will be checked). Other examples include *CHECK TYPE 
person (image) blob *and* CHECK NOT NULL **person (image)*

Other than the application, there will also be a library available to be 
imported in your application directly. One use case is you can have a cron 
job to update something and then perform some health check on your data. 

Any other things you think will be valuable to implement?

*Please please please do let me know if there is already a similar one*. 
Don't want to reinvent the wheel. 

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/Vmm_vyvAip4J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to