<?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: An Introduction to Data Grids for Database Developers</title>
	<atom:link href="http://blackbeanbag.net/wp/2009/06/13/an-introduction-to-data-grids-for-database-developers/feed/" rel="self" type="application/rss+xml" />
	<link>http://blackbeanbag.net/wp/2009/06/13/an-introduction-to-data-grids-for-database-developers/</link>
	<description>Thoughts on software development and other stuff</description>
	<lastBuildDate>Sat, 20 Jul 2013 01:54:41 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=3.9.40</generator>
	<item>
		<title>By: Tom</title>
		<link>http://blackbeanbag.net/wp/2009/06/13/an-introduction-to-data-grids-for-database-developers/comment-page-1/#comment-4032</link>
		<dc:creator><![CDATA[Tom]]></dc:creator>
		<pubDate>Thu, 18 Jun 2009 03:02:37 +0000</pubDate>
		<guid isPermaLink="false">http://blackbeanbag.net/wp/?p=209#comment-4032</guid>
		<description><![CDATA[And if you use Oracle RAC, then if you lose a DB node, you still have others left for Coherence to asynchronously write to or what you call &quot;write behind&quot;.]]></description>
		<content:encoded><![CDATA[<p>And if you use Oracle RAC, then if you lose a DB node, you still have others left for Coherence to asynchronously write to or what you call &#8220;write behind&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick Peralta</title>
		<link>http://blackbeanbag.net/wp/2009/06/13/an-introduction-to-data-grids-for-database-developers/comment-page-1/#comment-4030</link>
		<dc:creator><![CDATA[Patrick Peralta]]></dc:creator>
		<pubDate>Tue, 16 Jun 2009 00:34:55 +0000</pubDate>
		<guid isPermaLink="false">http://blackbeanbag.net/wp/?p=209#comment-4030</guid>
		<description><![CDATA[Hi Steve,

&gt; With regards to robustness, you state that there is a backup of 
&gt; each entry in the cache. How is this maintained? Is durability 
&gt; when writing to Coherence the same as writing to a typical 
&gt; relational database? I.e. when my transaction synchronously 
&gt; commits, it is there regardless of subsequent failure? 
&gt; Or can you only loose x nodes (partition distribution), etc?

Writes to the cache are backed up synchronously to another node in the cluster.  Upon the loss of a node (or nodes) the backup copies will become primary copies, and these nodes will create their own backups.  Note that the backups for a node will be spread across the cluster; there won&#039;t be a single backup node for a node.

This document provides a good description of the data partitioning and goes into a bit more detail:

http://coherence.oracle.com/display/COH34UG/Partitioned+Cache+Service

&gt; Can you point to some resources on how the cache works? I.e. does it 
&gt; partition the datastore across the nodes? Does it cache via LRU on 
&gt; each node? When you write to the cache how to make the guarentee that 
&gt; each node sees a consistent copy? 

As the data is partitioned across nodes, each node will be responsible for persisting to the data store its share of data.  It also means that for a given key, only one node at a time is considered the Source of Truth.  This is why the entire cluster sees a consistent data set; everyone is going to the same node to read/write that value.

The eviction policy is configurable; by default it uses a hybrid LFU/LRU algorithm.

This document goes into more detail about database integration:
http://coherence.oracle.com/display/COH34UG/Read-Through%2C+Write-Through%2C+Write-Behind+and+Refresh-Ahead+Caching

Thanks for the comments!
-Patrick]]></description>
		<content:encoded><![CDATA[<p>Hi Steve,</p>
<p>> With regards to robustness, you state that there is a backup of<br />
> each entry in the cache. How is this maintained? Is durability<br />
> when writing to Coherence the same as writing to a typical<br />
> relational database? I.e. when my transaction synchronously<br />
> commits, it is there regardless of subsequent failure?<br />
> Or can you only loose x nodes (partition distribution), etc?</p>
<p>Writes to the cache are backed up synchronously to another node in the cluster.  Upon the loss of a node (or nodes) the backup copies will become primary copies, and these nodes will create their own backups.  Note that the backups for a node will be spread across the cluster; there won&#8217;t be a single backup node for a node.</p>
<p>This document provides a good description of the data partitioning and goes into a bit more detail:</p>
<p><a href="http://coherence.oracle.com/display/COH34UG/Partitioned+Cache+Service" rel="nofollow">http://coherence.oracle.com/display/COH34UG/Partitioned+Cache+Service</a></p>
<p>> Can you point to some resources on how the cache works? I.e. does it<br />
> partition the datastore across the nodes? Does it cache via LRU on<br />
> each node? When you write to the cache how to make the guarentee that<br />
> each node sees a consistent copy? </p>
<p>As the data is partitioned across nodes, each node will be responsible for persisting to the data store its share of data.  It also means that for a given key, only one node at a time is considered the Source of Truth.  This is why the entire cluster sees a consistent data set; everyone is going to the same node to read/write that value.</p>
<p>The eviction policy is configurable; by default it uses a hybrid LFU/LRU algorithm.</p>
<p>This document goes into more detail about database integration:<br />
<a href="http://coherence.oracle.com/display/COH34UG/Read-Through%2C+Write-Through%2C+Write-Behind+and+Refresh-Ahead+Caching" rel="nofollow">http://coherence.oracle.com/display/COH34UG/Read-Through%2C+Write-Through%2C+Write-Behind+and+Refresh-Ahead+Caching</a></p>
<p>Thanks for the comments!<br />
-Patrick</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://blackbeanbag.net/wp/2009/06/13/an-introduction-to-data-grids-for-database-developers/comment-page-1/#comment-4029</link>
		<dc:creator><![CDATA[Steve]]></dc:creator>
		<pubDate>Mon, 15 Jun 2009 14:10:26 +0000</pubDate>
		<guid isPermaLink="false">http://blackbeanbag.net/wp/?p=209#comment-4029</guid>
		<description><![CDATA[With regards to robustness, you state that there is a backup of each entry in the cache.  How is this maintained?  Is durability when writing to Coherence the same as writing to a typical relational database?  I.e. when my transaction synchronously commits, it is there regardless of subsequent failure?  Or can you only loose x nodes (partition distribution), etc?

Can you point to some resources on how the cache works?  I.e. does it partition the datastore across the nodes?  Does it cache via LRU on each node?  When you write to the cache how to make the guarentee that each node sees a consistent copy?  

Thanks so much-
Steve]]></description>
		<content:encoded><![CDATA[<p>With regards to robustness, you state that there is a backup of each entry in the cache.  How is this maintained?  Is durability when writing to Coherence the same as writing to a typical relational database?  I.e. when my transaction synchronously commits, it is there regardless of subsequent failure?  Or can you only loose x nodes (partition distribution), etc?</p>
<p>Can you point to some resources on how the cache works?  I.e. does it partition the datastore across the nodes?  Does it cache via LRU on each node?  When you write to the cache how to make the guarentee that each node sees a consistent copy?  </p>
<p>Thanks so much-<br />
Steve</p>
]]></content:encoded>
	</item>
</channel>
</rss>
