<?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"
	>
<channel>
	<title>Comments on: Mike Stonebraker calls for the complete destruction of the old DBMS order</title>
	<atom:link href="http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/</link>
	<description>Choices in data management and analysis</description>
	<pubDate>Sat, 17 May 2008 01:11:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
		<item>
		<title>By: Curt Monash</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-77037</link>
		<dc:creator>Curt Monash</dc:creator>
		<pubDate>Sat, 08 Mar 2008 10:04:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-77037</guid>
		<description>Dave,

The H-Store claim is that they get an order of magnitude or whatever single-processor performance advantage over disk-based systems, even for database sizes that disk-based systems can put entirely in cache. (Indeed, the starting number is more like 15X, but that's the really rose-colored view.) That's supposed to make up for any parallelization awkwardness.

The same team did C-Store/Vertica, and they followed a similar approach. I'm not aware of Vertica having the same level of interprocessor data movement (or, better yet, data movement prevention) sophistication as some of its competitors. But based on their sales figures, it seems they're winning a lot of POCs even so.

Best,

CAM</description>
		<content:encoded><![CDATA[<p>Dave,</p>
<p>The H-Store claim is that they get an order of magnitude or whatever single-processor performance advantage over disk-based systems, even for database sizes that disk-based systems can put entirely in cache. (Indeed, the starting number is more like 15X, but that&#8217;s the really rose-colored view.) That&#8217;s supposed to make up for any parallelization awkwardness.</p>
<p>The same team did C-Store/Vertica, and they followed a similar approach. I&#8217;m not aware of Vertica having the same level of interprocessor data movement (or, better yet, data movement prevention) sophistication as some of its competitors. But based on their sales figures, it seems they&#8217;re winning a lot of POCs even so.</p>
<p>Best,</p>
<p>CAM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Gudeman</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76995</link>
		<dc:creator>Dave Gudeman</dc:creator>
		<pubDate>Sat, 08 Mar 2008 02:02:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76995</guid>
		<description>Good answers, Daniel. I guess we both agree that we'll have to see.

I'd like to expand my point about idle processors. Basically, you can always make a database application faster by throwing hardware at it. For many applications, the big modern database products don't scale very well with multiple machines, so typically you have to buy faster computers, which is expensive because price goes up much faster than computer speed. That is, to get a box that's twice as fast, you pay lots more than twice as much. What H-Store is trying to take advantage of is that buying twice as many computers of the same speed costs exactly twice as much (less if you get bulk discounts :-) ). So it's less expensive to have a database product that scales and buy several cheap computers to run it on than to buy one that doesn't scale and buy big iron.

However, if you have idle processors, that changes the equation. If your processors are idle half the time then you have to buy four computers, not just two. Suddenly the equation doesn't look quite so good for multiple computers. At that rate, you are better off going with a computer that is twice as fast, so long as it is less than four times as expensive.</description>
		<content:encoded><![CDATA[<p>Good answers, Daniel. I guess we both agree that we&#8217;ll have to see.</p>
<p>I&#8217;d like to expand my point about idle processors. Basically, you can always make a database application faster by throwing hardware at it. For many applications, the big modern database products don&#8217;t scale very well with multiple machines, so typically you have to buy faster computers, which is expensive because price goes up much faster than computer speed. That is, to get a box that&#8217;s twice as fast, you pay lots more than twice as much. What H-Store is trying to take advantage of is that buying twice as many computers of the same speed costs exactly twice as much (less if you get bulk discounts <img src='http://www.dbms2.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ). So it&#8217;s less expensive to have a database product that scales and buy several cheap computers to run it on than to buy one that doesn&#8217;t scale and buy big iron.</p>
<p>However, if you have idle processors, that changes the equation. If your processors are idle half the time then you have to buy four computers, not just two. Suddenly the equation doesn&#8217;t look quite so good for multiple computers. At that rate, you are better off going with a computer that is twice as fast, so long as it is less than four times as expensive.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curt Monash</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76984</link>
		<dc:creator>Curt Monash</dc:creator>
		<pubDate>Fri, 07 Mar 2008 22:24:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76984</guid>
		<description>Dan,

Thanks for your comments in the first two paragraphs of 3)!

I'm glad they're working on better synchronization; despite quite a bit of time talking with them I never got to exactly that point.

Where you confused me is where you seemed to be saying that a stored procedure has to have all of the following properties:

A.  No application logic.
B.  Single ACID transaction.
C.  Coarse-grained and doing a lot of work.

While that's what I read, it surely can't be exactly what you meant. ;)

Best,

CAM</description>
		<content:encoded><![CDATA[<p>Dan,</p>
<p>Thanks for your comments in the first two paragraphs of 3)!</p>
<p>I&#8217;m glad they&#8217;re working on better synchronization; despite quite a bit of time talking with them I never got to exactly that point.</p>
<p>Where you confused me is where you seemed to be saying that a stored procedure has to have all of the following properties:</p>
<p>A.  No application logic.<br />
B.  Single ACID transaction.<br />
C.  Coarse-grained and doing a lot of work.</p>
<p>While that&#8217;s what I read, it surely can&#8217;t be exactly what you meant. <img src='http://www.dbms2.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Best,</p>
<p>CAM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Weinreb</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76878</link>
		<dc:creator>Daniel Weinreb</dc:creator>
		<pubDate>Fri, 07 Mar 2008 11:22:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-76878</guid>
		<description>In reply to Dave Gudeman:  Your comments are very cogent.  Here's my best take on what the answers would be if you put this to the H-store guys.  (I am not one of them, so these are just my own best understanding.)

1. Idle processors: Yes, I think that's true. I'm not sure it's a problem. The real measure of a system is whether it gets the latency and throughput that you want. Saying that idle processor are a drawback is like saying that not using the whole disk is a drawback. So what if it leaves processors idle? Processors are cheap.  Scaling is what matters.  (You may or may not buy this point...)

2. Moving data: Yes, that's right.  The paper calls this "general transactions": the ones where the different processors need to interact during the execution of commands. It admits that these won't work well. The hope is that the great majority of the commands whose speed is critical can be done as single-node or one-shot transactions (see paper).  The degree to which this will work depends a lot on your schema and your queries.  In some cases, it's very easy to make this work.  For example, in the database of one prominent company I know, there are only two kinds of data: data that is specific to one user account, and a small amount of slow-changing configuration data.  The former can be partitioned trivially, and the latter just gets replicated everywhere. Now all transactions can run on a single node. In other applications, it's much harder to make this work.  We won't know until and unless H-store gets productized and applied to a wide variety of applications.  This is certainly a potential drawback of the H-store approach.

3. Synchronization: Yes, you're right.  H-store has a synchronization mechanism.  The one in the paper depends on guaranteed hard maximum realtime limits on network transmission, which is unfortunately not a condition obtainable in real-world circumstances.  However, the authors of the paper are working on improving this (private communication).  Assuming they do, the claim is that the overhead will be amortized over a relatively large amount of actual work per command, so that its percentage of overhead will be acceptably low.  Also, a single-node read transaction can all happen on one processor so it doesn't run into this problem, and probably the hope is that those will be relatively common.

What appears to be the big issue is that you need, as you say, to do program re-writing. You have to arrange things so that your commands to H-store are of high enough granularity (lots of actual work per command).  Furthermore, a single command always performs one ACID transaction. So you can't interleave application logic with transaction execution.  Some applications will be easy to rewrite this way and some will be hard.  Again, they'll need more experience to see how this works out.

About "not having any persistent store", please read my earlier post, which I feel takes care of this issue.

About doing 5-way joins: well, it'll also depend a lot on the application.  If the five-way joins are on five tables that are generally used together, they can be co-located on single hosts, and ther's nothing to stop H-store from acquiring a more sophisticated query optimizer down the line if it turns out that it's needed more often than the paper says to expect.  So I don't think this is an inherent problem with the H-store concept.

On the whole, I agree that only time will tell, and it all depends on the specifics of the particular application and database structure.</description>
		<content:encoded><![CDATA[<p>In reply to Dave Gudeman:  Your comments are very cogent.  Here&#8217;s my best take on what the answers would be if you put this to the H-store guys.  (I am not one of them, so these are just my own best understanding.)</p>
<p>1. Idle processors: Yes, I think that&#8217;s true. I&#8217;m not sure it&#8217;s a problem. The real measure of a system is whether it gets the latency and throughput that you want. Saying that idle processor are a drawback is like saying that not using the whole disk is a drawback. So what if it leaves processors idle? Processors are cheap.  Scaling is what matters.  (You may or may not buy this point&#8230;)</p>
<p>2. Moving data: Yes, that&#8217;s right.  The paper calls this &#8220;general transactions&#8221;: the ones where the different processors need to interact during the execution of commands. It admits that these won&#8217;t work well. The hope is that the great majority of the commands whose speed is critical can be done as single-node or one-shot transactions (see paper).  The degree to which this will work depends a lot on your schema and your queries.  In some cases, it&#8217;s very easy to make this work.  For example, in the database of one prominent company I know, there are only two kinds of data: data that is specific to one user account, and a small amount of slow-changing configuration data.  The former can be partitioned trivially, and the latter just gets replicated everywhere. Now all transactions can run on a single node. In other applications, it&#8217;s much harder to make this work.  We won&#8217;t know until and unless H-store gets productized and applied to a wide variety of applications.  This is certainly a potential drawback of the H-store approach.</p>
<p>3. Synchronization: Yes, you&#8217;re right.  H-store has a synchronization mechanism.  The one in the paper depends on guaranteed hard maximum realtime limits on network transmission, which is unfortunately not a condition obtainable in real-world circumstances.  However, the authors of the paper are working on improving this (private communication).  Assuming they do, the claim is that the overhead will be amortized over a relatively large amount of actual work per command, so that its percentage of overhead will be acceptably low.  Also, a single-node read transaction can all happen on one processor so it doesn&#8217;t run into this problem, and probably the hope is that those will be relatively common.</p>
<p>What appears to be the big issue is that you need, as you say, to do program re-writing. You have to arrange things so that your commands to H-store are of high enough granularity (lots of actual work per command).  Furthermore, a single command always performs one ACID transaction. So you can&#8217;t interleave application logic with transaction execution.  Some applications will be easy to rewrite this way and some will be hard.  Again, they&#8217;ll need more experience to see how this works out.</p>
<p>About &#8220;not having any persistent store&#8221;, please read my earlier post, which I feel takes care of this issue.</p>
<p>About doing 5-way joins: well, it&#8217;ll also depend a lot on the application.  If the five-way joins are on five tables that are generally used together, they can be co-located on single hosts, and ther&#8217;s nothing to stop H-store from acquiring a more sophisticated query optimizer down the line if it turns out that it&#8217;s needed more often than the paper says to expect.  So I don&#8217;t think this is an inherent problem with the H-store concept.</p>
<p>On the whole, I agree that only time will tell, and it all depends on the specifics of the particular application and database structure.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Gudeman</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74748</link>
		<dc:creator>Dave Gudeman</dc:creator>
		<pubDate>Tue, 26 Feb 2008 22:54:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74748</guid>
		<description>Well, I've finally finished reading the paper. I guess I have to be reasonably polite since I've revealed my company affiliations :-) but I have to say that I'm skeptical.

As I said before, you always have to deal with b-tree consistency and other problems around simultaneous access to shared data. H-Store doesn't avoid the problem; H-store simply replaces locking with partitioning (or I should say that H-store uses spatial partitioning as opposed to ADS which uses what might be called temporal partitioning). But spatial partitioning is not a magical solution; it has its own overheads:

1. Idle processors: each processor can only work on a particular subset of data, so if there is no work to do on that subset of data then the processor is idle. 
2. Moving data: any work that requires sharing data among multiple processors requires moving data around.
3. Synchronization: any work that requires distributed commits has the overhead of synchronizing the distribute commit.

The claim of this paper is essentially that for "OLTP applications" 2 and 3 are either not significant portions of the work or can be largely eliminated by program re-writing. This claim remains to be proven and I rather doubt from my own experience that the claim is correct. The paper doesn't address 1 at all.

Then there is the issue of having no persistent store. Other commenters have pointed out the problems with this.

My experience is that applications are never what the model says they should be. There was a comment in the paper to the effect that OLTP applications don't do 5-way joins. I remember when we used to think that. We also thought that performance critical applications would use prepared statements and wouldn't update indexed columns and would use tree-like schemas and other things. I fondly remember those days of optimistic naivete :-).

So, while I grant that Stonebreaker knows much more about databases that I do, I'm skeptical as to whether this will work. ANTs also is able to get 80X performance over commercial databases for certain kinds of work loads. But when we do real applications, the actual benefit is more like 3X to 10X.</description>
		<content:encoded><![CDATA[<p>Well, I&#8217;ve finally finished reading the paper. I guess I have to be reasonably polite since I&#8217;ve revealed my company affiliations <img src='http://www.dbms2.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> but I have to say that I&#8217;m skeptical.</p>
<p>As I said before, you always have to deal with b-tree consistency and other problems around simultaneous access to shared data. H-Store doesn&#8217;t avoid the problem; H-store simply replaces locking with partitioning (or I should say that H-store uses spatial partitioning as opposed to ADS which uses what might be called temporal partitioning). But spatial partitioning is not a magical solution; it has its own overheads:</p>
<p>1. Idle processors: each processor can only work on a particular subset of data, so if there is no work to do on that subset of data then the processor is idle.<br />
2. Moving data: any work that requires sharing data among multiple processors requires moving data around.<br />
3. Synchronization: any work that requires distributed commits has the overhead of synchronizing the distribute commit.</p>
<p>The claim of this paper is essentially that for &#8220;OLTP applications&#8221; 2 and 3 are either not significant portions of the work or can be largely eliminated by program re-writing. This claim remains to be proven and I rather doubt from my own experience that the claim is correct. The paper doesn&#8217;t address 1 at all.</p>
<p>Then there is the issue of having no persistent store. Other commenters have pointed out the problems with this.</p>
<p>My experience is that applications are never what the model says they should be. There was a comment in the paper to the effect that OLTP applications don&#8217;t do 5-way joins. I remember when we used to think that. We also thought that performance critical applications would use prepared statements and wouldn&#8217;t update indexed columns and would use tree-like schemas and other things. I fondly remember those days of optimistic naivete :-).</p>
<p>So, while I grant that Stonebreaker knows much more about databases that I do, I&#8217;m skeptical as to whether this will work. ANTs also is able to get 80X performance over commercial databases for certain kinds of work loads. But when we do real applications, the actual benefit is more like 3X to 10X.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curt Monash</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74602</link>
		<dc:creator>Curt Monash</dc:creator>
		<pubDate>Tue, 26 Feb 2008 01:05:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74602</guid>
		<description>Jeremy,

1.  ACID isn't being taken away.
2.  See my later post on ObjectGrid vs. H-Store. You're not all wrong.
3.  In essence, this is an attempt to roll a lot of other technologies into one, which can lead to savings in all areas of TCO (programming, admin, hardware/power, etc.)

CAM</description>
		<content:encoded><![CDATA[<p>Jeremy,</p>
<p>1.  ACID isn&#8217;t being taken away.<br />
2.  See my later post on ObjectGrid vs. H-Store. You&#8217;re not all wrong.<br />
3.  In essence, this is an attempt to roll a lot of other technologies into one, which can lead to savings in all areas of TCO (programming, admin, hardware/power, etc.)</p>
<p>CAM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy Huppatz</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74598</link>
		<dc:creator>Jeremy Huppatz</dc:creator>
		<pubDate>Tue, 26 Feb 2008 00:36:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74598</guid>
		<description>It sounds like the assumption is that the data processing engine is basically going to just throw the data changes on a message bus or forward the data to a data warehouse staging area for upload.

So here's a question... how will this "H-Store" view of the world be different from the raft of transaction coordinating middleware that's out there already?  Most MQ's/TC's are tuned for throughput rather than persistence, support 3/4GL's instead of SQL and have little or no persistent storage.  The only thing Mike &#38;c are taking away is the ACID properties of the transactions?  

I guess what I'm saying is - hasn't this already been invented and stabilized as a discrete set of products for 10 years or more already?

Regards


Jeremy Huppatz
EDS Australia
Data Engineering Capability</description>
		<content:encoded><![CDATA[<p>It sounds like the assumption is that the data processing engine is basically going to just throw the data changes on a message bus or forward the data to a data warehouse staging area for upload.</p>
<p>So here&#8217;s a question&#8230; how will this &#8220;H-Store&#8221; view of the world be different from the raft of transaction coordinating middleware that&#8217;s out there already?  Most MQ&#8217;s/TC&#8217;s are tuned for throughput rather than persistence, support 3/4GL&#8217;s instead of SQL and have little or no persistent storage.  The only thing Mike &amp;c are taking away is the ACID properties of the transactions?  </p>
<p>I guess what I&#8217;m saying is - hasn&#8217;t this already been invented and stabilized as a discrete set of products for 10 years or more already?</p>
<p>Regards</p>
<p>Jeremy Huppatz<br />
EDS Australia<br />
Data Engineering Capability</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curt Monash</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74385</link>
		<dc:creator>Curt Monash</dc:creator>
		<pubDate>Sun, 24 Feb 2008 23:01:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74385</guid>
		<description>Damien,

I agree, as per http://blogs.zdnet.com/BTL/?p=8055

However, the H-Store guys do have one interesting rejoinder.  Namely, assume that all the data is being streamed to a data warehouse (different software, probably WITH disk of its own).  Then that argument is weakened a lot.

Even so -- I think fairly frequent checkpointing is the way to go.  Leaving it out doesn't save enough to make up for the doubt caused by discussions like this. ;)

CAM</description>
		<content:encoded><![CDATA[<p>Damien,</p>
<p>I agree, as per <a href="http://blogs.zdnet.com/BTL/?p=8055" rel="nofollow">http://blogs.zdnet.com/BTL/?p=8055</a></p>
<p>However, the H-Store guys do have one interesting rejoinder.  Namely, assume that all the data is being streamed to a data warehouse (different software, probably WITH disk of its own).  Then that argument is weakened a lot.</p>
<p>Even so &#8212; I think fairly frequent checkpointing is the way to go.  Leaving it out doesn&#8217;t save enough to make up for the doubt caused by discussions like this. <img src='http://www.dbms2.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>CAM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Damien Katz</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74324</link>
		<dc:creator>Damien Katz</dc:creator>
		<pubDate>Sun, 24 Feb 2008 16:36:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74324</guid>
		<description>The thing about *not* persisting to disk is that it only works for an isolated failure model, where failures of machines will be isolated to those machine. That's usually the case for hardware and power failure, but necessarily not software failure.

If you are running all the same code on all the same OS, then your distributed system is still vulnerable to security failures (dos/intrusion/virus/worms), and time and data-induced bugs. To address these failure scenarios properly you would need an ecosystem of machines running different OS's and independent implementations of the same software. Who can afford that, just to avoid writing to disk?</description>
		<content:encoded><![CDATA[<p>The thing about *not* persisting to disk is that it only works for an isolated failure model, where failures of machines will be isolated to those machine. That&#8217;s usually the case for hardware and power failure, but necessarily not software failure.</p>
<p>If you are running all the same code on all the same OS, then your distributed system is still vulnerable to security failures (dos/intrusion/virus/worms), and time and data-induced bugs. To address these failure scenarios properly you would need an ecosystem of machines running different OS&#8217;s and independent implementations of the same software. Who can afford that, just to avoid writing to disk?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Itamar Haber</title>
		<link>http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74137</link>
		<dc:creator>Itamar Haber</dc:creator>
		<pubDate>Sat, 23 Feb 2008 20:53:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.dbms2.com/2008/02/18/mike-stonebraker-calls-for-the-complete-destruction-of-the-old-dbms-order/#comment-74137</guid>
		<description>Curt,

Geographically-distributed RAM replicas are swell - we use them all the time. However, IMHO, they can only for promise unrelenting availability of the data. My point is that these ensure data resiliency, not its persistence. Recovery from disk in both cases is taken for granted, the only differentiator being is the data's staleness. A backup is only updated until the point in time in which it was taken, while persistence usually provides fresher data.

IH</description>
		<content:encoded><![CDATA[<p>Curt,</p>
<p>Geographically-distributed RAM replicas are swell - we use them all the time. However, IMHO, they can only for promise unrelenting availability of the data. My point is that these ensure data resiliency, not its persistence. Recovery from disk in both cases is taken for granted, the only differentiator being is the data&#8217;s staleness. A backup is only updated until the point in time in which it was taken, while persistence usually provides fresher data.</p>
<p>IH</p>
]]></content:encoded>
	</item>
</channel>
</rss>
