[appengine-java] Question: best practice to persist medium-large data?

2010-01-25 Thread Moritz
Hi Group, I'm not sure about how to model my application, therefore I'm going to ask you, because I think you might know some best practice approach. Here is the problem. I have a simple application, maintaining photos and albums. Each photo can be assigned to one album. One album can contain mul

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-25 Thread Jeff Schnitzer
On Mon, Jan 25, 2010 at 12:02 PM, John Patterson wrote: > ... and then Twig makes it even easier!  Because it supports direct > relationships (without Keys) and can translate any type into a Blob for you > your data model doesn't need to deal with low-level types at all > > So you example becomes:

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-25 Thread John Patterson
On 26 Jan 2010, at 13:37, Jeff Schnitzer wrote: I can't resist a conversation about framework design philosophy :-) Oh go on then. Just a quickie. This sort of binding (property of List) can be convenient in some applications, and as a longtime Hibernate user I got used to working like th

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread Chau Huynh
Thanks John and Jeff for sharing the knowledge. I've just quickly scanned your project home, and I have a novice question that needs your help: Is twig or Objectify direct replacement to JDO / JPA on GAE? I just need to use your framework alone, or should use in combination with JDO / JPA support?

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread John Patterson
Hi Chau, yes both Objectify and Twig replace JDO/JPA. I think that Google would not release a non-standard datastore user-level API because they could then be accused by many of "vendor lock-in". When App Engine was launched there was a lot of concern about this. On 26 Jan 2010, at 16:59,

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread Ikai L (Google)
There aren't current plans to create yet another API for datastore operations. That's why we created the datastore API - so folks could build convenience functions as needed. I don't see anything wrong with mixing JDO/JPA with another tool for datastore access, other than adding unnecessary comple

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread Jeff Schnitzer
On Mon, Jan 25, 2010 at 11:52 PM, John Patterson wrote: > > This is why you configure what type of relationship is used using: @Embed, > @Entity(PARENT), @Entity(CHILD) or @Entity(INDEPENDENT) > So you have the flexibility to choose configuration _without_ rewriting your > code.  Very important di

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread Duong BaTien
Hi Jeff: I am here again and have put sometime in Objectify. Thanks for taking pain at different design patterns. Please let the list known your effort in the good idea #2, especially in the social graph set intersections and union. Duong BaTien DBGROUPS and BudhNet On Tue, 2010-01-26 at 14:19

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-26 Thread Jeff Schnitzer
Here's the Objectify version of what's described in the video, capable of a photo-equivalent of "million user fanout": class Album { @Id Long id; String name; } class PhotoIndex { @Id Long id; @Parent OKey album; Set> photos; } class Photo { @Id Long id; String caption; Str

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-27 Thread John Patterson
On 27 Jan 2010, at 05:19, Jeff Schnitzer wrote: although I do think the creators of JDO's annotations are aesthetically challenged). Ha ha fair enough. Sorry can't respond more just yet as Im out the door to Koh Phangan until Monday! I think its a good thing to have abstractions at diffe

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-27 Thread Jeff Schnitzer
On Tue, Jan 26, 2010 at 4:40 PM, Jeff Schnitzer wrote: > > If you want to ask "what albums are this photo in?" (equivalent to > "what messages are waiting for me" in the video), you query like this: > > OQuery query = > createQuery(PhotoIndex.class).filter("photos", photoKey); > List> keys = ofy.p

Re: [appengine-java] Question: best practice to persist medium-large data?

2010-01-27 Thread Duong BaTien
Thanks Jeff. There seems to be something at odd: On Tue, 2010-01-26 at 16:40 -0800, Jeff Schnitzer wrote: > Here's the Objectify version of what's described in the video, capable > of a photo-equivalent of "million user fanout": > > class Album { >@Id Long id; >String name; > } > class P