<?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: Cargo Cultism</title>
	<atom:link href="http://pl.atyp.us/wordpress/?feed=rss2&#038;p=2368" rel="self" type="application/rss+xml" />
	<link>http://pl.atyp.us/wordpress/?p=2368</link>
	<description>Making the world better, one byte at a time.</description>
	<lastBuildDate>Sun, 05 Sep 2010 02:56:27 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jeff Darcy</title>
		<link>http://pl.atyp.us/wordpress/?p=2368&#038;cpage=1#comment-139287</link>
		<dc:creator>Jeff Darcy</dc:creator>
		<pubDate>Mon, 05 Oct 2009 20:29:24 +0000</pubDate>
		<guid isPermaLink="false">http://pl.atyp.us/wordpress/?p=2368#comment-139287</guid>
		<description>Most of the NoSQL chatter I see is about dropping both.  Neither actually requires dropping SQL, though.  Some parts of SQL clearly would not apply in such an environment.  Others would still be quite useful, if only because of their familiarity.  Still others would apply in more limited form.  For example:
&lt;ul&gt;
&lt;li&gt;Inapplicable: BEGIN/COMMIT/ROLLBACK TRANSACTION&lt;/li&gt;
&lt;li&gt;Still useful: SELECT including GROUP/ORDER/LIMIT, many aggregate functions, triggers&lt;/li&gt;
&lt;li&gt;Reduced scope: &quot;foreign&quot; key constraints (within a table) including delete cascades&lt;/li&gt;
&lt;/ul&gt;
Note that I&#039;ve said nothing about implementation difficulty or actual availability.  Even fairly simple SELECT syntax is hard to implement across a clustered (let alone distributed) store/database, and you could get yourself into a whole heap of trouble with delete cascades that aren&#039;t wrapped in transactions.  Ew.  Many of these features are so useful that it&#039;s worth trying, though, and therefore worth keeping SQL at least as a description language.  I think anything involving multiple tables is pretty much a lost cause because it&#039;s &lt;b&gt;really&lt;/b&gt; hard to keep those sorts of things from going exponential and that&#039;s fatal for the kind of high-scale environments where these data stores are used.  I know a hard problem when I see one, and I have all the respect in the world for the people tackling these problems, but I think full traditional-RDBMS functionality at that scale (and at reasonable cost) will remain out of reach for quite some time.  Even those who believe we can get there shouldn&#039;t ignore the question of which parts to jettison in the immediate here-and-now.</description>
		<content:encoded><![CDATA[<p>Most of the NoSQL chatter I see is about dropping both.  Neither actually requires dropping SQL, though.  Some parts of SQL clearly would not apply in such an environment.  Others would still be quite useful, if only because of their familiarity.  Still others would apply in more limited form.  For example:</p>
<ul>
<li>Inapplicable: BEGIN/COMMIT/ROLLBACK TRANSACTION</li>
<li>Still useful: SELECT including GROUP/ORDER/LIMIT, many aggregate functions, triggers</li>
<li>Reduced scope: &#8220;foreign&#8221; key constraints (within a table) including delete cascades</li>
</ul>
<p>Note that I&#8217;ve said nothing about implementation difficulty or actual availability.  Even fairly simple SELECT syntax is hard to implement across a clustered (let alone distributed) store/database, and you could get yourself into a whole heap of trouble with delete cascades that aren&#8217;t wrapped in transactions.  Ew.  Many of these features are so useful that it&#8217;s worth trying, though, and therefore worth keeping SQL at least as a description language.  I think anything involving multiple tables is pretty much a lost cause because it&#8217;s <b>really</b> hard to keep those sorts of things from going exponential and that&#8217;s fatal for the kind of high-scale environments where these data stores are used.  I know a hard problem when I see one, and I have all the respect in the world for the people tackling these problems, but I think full traditional-RDBMS functionality at that scale (and at reasonable cost) will remain out of reach for quite some time.  Even those who believe we can get there shouldn&#8217;t ignore the question of which parts to jettison in the immediate here-and-now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wes Felter</title>
		<link>http://pl.atyp.us/wordpress/?p=2368&#038;cpage=1#comment-139284</link>
		<dc:creator>Wes Felter</dc:creator>
		<pubDate>Mon, 05 Oct 2009 19:39:05 +0000</pubDate>
		<guid isPermaLink="false">http://pl.atyp.us/wordpress/?p=2368#comment-139284</guid>
		<description>Is NoSQL about dropping ACID or dropping joins? I thought it was the latter but I haven&#039;t been watching closely.</description>
		<content:encoded><![CDATA[<p>Is NoSQL about dropping ACID or dropping joins? I thought it was the latter but I haven&#8217;t been watching closely.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Cook</title>
		<link>http://pl.atyp.us/wordpress/?p=2368&#038;cpage=1#comment-139073</link>
		<dc:creator>John Cook</dc:creator>
		<pubDate>Sun, 04 Oct 2009 02:00:37 +0000</pubDate>
		<guid isPermaLink="false">http://pl.atyp.us/wordpress/?p=2368#comment-139073</guid>
		<description>Nice post. 

At one point folks thought if they had Aeron chairs just like the high-profile .com companies then they&#039;d be successful too.</description>
		<content:encoded><![CDATA[<p>Nice post. </p>
<p>At one point folks thought if they had Aeron chairs just like the high-profile .com companies then they&#8217;d be successful too.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
