Given that the target GAE datastore should be optimised for reads, since writes are expensive, normalization of data is by no means the way to go.
Are Categories and Groups joined in any way? i.e. Has a specific Category got a set of groups, or the other way around? If not, then storing the group/category as a property within the Forum seems fine to me. I would strongly suggest that you read up on the datastore before proceeding however - the GAE datastore doesn't really consist of tables. I would read the following docs in their entirety before doing too much more work: - Datastore Overview - http://code.google.com/appengine/articles/datastore/overview.html - Java Datastore Docs - http://code.google.com/appengine/docs/java/datastore/ - Objectify Docs - These give a good overview of restrictions and best practices when working with the datastore http://code.google.com/p/objectify-appengine/wiki/Concepts?tm=6 -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine-java/-/XdtplUMwmLAJ. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.