<?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: Redis Benchmarks on FusionIO (Round 1)</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/</link>
	<description>Percona&#039;s MySQL &#38; InnoDB performance and scalability blog</description>
	<lastBuildDate>Sat, 11 Feb 2012 16:45:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-696169</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Tue, 15 Dec 2009 01:26:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-696169</guid>
		<description>Antirez,

Right. As soon as you get disk based storage for Redis SSDs will make a lot of difference.</description>
		<content:encoded><![CDATA[<p>Antirez,</p>
<p>Right. As soon as you get disk based storage for Redis SSDs will make a lot of difference.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: antirez</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-695991</link>
		<dc:creator>antirez</dc:creator>
		<pubDate>Mon, 14 Dec 2009 17:14:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-695991</guid>
		<description>Hello,

I think that SSD will do a difference in Redis once we&#039;ll have Virtual Memory implemented. Redis will random-access the swap file likely.</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p>I think that SSD will do a difference in Redis once we&#8217;ll have Virtual Memory implemented. Redis will random-access the swap file likely.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-695981</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Mon, 14 Dec 2009 16:40:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-695981</guid>
		<description>Ryan,

This is interesting as it well highlights common misconception about what SSDs are fast for.   SSDs (and I unclude FusionIO here) are fast for random reads and writes.   Sequential Reads single Intel SSD will have speed similar to the good hard drive (at some extent due to SATA interface limits) and FusionIO similar to the good RAID with few hard drives.     Writes are more expensive for SSDs so for Sequential Writes standard hard drives are often the winners.    It is the most interesting when it comes for small sequential writes with fsync() calls -  the Raid has DRAM with BBU which has very low latency for writes.   The SSDs as I see write directly to flash which is fast but slower than DRAM.  I would expect  fsync() speed to become very similar in the end as nothing prevents FusionIO etc have some DRAM with battery or capacitors but  SSD do not get the leverage here against legacy hard drives.</description>
		<content:encoded><![CDATA[<p>Ryan,</p>
<p>This is interesting as it well highlights common misconception about what SSDs are fast for.   SSDs (and I unclude FusionIO here) are fast for random reads and writes.   Sequential Reads single Intel SSD will have speed similar to the good hard drive (at some extent due to SATA interface limits) and FusionIO similar to the good RAID with few hard drives.     Writes are more expensive for SSDs so for Sequential Writes standard hard drives are often the winners.    It is the most interesting when it comes for small sequential writes with fsync() calls &#8211;  the Raid has DRAM with BBU which has very low latency for writes.   The SSDs as I see write directly to flash which is fast but slower than DRAM.  I would expect  fsync() speed to become very similar in the end as nothing prevents FusionIO etc have some DRAM with battery or capacitors but  SSD do not get the leverage here against legacy hard drives.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ryan Lowe</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-694469</link>
		<dc:creator>Ryan Lowe</dc:creator>
		<pubDate>Fri, 11 Dec 2009 16:23:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-694469</guid>
		<description>@peter

My hope was that, by using FusionIO, there would be a less pronounced penalty for appendonly yes / appendfsync always.  This (obviously) turned out not to be the case.  

@diego

I&#039;ll do some testing later with &quot;save 60 10000&quot; and other parameters, the primary goal of this run was to look at the cost of appendonly yes/appendfsync always.  And the 30,000 set/s I got with fsync everysec aren&#039;t *much* of an improvement over your 24k, but that was somewhat expected as sequential writes on SSDs (as Peter says) &quot;aren&#039;t cost efficient&quot;.

@antirez

I thought the 40k on loopback was a bit low, but my real interest was the new appendonly yes/fsync always.  There are more benchmarks I&#039;m thinking about doing, I&#039;m hoping &quot;Round 2&quot; will be next week!

-- Ryan Lowe</description>
		<content:encoded><![CDATA[<p>@peter</p>
<p>My hope was that, by using FusionIO, there would be a less pronounced penalty for appendonly yes / appendfsync always.  This (obviously) turned out not to be the case.  </p>
<p>@diego</p>
<p>I&#8217;ll do some testing later with &#8220;save 60 10000&#8243; and other parameters, the primary goal of this run was to look at the cost of appendonly yes/appendfsync always.  And the 30,000 set/s I got with fsync everysec aren&#8217;t *much* of an improvement over your 24k, but that was somewhat expected as sequential writes on SSDs (as Peter says) &#8220;aren&#8217;t cost efficient&#8221;.</p>
<p>@antirez</p>
<p>I thought the 40k on loopback was a bit low, but my real interest was the new appendonly yes/fsync always.  There are more benchmarks I&#8217;m thinking about doing, I&#8217;m hoping &#8220;Round 2&#8243; will be next week!</p>
<p>&#8211; Ryan Lowe</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-693910</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Thu, 10 Dec 2009 21:14:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-693910</guid>
		<description>Ryan,

Why did you test it on FusionIO ?   This does not look a very good use case for it -  Redis whenever it periodically dumps its memory or whenever it is using appendonly log  does sequential writes and SSDs in general are not cost efficient in such cases -  Spindles with BBU cache in the RAID should do as good or even better (the 5000 fsync/sec you seems to be getting is not impressive)

Also I&#039;m wondering if Redis has got &quot;Group Commit&quot; implemented in append only mode - will it do single fsync per few operations if multiple transactions are pending ?</description>
		<content:encoded><![CDATA[<p>Ryan,</p>
<p>Why did you test it on FusionIO ?   This does not look a very good use case for it &#8211;  Redis whenever it periodically dumps its memory or whenever it is using appendonly log  does sequential writes and SSDs in general are not cost efficient in such cases &#8211;  Spindles with BBU cache in the RAID should do as good or even better (the 5000 fsync/sec you seems to be getting is not impressive)</p>
<p>Also I&#8217;m wondering if Redis has got &#8220;Group Commit&#8221; implemented in append only mode &#8211; will it do single fsync per few operations if multiple transactions are pending ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diego Sana</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-693908</link>
		<dc:creator>Diego Sana</dc:creator>
		<pubDate>Thu, 10 Dec 2009 21:01:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-693908</guid>
		<description>The numbers you&#039;ve got seems quite low indeed. I just run yesterday redis_benchmark in a slicehost 1gb instance and got 30,000 set/s with save 60 10000 and 24,000 set/s with appendonly yes, fsync everysec.</description>
		<content:encoded><![CDATA[<p>The numbers you&#8217;ve got seems quite low indeed. I just run yesterday redis_benchmark in a slicehost 1gb instance and got 30,000 set/s with save 60 10000 and 24,000 set/s with appendonly yes, fsync everysec.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: antirez</title>
		<link>http://www.mysqlperformanceblog.com/2009/12/10/redis-benchmarks-on-fusionio-round-1/comment-page-1/#comment-693894</link>
		<dc:creator>antirez</dc:creator>
		<pubDate>Thu, 10 Dec 2009 20:11:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=1877#comment-693894</guid>
		<description>Hello Ryan,

thanks for this tests! A few remarks:

- I think fsync set to &quot;always&quot; is so slow because Redis is single threaded and fsync() is slow, it has to wait the syscall finish before to return serving other clients.
- Broken pipe should be harmless, it&#039;s just a metter of how redis-benchmark works and timing issues. It should be possible to see the error even without persistences with more than 50 clients, even now that 1.2 supports epoll.
- It&#039;s strange that on Linux against loopback you get only 40,000/s, should be at least 100,000/s in a entry level server.

Thanks again! I&#039;m looking forward for other tests given that the title &quot;round 1&quot; make me hope about a second round ;)

Cheers,
Salvatore</description>
		<content:encoded><![CDATA[<p>Hello Ryan,</p>
<p>thanks for this tests! A few remarks:</p>
<p>- I think fsync set to &#8220;always&#8221; is so slow because Redis is single threaded and fsync() is slow, it has to wait the syscall finish before to return serving other clients.<br />
- Broken pipe should be harmless, it&#8217;s just a metter of how redis-benchmark works and timing issues. It should be possible to see the error even without persistences with more than 50 clients, even now that 1.2 supports epoll.<br />
- It&#8217;s strange that on Linux against loopback you get only 40,000/s, should be at least 100,000/s in a entry level server.</p>
<p>Thanks again! I&#8217;m looking forward for other tests given that the title &#8220;round 1&#8243; make me hope about a second round <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Cheers,<br />
Salvatore</p>
]]></content:encoded>
	</item>
</channel>
</rss>

