You call that a "pretty good experience"?  I call that a nightmare.

Googlers would be wise to read that post and realize that many of the things he 
had to do are insanely complicated. About half of this stuff would not be 
necessary if google figured out a way to keep the same app ID when porting to 
HR. I imagine that the crux of the problem is that there is only one big table, 
and so there would be name collisions between the HR and M/S versions, right? 
So how about cleaving the world into two big tables? Is that possible? Or how 
about adding a hidden boolean (_is_hr) attribute to all models, and rigorously 
mixing that boolean into all gets, puts, queries, etc, deep in the 
infrastructure.

The other half of the complexity is coming from his need to start using entity 
groups.  I have about 15 apps running on GAE (comprising about 10K lines of 
python code) and I have never, ever, parented an entity. When I read the docs a 
hundred years ago, it became clear to me that parenting entities must be 
something that is required for some kind of application that I'm not writing. 
Frankly, I've never completely groked what an entity group maps to in my (30+ 
years of) programming experience. It's certainly not a parent/child 
relationship in the usual sense.

One thing that this post made clear to me is that I need to spend some 
significant time figuring out what the hell an entity group really is, and why 
they suddenly matter in HR.  Because right now, I don't get it. And Kuan 
certainly wouldn't have gone to all that trouble if he hadn't needed to.

-Joshua

p.s.: cool site, Kuan

On Jul 11, 2011, at 5:14 PM, kuanyong wrote:

> Hey guys,
> 
> I had a pretty good experience migrating a fairly complex python app from the 
> master/slave datastore to the high replication datastore. I wrote a blog post 
> to document a few things I learned along the way. I hope some of you will 
> find it useful.
> 
> http://blog.shnap.com/migrating-to-the-google-app-engine-high-repli
> 
> Enjoy,
> Kuan
> 
> -- 
> 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/-/cutzl4HHDO4J.
> 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.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
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