some thoughts..... - belongs can only have 30 items in it per execution. GAE limitation - i do many-to-many on GAE by using join tables, i just have to do more queries. it does mean that you can't return 100 courses plus all the students in the course in a single query (if say each course had on average 100 students), but for a single course with a few hundred students this would be ok. so in this case query/view design can be used to help mitigate the issues. - i assert that though it will not be as pretty or SQL-like as you want it to be, you can do it on GAE. - i agree that it could be worth the design headaches upfront to not have to have a large IT staff to support the scaling of your servers.
good luck! christian

