<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>blog @ a2o.si &#187; Databases (RDBS)</title>
	<atom:link href="http://blog.a2o.si/category/databases-rdbs/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.a2o.si</link>
	<description>Un*x system engineering</description>
	<lastBuildDate>Wed, 07 Sep 2011 09:22:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>HP DL380 G5 drive write cache (BBWC)</title>
		<link>http://blog.a2o.si/2009/06/19/hp-dl380-g5-drive-write-cache-bbwc/</link>
		<comments>http://blog.a2o.si/2009/06/19/hp-dl380-g5-drive-write-cache-bbwc/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 00:01:10 +0000</pubDate>
		<dc:creator>Boštjan Škufca</dc:creator>
				<category><![CDATA[Databases (RDBS)]]></category>
		<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Servers]]></category>

		<guid isPermaLink="false">http://blog.a2o.si/?p=41</guid>
		<description><![CDATA[In one of my previous articles I have written about tools that I use for benchmarking database performance and especially for discovering system bottlenecks. In this article I will show you how large impact on filesystem performance a drive write cache may have.
HP DL360 G4 server
HP and its line of DL servers is very respected [...]]]></description>
			<content:encoded><![CDATA[<p>In one of my previous articles I have written about tools that I use for benchmarking database performance and especially for discovering system bottlenecks. In this article I will show you how large impact on filesystem performance a drive write cache may have.</p>
<h3>HP DL360 G4 server</h3>
<p>HP and its line of DL servers is very respected amongst IT engineers. It is (at least by my experience) a reliable class of servers, well built, easy to maintain and comes with an excellent server management software called Integrated Lights-Out (ILO). DLs SCSI and SAS storage subsystem is usually controlled by controllers called Smart Array, which can be integrated onto the motherboard or not. Fresh HP customer gets all the nifty RAID levels to play with and is usually satisfied. But what fresh customer usually DOES NOT KNOW is that Smart Array write performance really sucks if write cache is not enabled. And to enable it, fresh user needs to install a special module with attached battery called BBWC. So, HP, if you are accidentally reading this, please do notify your customers about such things.</p>
<h4>HP DL380 G5 server</h4>
<p>This is another server where I conducted the benchmark and, unlike DL360 G4, already came with BBWC installed. To simulate absence of write cache I disabled it with command line tool <em>hpacucli</em> (HP Array Configuration Utility Command Line Interface).</p>
<h3>Benchmark metodology</h3>
<p>For this benchmark I used two tools from sql-bench suite which heavily stress filesystem with lots of file creations and deletions. These tools are <em>test-alter-table</em> and <em>test-create</em>. The former test is faster and only gives rough figure. The later creates and deletes around 50,000 MyISAM tables which results in 150,000 files created and deleted. I executed both benchmarks first without and then with write cache enabled.<br />
One of the machines (the DL380) was already in production, but it was benchmarked during the night when usage is negligible.</p>
<h3>Test systems</h3>
<p>HP DL360 G4</p>
<ul>
<li>Controller: Smart Array 6i</li>
<li>Filesystem: ufs</li>
<li>OS: FreeBSD 6.0</li>
<li>MySQL: mysql-5.0.41-freebsd6.0-i386</li>
</ul>
<p>HP DL380 G5</p>
<ul>
<li>Controller: Smart Array P400i</li>
<li>ext3 filesystem</li>
<li>OS: Slackware 12.2</li>
<li>MySQL: mysql-5.0.77 compiled from source</li>
</ul>
<h3>Results on HP DL380 G5</h3>
<p>Drive write cache DISABLED</p>
<blockquote><p>
Testing of ALTER TABLE<br />
Time for insert (1000) 0 wallclock secs<br />
( 0.02 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for alter_table_add (100): 17 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for create_index (8):  2 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for drop_index (8):  2 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for alter_table_drop (91): 16 wallclock secs ( 0.01 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.01 CPU)<br />
Total time: 37 wallclock secs ( 0.03 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.03 CPU)</p>
<p>Testing the speed of creating and dropping tables<br />
Time for create_MANY_tables (10000): 253 wallclock secs ( 0.26 usr  0.06 sys +  0.00 cusr  0.00 csys =  0.32 CPU)<br />
Time to select_group_when_MANY_tables (10000):  1 wallclock secs ( 0.09 usr  0.07 sys +  0.00 cusr  0.00 csys =  0.16 CPU)<br />
Time for drop_table_when_MANY_tables (10000):  1 wallclock secs ( 0.09 usr  0.03 sys +  0.00 cusr  0.00 csys =  0.12 CPU)<br />
Time for create+drop (10000): 259 wallclock secs ( 0.24 usr  0.18 sys +  0.00 cusr  0.00 csys =  0.42 CPU)<br />
Time for create_key+drop (10000): 255 wallclock secs ( 0.41 usr  0.11 sys +  0.00 cusr  0.00 csys =  0.52 CPU)<br />
Total time: 769 wallclock secs ( 1.09 usr  0.45 sys +  0.00 cusr  0.00 csys =  1.54 CPU)
</p></blockquote>
<p>Drive write cache ENABLED</p>
<blockquote><p>
Testing of ALTER TABLE<br />
Time for insert (1000) 0 wallclock secs ( 0.02 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for alter_table_add (100):  3 wallclock secs ( 0.01 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for create_index (8):  1 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for drop_index (8):  0 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for alter_table_drop (91):  4 wallclock secs ( 0.01 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.01 CPU)<br />
Total time:  8 wallclock secs ( 0.04 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.05 CPU)</p>
<p>Testing the speed of creating and dropping tables<br />
Time for create_MANY_tables (10000):  9 wallclock secs ( 0.34 usr  0.06 sys +  0.00 cusr  0.00 csys =  0.40 CPU)<br />
Time to select_group_when_MANY_tables (10000):  1 wallclock secs ( 0.06 usr  0.03 sys +  0.00 cusr  0.00 csys =  0.09 CPU)<br />
Time for drop_table_when_MANY_tables (10000):  1 wallclock secs ( 0.10 usr  0.04 sys +  0.00 cusr  0.00 csys =  0.14 CPU)<br />
Time for create+drop (10000):  9 wallclock secs ( 0.44 usr  0.10 sys +  0.00 cusr  0.00 csys =  0.54 CPU)<br />
Time for create_key+drop (10000): 10 wallclock secs ( 0.35 usr  0.10 sys +  0.00 cusr  0.00 csys =  0.45 CPU)<br />
Total time: 30 wallclock secs ( 1.29 usr  0.33 sys +  0.00 cusr  0.00 csys =  1.62 CPU)
</p></blockquote>
<p></p>
<table class="wptable rowstyle-alt" id="wptable-2" >
	<thead>
	<tr>
		<th class="sortable" style="width:200px" align="left">Drive write cache</th>
		<th class="sortable" style="width:70px" align="right">DISABLED</th>
		<th class="sortable" style="width:70px" align="right">ENABLED</th>
		<th class="sortable" style="width:200px" align="right">Relative difference</th>
	</tr>
	</thead>
	<tr>
		<td style="width:200px" align="left">sql-bench: test-alter-table</td>
		<td style="width:70px" align="right">37 s</td>
		<td style="width:70px" align="right">8 s</td>
		<td style="width:200px" align="right"><b>462%</b></td>
	</tr>
	<tr class="alt">
		<td style="width:200px" align="left">sql-bench: test-create</td>
		<td style="width:70px" align="right">769 s</td>
		<td style="width:70px" align="right">30 s</td>
		<td style="width:200px" align="right"><b>2563%</b></td>
	</tr>
</table><p>
</p>
<h3>Results on HP DL360 G4</h3>
<p>Drive write cache DISABLED</p>
<blockquote><p>
Testing of ALTER TABLE<br />
Time for insert (1000) 0 wallclock secs ( 0.02 usr  0.02 sys +  0.00 cusr  0.00 csys =  0.04 CPU)<br />
Time for alter_table_add (100): 33 wallclock secs ( 0.01 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for create_index (8):  4 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for drop_index (8):  3 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for alter_table_drop (91): 33 wallclock secs ( 0.01 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Total time: 75 wallclock secs ( 0.04 usr  0.03 sys +  0.00 cusr  0.00 csys =  0.07 CPU)</p>
<p>Testing the speed of creating and dropping tables<br />
Testing with 10000 tables and 10000 loop count<br />
Time for create_MANY_tables (10000): 1035 wallclock secs ( 1.27 usr  0.25 sys +  0.00 cusr  0.00 csys =  1.52 CPU)<br />
Time to select_group_when_MANY_tables (10000): 83 wallclock secs ( 0.63 usr  0.16 sys +  0.00 cusr  0.00 csys =  0.79 CPU)<br />
Time for drop_table_when_MANY_tables (10000): 493 wallclock secs ( 0.50 usr  0.19 sys +  0.00 cusr  0.00 csys =  0.69 CPU)<br />
Time for create+drop (10000): 958 wallclock secs ( 1.59 usr  0.38 sys +  0.00 cusr  0.00 csys =  1.97 CPU)<br />
(NOTICE: Could not wait for this test to finish, because machine needed to get back in production,)<br />
(thus I assume it to be around 900 seconds just to be on the safe side, probably would be more.)<br />
Total time calculated: around 3400 seconds
</p></blockquote>
<p>Drive write cache ENABLED</p>
<blockquote><p>
Testing of ALTER TABLE<br />
Time for insert (1000) 0 wallclock secs ( 0.02 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for alter_table_add (100):  8 wallclock secs ( 0.02 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Time for create_index (8):  1 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for drop_index (8):  1 wallclock secs ( 0.00 usr  0.00 sys +  0.00 cusr  0.00 csys =  0.00 CPU)<br />
Time for alter_table_drop (91):  8 wallclock secs ( 0.01 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.02 CPU)<br />
Total time: 18 wallclock secs ( 0.05 usr  0.02 sys +  0.00 cusr  0.00 csys =  0.06 CPU)</p>
<p>Testing the speed of creating and dropping tables<br />
Time for create_MANY_tables (10000): 104 wallclock secs ( 1.07 usr  0.24 sys +  0.00 cusr  0.00 csys =  1.31 CPU)<br />
Time to select_group_when_MANY_tables (10000): 27 wallclock secs ( 0.48 usr  0.18 sys +  0.00 cusr  0.00 csys =  0.66 CPU)<br />
Time for drop_table_when_MANY_tables (10000): 53 wallclock secs ( 0.32 usr  0.09 sys +  0.00 cusr  0.00 csys =  0.41 CPU)<br />
Time for create+drop (10000): 143 wallclock secs ( 1.31 usr  0.30 sys +  0.00 cusr  0.00 csys =  1.62 CPU)<br />
Time for create_key+drop (10000): 164 wallclock secs ( 1.56 usr  0.36 sys +  0.00 cusr  0.00 csys =  1.92 CPU)<br />
Total time: 491 wallclock secs ( 4.74 usr  1.18 sys +  0.00 cusr  0.00 csys =  5.92 CPU)
</p></blockquote>
<p></p>
<table class="wptable rowstyle-alt" id="wptable-3" >
	<thead>
	<tr>
		<th class="sortable" style="width:200px" align="left">Drive write cache</th>
		<th class="sortable" style="width:70px" align="right">ABSENT</th>
		<th class="sortable" style="width:70px" align="right">ENABLED</th>
		<th class="sortable" style="width:200px" align="right">Relative difference</th>
	</tr>
	</thead>
	<tr>
		<td style="width:200px" align="left">sql-bench: test-alter-table</td>
		<td style="width:70px" align="right">75 s</td>
		<td style="width:70px" align="right">18 s</td>
		<td style="width:200px" align="right"><b>416%</b></td>
	</tr>
	<tr class="alt">
		<td style="width:200px" align="left">sql-bench: test-create</td>
		<td style="width:70px" align="right">3400 s</td>
		<td style="width:70px" align="right">491 s</td>
		<td style="width:200px" align="right"><b>692%</b></td>
	</tr>
</table><p>
</p>
<h3>Analysis</h3>
<p>The <em>test-alter-table</em> results seem fine, slightly over 400% increase in performance. But what bothers me is the <em>test-create</em> difference. I expected the HP DL360 G4 to improve more and execute this test below 100 seconds barier, heck, actually I expected it below 50 seconds. It is true that this machine uses different operating- and filesystem. But 500 seconds still seems too much to me, especially when HP DL380 G5 excells at 30 seconds. If someone know the answer, please drop it in comments.</p>
<h3>Conclusion</h3>
<p>I believe this article has clearly shown why one must conduct even such synthetic tests before deploying the systems to production environment. Furthermore even before the &#8220;real-world benchmarks&#8221; are conducted. The phrase &#8220;real-world benchmark&#8221; signifies a comparative benchmark of certain application on an existing production systems and on the ones that are in testing phase. It often happens that hardware is not upgraded for quite some time, which means that new hardware is few generations younger than the existing one. The new one is far more powerful and one easily misses some not-so-innocent bottleneck if &#8220;real-world benchmark&#8221; displays certain improvement. Thus, as I believe, newer systems MUST perform better than older ones in every synthetic benchmark (if the systems are comparable, of course), and only then we can start conducting &#8220;real-world benchmarks&#8221;.</p>
<h3>How did I discover this &#8220;issue&#8221;?</h3>
<p>It happened to me back in the 2004 that I deployed such a HP server to collocation facility and only later discovered that it was performing worse than some old test machine lying under my desk. After couple of hours of googling I assumed that the lack of BBWC was our problem. I had to order it and then remove the server from collocation because I also wanted to upgrade all the firmwares, just in case. On top of that, I still had to figure out how to install &#8216;hpacucli&#8217; on non-RedHat linux. After a long weekend the machine was back in production and never caused a single problem again.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a2o.si/2009/06/19/hp-dl380-g5-drive-write-cache-bbwc/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MySQL sql-bench results</title>
		<link>http://blog.a2o.si/2009/06/16/mysql-sql-bench-results/</link>
		<comments>http://blog.a2o.si/2009/06/16/mysql-sql-bench-results/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 23:07:03 +0000</pubDate>
		<dc:creator>Boštjan Škufca</dc:creator>
				<category><![CDATA[Databases (RDBS)]]></category>

		<guid isPermaLink="false">http://blog.a2o.si/?p=27</guid>
		<description><![CDATA[This is a follow-up article to the MySQL Super Smack benchmark results. Results from sql-bench benchmark suite can easily pinpoint some of the potential system bottlenecks. I find it especially useful for discovering filesystem performance or &#8211; better &#8211; slowness.
Results
Total execution time is: 562 seconds

# run-all-tests
alter-table: Total time:  8 wallclock secs ( 0.02 usr [...]]]></description>
			<content:encoded><![CDATA[<p>This is a follow-up article to the <a href="http://blog.a2o.si/?p=4">MySQL Super Smack benchmark results</a>. Results from sql-bench benchmark suite can easily pinpoint some of the potential system bottlenecks. I find it especially useful for discovering filesystem performance or &#8211; better &#8211; slowness.</p>
<p><strong>Results</strong><br />
Total execution time is: <strong>562 seconds</strong></p>
<blockquote><p>
# run-all-tests<br />
alter-table: Total time:  8 wallclock secs ( 0.02 usr  0.01 sys +  0.00 cusr  0.00 csys =  0.03 CPU)<br />
ATIS: Total time:  2 wallclock secs ( 1.20 usr  0.09 sys +  0.00 cusr  0.00 csys =  1.29 CPU)<br />
big-tables: Total time:  5 wallclock secs ( 2.45 usr  0.08 sys +  0.00 cusr  0.00 csys =  2.53 CPU)<br />
connect: Total time: 50 wallclock secs (12.74 usr  4.50 sys +  0.00 cusr  0.00 csys = 17.24 CPU)<br />
create: Total time: 31 wallclock secs ( 1.20 usr  0.44 sys +  0.00 cusr  0.00 csys =  1.64 CPU)<br />
insert: Total time: 397 wallclock secs (97.95 usr 13.61 sys +  0.00 cusr  0.00 csys = 111.56 CPU)<br />
select: Total time: 44 wallclock secs ( 8.71 usr  0.88 sys +  0.00 cusr  0.00 csys =  9.59 CPU)<br />
transactions: Test skipped because the database doesn&#8217;t support transactions<br />
wisconsin: Total time:  3 wallclock secs ( 0.91 usr  0.23 sys +  0.00 cusr  0.00 csys =  1.14 CPU)<br />
TOTALS                               562.00  123.77   19.82  143.59 3425950
</p></blockquote>
<p>System specification can be found <a href="http://blog.a2o.si/?p=4">here</a>.</p>
<p><strong>ReiserFS vs others</strong><br />
In the age of Linux kernel 2.4.x we used ReiserFS v3 as the filesystem of choice. With the available options of ReiserFS (journal, performance), ext2 (stable but slow) and ext3 (probably stable, but not so speedy as ReiserFS) the choice was obvious. I skipped few years then and this year again tried using ReiserFS with linux 2.6.29.1 but it turned out to be even slower than ext2 was in the old days. Googling around for an answer gave some hints that ReiserFS has an issue with someting called BIG_KERNEL_LOCK on 2.6 kernels. I didn&#8217;t really investigate further, but went down the ext3 way.</p>
<p><strong>Comments on test-create</strong><br />
If test-create takes much more time than, say, 30-60 seconds, then you definitely have a problem with filesystem write performance. On HP DL360 and DL380 class of servers this correlates with the presence and activation of BBWC (Battery-Backed Write Cache enabler kit). Without BBWC and hence without write cache enabled, this test took more than 10 minutes to complete. Thus, if you are purchasing some new HP servers, be sure that you also order BBWCs.</p>
<p><strong>Question about test-insert</strong><br />
Looking at the test times, this test-insert result is really standing out. Again, I do not have any other data to compare it to, but somewhere deep down in my memory I seem to remember that the total time for all the tests was around 300 seconds. This obviously means that this test-insert result is the bad guy here. Can someone comment on this result, or paste in the comments his own? Thanks.</p>
<p><strong>Feedback</strong><br />
If you have any questions, recommendations or benchmark results to compare, do not hesitate to leave a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a2o.si/2009/06/16/mysql-sql-bench-results/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Super Smack database benchmark results</title>
		<link>http://blog.a2o.si/2009/06/16/mysql-super-smack-database-benchmark-results/</link>
		<comments>http://blog.a2o.si/2009/06/16/mysql-super-smack-database-benchmark-results/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 22:12:45 +0000</pubDate>
		<dc:creator>Boštjan Škufca</dc:creator>
				<category><![CDATA[Databases (RDBS)]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[hp dl380]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[results]]></category>
		<category><![CDATA[super smack]]></category>

		<guid isPermaLink="false">http://blog.a2o.si/?p=4</guid>
		<description><![CDATA[After a couple of years away in academic environment, I got myself back into the business of system administration (or as I prefer to call it, system engineering), Linux/BSD system administration to be precise. Of course, all the old (and precious) notes and data were gone, so I had to start from scratch. I was [...]]]></description>
			<content:encoded><![CDATA[<p>After a couple of years away in academic environment, I got myself back into the business of system administration (or as I prefer to call it, system engineering), Linux/BSD system administration to be precise. Of course, all the old (and precious) notes and data were gone, so I had to start from scratch. I was given a task to put together a scalable system of web servers. At certain point I started to benchmark the systems and I have realised that I had almost no data to compare the results to. Therefore I decided to share these results with the world and in the same manner make it available for me in the future. They are intended as a reference point if you want to know how much performance can you squeeze out of certain hardware/software.</p>
<p>Today I am starting with MySQL, the database of choice for many web developers.</p>
<p>For benchmarking MySQL performance, I primarily use three tools:</p>
<ol>
<li><a href="http://dev.mysql.com/doc/refman/5.0/en/mysql-benchmarks.html">The MySQL benchmark suite</a>,</li>
<li><a title="Super Smack" href="http://vegan.net/tony/supersmack/">Super Smack</a> and</li>
<li>some custom applications for real world tests.</li>
</ol>
<p>As it is commonly known, first two items from the list above are not what one might call &#8220;real world benchmark suites&#8221;. But they are very fine tools for discovering system bottlenecks and obvious configuration errors. Below follow benchmark commands and results with complete (relevant) setup description. Enjoy!</p>
<p><strong>Results for select-key</strong><br />
Queries per second: <strong>166541</strong></p>
<blockquote><p>
cd /usr/share/smacks &#038;&#038;<br />
super-smack select-key.smack 32 100000</p>
<p>Query Barrel Report for client smacker1<br />
connect: max=34ms  min=0ms avg= 14ms from 32 clients<br />
Query_type	num_queries	max_time	min_time	q_per_s<br />
select_index	6400000	0	0	166541.80
</p></blockquote>
<p><strong>Results for update-key</strong><br />
Queries per second: <strong>9225</strong></p>
<blockquote><p>
cd /usr/share/smacks &#038;&#038;<br />
super-smack update-select.smack 32 10000</p>
<p>Query Barrel Report for client smacker<br />
connect: max=0ms  min=0ms avg= 0ms from 32 clients<br />
Query_type	num_queries	max_time	min_time	q_per_s<br />
select_index	320000	2	0	9225.27<br />
update_index	320000	2	0	9225.27
</p></blockquote>
<p><strong>Hardware</strong></p>
<ul>
<li>HP DL380 g5</li>
<li>2x Intel E5420 Xeon (4 cores @ 2.5GHz each)</li>
<li>8GB ECC RAM</li>
<li>2x 147 SAS 10k drives in hardware RAID-1 configuration</li>
<li>Write cache enabled for Smart Array P400i</li>
</ul>
<p><strong>Software</strong></p>
<ul>
<li>Slackware 12.2</li>
<li>Ext3 filesystem</li>
<li>Linux kernel version 2.4.29.1</li>
<li>Super Smack 1.3, compiled from source</li>
<li>MySQL version 5.0.77, compiled from source with configure line:<br />
<blockquote><p>
./configure &#8211;prefix=/usr/local/$PDIR \<br />
  &#8211;with-charset=utf8 &#8211;with-collation=utf8_general_ci \<br />
  &#8211;with-unix-socket-path=/var/mysql/run/mysql.sock \<br />
  &#8211;with-mysqld-user=mysql \<br />
  &#8211;with-openssl=/usr/local/openssl-0.9.8k
</p></blockquote>
</li>
</ul>
<p><strong>/etc/my.cnf</strong></p>
<blockquote><p>
[client]<br />
socket		 = /var/mysql/run/mysql.sock</p>
<p>[mysqld]<br />
user             = mysql<br />
basedir          = /usr/local/mysql<br />
pid-file         = /var/mysql/run/mysqld.pid<br />
socket           = /var/mysql/run/mysql.sock<br />
datadir          = /var/mysql/data<br />
log-error        = /var/mysql/log/mysql_error.log<br />
log-slow-queries = /var/mysql/log/mysql_slow_query.log</p>
<p>ssl<br />
ssl-cert = /etc/ssl/certs/_default.cert<br />
ssl-key  = /etc/ssl/certs/_default.key</p>
<p>key_buffer              = 256M<br />
max_allowed_packet      = 32M<br />
table_cache             = 256<br />
sort_buffer_size        = 2M<br />
read_buffer_size        = 4M<br />
read_rnd_buffer_size    = 8M<br />
myisam_sort_buffer_size = 64M<br />
net_buffer_length       = 2K<br />
thread_stack            = 128K<br />
thread_cache_size       = 16K<br />
thread_concurrency      = 8<br />
query_cache_size        = 32M<br />
max_join_size           = 4294967295</p>
<p>innodb_data_home_dir            = /var/mysql/data<br />
innodb_data_file_path           = ibdata1:10M:autoextend<br />
innodb_log_group_home_dir       = /var/mysql/data<br />
innodb_log_arch_dir             = /var/mysql/data<br />
innodb_buffer_pool_size         = 16M<br />
innodb_additional_mem_pool_size = 2M<br />
innodb_log_file_size            = 5M<br />
innodb_log_buffer_size          = 8M<br />
innodb_flush_log_at_trx_commit  = 1<br />
innodb_lock_wait_timeout        = 50</p>
<p>[mysqldump]<br />
quick<br />
max_allowed_packet = 32M</p>
<p>[mysql]<br />
no-auto-rehash</p>
<p>[isamchk]<br />
key_buffer       = 128M<br />
sort_buffer_size = 128M<br />
read_buffer      = 2M<br />
write_buffer     = 2M</p>
<p>[myisamchk]<br />
key_buffer       = 128M<br />
sort_buffer_size = 128M<br />
read_buffer      = 2M<br />
write_buffer     = 2M</p>
<p>[mysqlhotcopy]<br />
interactive-timeout
</p></blockquote>
<p>And also the results of sql-bench suite are <a href="http://blog.a2o.si/?p=4">here</a>.</p>
<p><strong>Feedback</strong><br />
If you have any questions, recommendations or benchmark results to compare, do not hesitate to leave a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a2o.si/2009/06/16/mysql-super-smack-database-benchmark-results/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

