<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: The Google App Engine Data Model</title>
	<atom:link href="http://bolour.com/blog/index.php/2009/06/the-google-app-engine-data-model/feed/" rel="self" type="application/rss+xml" />
	<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/</link>
	<description></description>
	<lastBuildDate>Sat, 06 Mar 2010 14:06:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Kevin</title>
		<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/comment-page-1/#comment-9839</link>
		<dc:creator>Kevin</dc:creator>
		<pubDate>Sat, 06 Mar 2010 14:06:10 +0000</pubDate>
		<guid isPermaLink="false">http://bolour.com/blog/?p=29#comment-9839</guid>
		<description>I value your clear, concise introduction to the GAE Datastore, as accessed through JDO/JPA. Thank you.</description>
		<content:encoded><![CDATA[<p>I value your clear, concise introduction to the GAE Datastore, as accessed through JDO/JPA. Thank you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/comment-page-1/#comment-9836</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Fri, 05 Jun 2009 14:04:33 +0000</pubDate>
		<guid isPermaLink="false">http://bolour.com/blog/?p=29#comment-9836</guid>
		<description>Thanks for the answer.</description>
		<content:encoded><![CDATA[<p>Thanks for the answer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Azad Bolour</title>
		<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/comment-page-1/#comment-9835</link>
		<dc:creator>Azad Bolour</dc:creator>
		<pubDate>Wed, 03 Jun 2009 16:02:49 +0000</pubDate>
		<guid isPermaLink="false">http://bolour.com/blog/?p=29#comment-9835</guid>
		<description>In answer to Dan: The limitation on transactions is specified in terms of entity groups, which are logical constructs, specified in the terms of the logical model of hierarchies. So the developer does not have to know the implementation details to understand this limitation and work around it. But most developers I know have a need to see a justification for such a drastic limitation, and that is where some of the implementation details help. The fact that data is distributed is not directly exposed at the API level, but it is not that far from the surface, at least for now.</description>
		<content:encoded><![CDATA[<p>In answer to Dan: The limitation on transactions is specified in terms of entity groups, which are logical constructs, specified in the terms of the logical model of hierarchies. So the developer does not have to know the implementation details to understand this limitation and work around it. But most developers I know have a need to see a justification for such a drastic limitation, and that is where some of the implementation details help. The fact that data is distributed is not directly exposed at the API level, but it is not that far from the surface, at least for now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/comment-page-1/#comment-9834</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Wed, 03 Jun 2009 04:16:04 +0000</pubDate>
		<guid isPermaLink="false">http://bolour.com/blog/?p=29#comment-9834</guid>
		<description>I wasn&#039;t clear in my prior comment.  What I meant was that some implementation details seemingly need to be understood by those who program against GAE.   An example of such a detail is the fact that &quot;transactions are limited to individual entity groups&quot;, which Azad points out.

Does the fact that an exception is raised mean that the developers has to understand that entity groups stay close together at all times?  Or can the abstraction hide that fact, and present a higher level reason why transactions are limited to individual entity groups, which can be gradually relaxed as GAE comes up with a better implementation.  I think it&#039;s trying to do the latter.</description>
		<content:encoded><![CDATA[<p>I wasn&#8217;t clear in my prior comment.  What I meant was that some implementation details seemingly need to be understood by those who program against GAE.   An example of such a detail is the fact that &#8220;transactions are limited to individual entity groups&#8221;, which Azad points out.</p>
<p>Does the fact that an exception is raised mean that the developers has to understand that entity groups stay close together at all times?  Or can the abstraction hide that fact, and present a higher level reason why transactions are limited to individual entity groups, which can be gradually relaxed as GAE comes up with a better implementation.  I think it&#8217;s trying to do the latter.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://bolour.com/blog/2009/06/the-google-app-engine-data-model/comment-page-1/#comment-9833</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Tue, 02 Jun 2009 19:58:13 +0000</pubDate>
		<guid isPermaLink="false">http://bolour.com/blog/?p=29#comment-9833</guid>
		<description>It&#039;d be too bad if Google designers and developers realize later on that the very same demands that led users of hierarchical databases to move to relational databases will lead GAE data stores to evolve in similar ways, leading the GAE customer&#039;s code to develop along the same paths, rewritten as it evolves to new data models.

Also I find it a little disturbing that implementation details (i.e. not dividing into separate servers). Should we be working at an abstraction level above that?  Is that something that&#039;s explicitly stated in the entity groups definition, or just an artifact that was mentioned during the GAE talks?</description>
		<content:encoded><![CDATA[<p>It&#8217;d be too bad if Google designers and developers realize later on that the very same demands that led users of hierarchical databases to move to relational databases will lead GAE data stores to evolve in similar ways, leading the GAE customer&#8217;s code to develop along the same paths, rewritten as it evolves to new data models.</p>
<p>Also I find it a little disturbing that implementation details (i.e. not dividing into separate servers). Should we be working at an abstraction level above that?  Is that something that&#8217;s explicitly stated in the entity groups definition, or just an artifact that was mentioned during the GAE talks?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

