Recently I ran into the requirement of storing data from a Google App Engine application.
After having studied the docs, wondering a little why the older JDO obviously was preferred over JPA, I was happy seeing my good old APIs turning in. So quickly I turned the datamodel into a JDO-based one, only to run into several heavy problems, e.g. in model unowned 1:n-Relations and such.
I ended up storing only ids in the associations and dereferencing them myself later, and...
Believe me, it was not a good feeling.
After coming to this point again now, I decided to give the native API a try.
And phew - that was a relief.
Only now I learned the the datastore more or less handles persistent hashmaps with keys.
That I was able to understand and handle properly.
Of course I had to introduce a mapping layer here, too. But that one was much more explicit and it is much easier to understand what is going on.
Again I have the feeling that frameworks are my enemies - no, just kiddin'.
But really - it is so simple to store and retrieve data using the low-level API...
Give it a try!