<?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: On Relational Databases and Column-Based Storage</title>
	<atom:link href="http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/</link>
	<description>Delivered Intelligence</description>
	<lastBuildDate>Wed, 17 Mar 2010 13:47:41 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Stewart Bryson</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3728</link>
		<dc:creator>Stewart Bryson</dc:creator>
		<pubDate>Thu, 27 Dec 2007 18:07:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3728</guid>
		<description>Mark:
Concerning you comment: &quot;...if all the data for a particular column was placed next to each other on disk, rather than spread over many blocks as part of whole rows of (unrelated) data...&quot;: in todays database environments where most data is actually stored in SANS using RAID 5, the concept of contiguous space is really meaningless. The abundance of RAID renders antiquated processes like table rebuilds as neglibible for the same reason: data is never going to be contiguous anyway.

Granted, I don&#039;t understand the inner-workings of the column-based databases, but if they rely on the mere fact that data is stored together, then I am doubtful that the solution would really work all that well. The Oracle functionality listed by many of the posters here--bitmaps indexes especially--actually allow the database to retrieve the row quickly no matter where or how it&#039;s stored, and that is the paradigm that seems most important.</description>
		<content:encoded><![CDATA[<p>Mark:<br />
Concerning you comment: &#8220;&#8230;if all the data for a particular column was placed next to each other on disk, rather than spread over many blocks as part of whole rows of (unrelated) data&#8230;&#8221;: in todays database environments where most data is actually stored in SANS using RAID 5, the concept of contiguous space is really meaningless. The abundance of RAID renders antiquated processes like table rebuilds as neglibible for the same reason: data is never going to be contiguous anyway.</p>
<p>Granted, I don&#8217;t understand the inner-workings of the column-based databases, but if they rely on the mere fact that data is stored together, then I am doubtful that the solution would really work all that well. The Oracle functionality listed by many of the posters here&#8211;bitmaps indexes especially&#8211;actually allow the database to retrieve the row quickly no matter where or how it&#8217;s stored, and that is the paradigm that seems most important.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff Madsen</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3731</link>
		<dc:creator>Jeff Madsen</dc:creator>
		<pubDate>Wed, 19 Dec 2007 15:51:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3731</guid>
		<description>We&#039;re looking at SuperSTAR from Space-Time Research. Early indications are that it&#039;s a very good way of doing OLAP-type stuff at the detail level with a lot of data.</description>
		<content:encoded><![CDATA[<p>We&#8217;re looking at SuperSTAR from Space-Time Research. Early indications are that it&#8217;s a very good way of doing OLAP-type stuff at the detail level with a lot of data.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ileana Somesan</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3722</link>
		<dc:creator>Ileana Somesan</dc:creator>
		<pubDate>Sat, 17 Nov 2007 17:01:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3722</guid>
		<description>Hi all,

is the column-orientation-paradigm another name for vertical partitioning in traditional RDBMS?</description>
		<content:encoded><![CDATA[<p>Hi all,</p>
<p>is the column-orientation-paradigm another name for vertical partitioning in traditional RDBMS?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pythian Group Blog &#187; Log Buffer #62: a Carnival of the Vanities for DBAs</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3723</link>
		<dc:creator>Pythian Group Blog &#187; Log Buffer #62: a Carnival of the Vanities for DBAs</dc:creator>
		<pubDate>Fri, 14 Sep 2007 17:08:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3723</guid>
		<description>[...] Rittman provided a quick explanation of the technological background: columnar data [...]</description>
		<content:encoded><![CDATA[<p>[...] Rittman provided a quick explanation of the technological background: columnar data [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marco Gralike</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3724</link>
		<dc:creator>Marco Gralike</dc:creator>
		<pubDate>Mon, 10 Sep 2007 23:24:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3724</guid>
		<description>Apparently I am still attracted in the same stuff (reading this). I once opted IOT in 2005 ;-) Comments posted now sounds like a deja vu. It only fills me with sadness to see how much has been lost after your website problems. Shame that all those good discussions are lost.</description>
		<content:encoded><![CDATA[<p>Apparently I am still attracted in the same stuff (reading this). I once opted IOT in 2005 ;-) Comments posted now sounds like a deja vu. It only fills me with sadness to see how much has been lost after your website problems. Shame that all those good discussions are lost.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Rittman</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3725</link>
		<dc:creator>Mark Rittman</dc:creator>
		<pubDate>Mon, 10 Sep 2007 20:12:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3725</guid>
		<description>Hi Tim, Jeff, Pete,

It&#039;s certainly an interesting subject. Thinking about it, if all the data for a particular column was placed next to each other on disk, rather than spread over many blocks as part of whole rows of (unrelated) data, then logically it should be faster to retrieve. I&#039;m conscious though that other things come into play, IOTs or bitmap indexes can do much the same thing, and there&#039;s all other factors involved including how scalable the servers are, how much duplication of data has to go on if loading into a column-based database, and so on.

That said though, it&#039;s definately interesting and something I wouldn&#039;t mind raising (informally, if appropriate) at the upcoming BIWA conference, where a lot of the Server Tech PM guys will be attending. Watch this space, as they say.</description>
		<content:encoded><![CDATA[<p>Hi Tim, Jeff, Pete,</p>
<p>It&#8217;s certainly an interesting subject. Thinking about it, if all the data for a particular column was placed next to each other on disk, rather than spread over many blocks as part of whole rows of (unrelated) data, then logically it should be faster to retrieve. I&#8217;m conscious though that other things come into play, IOTs or bitmap indexes can do much the same thing, and there&#8217;s all other factors involved including how scalable the servers are, how much duplication of data has to go on if loading into a column-based database, and so on.</p>
<p>That said though, it&#8217;s definately interesting and something I wouldn&#8217;t mind raising (informally, if appropriate) at the upcoming BIWA conference, where a lot of the Server Tech PM guys will be attending. Watch this space, as they say.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Scott</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3726</link>
		<dc:creator>Peter Scott</dc:creator>
		<pubDate>Mon, 10 Sep 2007 13:57:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3726</guid>
		<description>I was thinking along the lines of Jeff&#039;s response - how about going for a set of two column IOT tables, the attribute and the surrogate key of the item. We can use one table per attribute; so, the brown haired, group G people are in the set that comes from the join of the two tables on the surrogate keys.

Of course I have no idea how this would work with real data and the need to update attributes when people move house or dye their hair, or how it would work with non-key searches such the people with &#039;I&#039; as the second letter in their name.

It could be a &quot;playtime&quot; thing to look at</description>
		<content:encoded><![CDATA[<p>I was thinking along the lines of Jeff&#8217;s response &#8211; how about going for a set of two column IOT tables, the attribute and the surrogate key of the item. We can use one table per attribute; so, the brown haired, group G people are in the set that comes from the join of the two tables on the surrogate keys.</p>
<p>Of course I have no idea how this would work with real data and the need to update attributes when people move house or dye their hair, or how it would work with non-key searches such the people with &#8216;I&#8217; as the second letter in their name.</p>
<p>It could be a &#8220;playtime&#8221; thing to look at</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim Berry</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3727</link>
		<dc:creator>Tim Berry</dc:creator>
		<pubDate>Mon, 10 Sep 2007 12:38:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3727</guid>
		<description>I would be keen on discovering how column based storage may provide drill down functionalility as the current offering from oracle suits both purposes. We can currently configure the database for fast retrieval using a variety of MI/ aggregation solutions then drill down through standard row based indexes or OLAP heirarchies to the granular set that defined the aggregate.

It is difficult to see how storing in (potentially as I don&#039;t know the column database design) an aggregate fashion that you could drill down further and back again!</description>
		<content:encoded><![CDATA[<p>I would be keen on discovering how column based storage may provide drill down functionalility as the current offering from oracle suits both purposes. We can currently configure the database for fast retrieval using a variety of MI/ aggregation solutions then drill down through standard row based indexes or OLAP heirarchies to the granular set that defined the aggregate.</p>
<p>It is difficult to see how storing in (potentially as I don&#8217;t know the column database design) an aggregate fashion that you could drill down further and back again!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff Moss</title>
		<link>http://www.rittmanmead.com/2007/09/09/on-relational-databases-and-column-based-storage/comment-page-1/#comment-3730</link>
		<dc:creator>Jeff Moss</dc:creator>
		<pubDate>Mon, 10 Sep 2007 11:02:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.rittmanmead.com/wp2/2007/09/09/on-relational-databases-and-column-based-storage/#comment-3730</guid>
		<description>Colocation of data is possible, to a certain degree within an Oracle database (and probably other RDBMS too).

IOTs or manual ORDER BY approaches can achieve this, although they are limited to a specific column or set of columns to colocate by.

Colocation, as I&#039;ve mentioned once or twice on my blog, is useful in enhancing the degree of compression achieved.

Bitmap and Bitmap Join Indexes can provide orders of magnitude improvement on column based queries like &quot;Brown Hair&quot; and &quot;Socio Economic Group G&quot;.

It&#039;s funny, I was going through my blog aggregator and read the post by Michael Stonebraker before yours and I thought to myself...lots of &quot;marketing speak there&quot; but no actual substance or, dare I say it, benchmarks...then I began to think, I wonder who he works for...then I read your article.

I&#039;m not saying there isn&#039;t a market for the column based approach but it does seem like a niche thing to my mind...as you say, it would be nice to do some benchmarking and testing of it&#039;s approach in comparison to Oracle (or other RDBMS).

I don&#039;t particularly regard Oracle as a &quot;one size fits all&quot; - I regard it as a multi talented offering, which, with the appropriate people using it (to take advantage of the most appropriate features), can achieve excellent results in many disciplines...that&#039;s something I did agree with the Stonebraker article on...it&#039;s the people that make the difference, no matter how clever the product.</description>
		<content:encoded><![CDATA[<p>Colocation of data is possible, to a certain degree within an Oracle database (and probably other RDBMS too).</p>
<p>IOTs or manual ORDER BY approaches can achieve this, although they are limited to a specific column or set of columns to colocate by.</p>
<p>Colocation, as I&#8217;ve mentioned once or twice on my blog, is useful in enhancing the degree of compression achieved.</p>
<p>Bitmap and Bitmap Join Indexes can provide orders of magnitude improvement on column based queries like &#8220;Brown Hair&#8221; and &#8220;Socio Economic Group G&#8221;.</p>
<p>It&#8217;s funny, I was going through my blog aggregator and read the post by Michael Stonebraker before yours and I thought to myself&#8230;lots of &#8220;marketing speak there&#8221; but no actual substance or, dare I say it, benchmarks&#8230;then I began to think, I wonder who he works for&#8230;then I read your article.</p>
<p>I&#8217;m not saying there isn&#8217;t a market for the column based approach but it does seem like a niche thing to my mind&#8230;as you say, it would be nice to do some benchmarking and testing of it&#8217;s approach in comparison to Oracle (or other RDBMS).</p>
<p>I don&#8217;t particularly regard Oracle as a &#8220;one size fits all&#8221; &#8211; I regard it as a multi talented offering, which, with the appropriate people using it (to take advantage of the most appropriate features), can achieve excellent results in many disciplines&#8230;that&#8217;s something I did agree with the Stonebraker article on&#8230;it&#8217;s the people that make the difference, no matter how clever the product.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
