<?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 for Frank Talk</title>
	<atom:link href="http://www.frankf.us/wp/?feed=comments-rss2" rel="self" type="application/rss+xml" />
	<link>http://www.frankf.us/wp</link>
	<description>Free advice and worth every penny</description>
	<lastBuildDate>Sun, 09 May 2010 22:02:13 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Comment on My EV Trike by Frank Talk&#187; Blog Archive &#187; My Electric Vehicle</title>
		<link>http://www.frankf.us/wp/?page_id=56&#038;cpage=1#comment-3015</link>
		<dc:creator>Frank Talk&#187; Blog Archive &#187; My Electric Vehicle</dc:creator>
		<pubDate>Sun, 09 May 2010 22:02:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.frankf.us/wp/?page_id=56#comment-3015</guid>
		<description>[...] I built my own.  It&#8217;s not even up to a Nova conversion in fact it&#8217;s a converted Adult Tricycle. But I [...]</description>
		<content:encoded><![CDATA[<p>[...] I built my own.  It&#8217;s not even up to a Nova conversion in fact it&#8217;s a converted Adult Tricycle. But I [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on I&#8217;m looking for sharding problems by Ben</title>
		<link>http://www.frankf.us/wp/?p=23&#038;cpage=1#comment-98</link>
		<dc:creator>Ben</dc:creator>
		<pubDate>Tue, 03 Mar 2009 23:31:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.frankf.us/wp/?p=23#comment-98</guid>
		<description>Hello -

In hindsight, the solution was simple, but it took us a while to figure out how to move our auto_increment PK tables into shards and still guarantee uniqueness of the PK ids across shards.

Also, since we (similarly) couldn&#039;t enforce foreign keys across shards, we had to write code to check references periodically.

More details (if you care) at http://oracle2mysql.wordpress.com/2007/08/23/scale-out-notes-on-sharding-unique-keys-foreign-keys/ .

Thanks!</description>
		<content:encoded><![CDATA[<p>Hello -</p>
<p>In hindsight, the solution was simple, but it took us a while to figure out how to move our auto_increment PK tables into shards and still guarantee uniqueness of the PK ids across shards.</p>
<p>Also, since we (similarly) couldn&#8217;t enforce foreign keys across shards, we had to write code to check references periodically.</p>
<p>More details (if you care) at <a href="http://oracle2mysql.wordpress.com/2007/08/23/scale-out-notes-on-sharding-unique-keys-foreign-keys/" rel="nofollow">http://oracle2mysql.wordpress.com/2007/08/23/scale-out-notes-on-sharding-unique-keys-foreign-keys/</a> .</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on BFT: Our case for 100% de-normalization. by Frank Flynn</title>
		<link>http://www.frankf.us/wp/?p=17&#038;cpage=1#comment-15</link>
		<dc:creator>Frank Flynn</dc:creator>
		<pubDate>Wed, 21 Jan 2009 23:22:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.frankf.us/wp/?p=17#comment-15</guid>
		<description>To answer Roland:

&lt;blockquote&gt;#1 what exactly is “XML tagging” in this context?
&lt;/blockquote&gt;

I mean taking the data and wrapping it in XML (also sorting, formatting, truncating as needed) before writing it to the BFT. If you took the data from the main DB and converted it directly to XML and never sorted or changed it besides converting to XML that might not be much processing but I&#039;ve found there&#039;s always more to it.  So do everything you can up front so on the page view there is very little processing to be done.

&lt;blockquote&gt;#2 What is the benefit of storing it in a database table? Have you tried storing it simply as files,
&lt;/blockquote&gt;

The benefits I use are: 
1 - I use replication and it&#039;s a very easy way to get a set of duplicate data on another machine.  True enough there are other ways to duplicate data for files and such but MySQL replication is very easy.

2 - There is essentially no limit to the ID name space (bigint is really big), with files can run into issues and have to use different directories - not the hugest problem but using a DB is very simple.

3 - MySQL, and SQL in general, have several built in features that are very handy for finding / limiting individual records which might be causing problems.  For example monitor the slow query log to show when you need to add more servers; or  find all the record ID&#039;s where the length of a field is &gt; 64k - this is a slow query that you run on a slave but it could show you that your app is creating web pages that are too big for most purposes.

4 - MySQL has a caches so assuming you have lots of RAM your popular data gets cached like memcache but if a requested record is not in the cache it&#039;s not a big deal to get it.

True enough there are other ways to do this - but I&#039;ve been very please with our results doing it this way.</description>
		<content:encoded><![CDATA[<p>To answer Roland:</p>
<blockquote><p>#1 what exactly is “XML tagging” in this context?
</p></blockquote>
<p>I mean taking the data and wrapping it in XML (also sorting, formatting, truncating as needed) before writing it to the BFT. If you took the data from the main DB and converted it directly to XML and never sorted or changed it besides converting to XML that might not be much processing but I&#8217;ve found there&#8217;s always more to it.  So do everything you can up front so on the page view there is very little processing to be done.</p>
<blockquote><p>#2 What is the benefit of storing it in a database table? Have you tried storing it simply as files,
</p></blockquote>
<p>The benefits I use are:<br />
1 &#8211; I use replication and it&#8217;s a very easy way to get a set of duplicate data on another machine.  True enough there are other ways to duplicate data for files and such but MySQL replication is very easy.</p>
<p>2 &#8211; There is essentially no limit to the ID name space (bigint is really big), with files can run into issues and have to use different directories &#8211; not the hugest problem but using a DB is very simple.</p>
<p>3 &#8211; MySQL, and SQL in general, have several built in features that are very handy for finding / limiting individual records which might be causing problems.  For example monitor the slow query log to show when you need to add more servers; or  find all the record ID&#8217;s where the length of a field is > 64k &#8211; this is a slow query that you run on a slave but it could show you that your app is creating web pages that are too big for most purposes.</p>
<p>4 &#8211; MySQL has a caches so assuming you have lots of RAM your popular data gets cached like memcache but if a requested record is not in the cache it&#8217;s not a big deal to get it.</p>
<p>True enough there are other ways to do this &#8211; but I&#8217;ve been very please with our results doing it this way.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on BFT: Our case for 100% de-normalization. by Bjorn</title>
		<link>http://www.frankf.us/wp/?p=17&#038;cpage=1#comment-13</link>
		<dc:creator>Bjorn</dc:creator>
		<pubDate>Wed, 21 Jan 2009 10:11:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.frankf.us/wp/?p=17#comment-13</guid>
		<description>Take a look at Amazon&#039;s persistent, scalable, redundant key-value store Dynamo. They use it for all sorts of stuff instead of a traditional RDBMS. Really interesting read:

http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html

A bunch of open source alternatives are emerging, such as scalaris:

http://code.google.com/p/scalaris/

I haven&#039;t tried it myself, but why don&#039;t you? :)</description>
		<content:encoded><![CDATA[<p>Take a look at Amazon&#8217;s persistent, scalable, redundant key-value store Dynamo. They use it for all sorts of stuff instead of a traditional RDBMS. Really interesting read:</p>
<p><a href="http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html" rel="nofollow">http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html</a></p>
<p>A bunch of open source alternatives are emerging, such as scalaris:</p>
<p><a href="http://code.google.com/p/scalaris/" rel="nofollow">http://code.google.com/p/scalaris/</a></p>
<p>I haven&#8217;t tried it myself, but why don&#8217;t you? <img src='http://www.frankf.us/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on BFT: Our case for 100% de-normalization. by Roland Bouman</title>
		<link>http://www.frankf.us/wp/?p=17&#038;cpage=1#comment-12</link>
		<dc:creator>Roland Bouman</dc:creator>
		<pubDate>Wed, 21 Jan 2009 08:23:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.frankf.us/wp/?p=17#comment-12</guid>
		<description>Hi! 

interesting post. What I am wondering about is this...

#1 what exactly is &quot;XML tagging&quot; in this context? 
#2 What is the benefit of storing it in a database table? Have you tried storing it simply as files, (perhaps with some additional directory structure in order to keep the number of files per dir small enough to get decent performance?)

Jut curious, I am currently considering to do something like this for an existing app.</description>
		<content:encoded><![CDATA[<p>Hi! </p>
<p>interesting post. What I am wondering about is this&#8230;</p>
<p>#1 what exactly is &#8220;XML tagging&#8221; in this context?<br />
#2 What is the benefit of storing it in a database table? Have you tried storing it simply as files, (perhaps with some additional directory structure in order to keep the number of files per dir small enough to get decent performance?)</p>
<p>Jut curious, I am currently considering to do something like this for an existing app.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
