Have a happy, healthy and prosperous new year. 2013 – the year of the water snake.
Have a happy, healthy and prosperous new year. 2013 – the year of the water snake.

As an industry we really need to get a better understanding of the factors affecting drive reliability because the issue seems to be confusing novices and experts alike.
Most people seem to agree that SAS drives have a performance edge over SATA drives. People also agree that SATA drives are more affordable and offer higher capacities than SAS drives.
However, on the question of reliability…this is where things get a little strange. Oddly enough many IT professionals (http://lnkd.in/3iQbmA) insist that SAS drives offer better reliability than their SATA counterparts. But is this really so? Or is this an often repeated myth?
These documents are over five years old but I believe that they are still relevant today. In essence, given a large enough sample size (100,000 or more HDDs), there is very little observable difference in real world replacement rates between SCSI, Fibre Channel and SATA drives.
From Carnegie Mellon University/USENIX Conference
http://www.cs.cmu.edu/~bianca/fast07.pdf
From Google
http://research.google.com/archive/disk_failures.pdf
The fast07.pdf document concluded – “In our data sets, the replacement rates of SATA
disks are not worse than the replacement rates of SCSI or FC disks.”
This is a follow-up blog entry to a similar post published earlier in the month – Storage Enclosure Performance Benchmarks with SQLIO
In this post, we are examining the IO performance of VMware (vSphere) ESXi 4.1 Update 3 Hypervisor (Build 800380) under very specific conditions. The server hardware is powered by an Intel Core 2 CPU 6600 @ 2.4 GHz, 4 GB of RAM.
A Microsoft Windows 7 guest operating system is installed and configured with our miniSAN Disk Management driver and the ATA over Ethernet (AoE) RAID Manager. The Windows 7 guest is on the same Gigabit Ethernet network with a RD9A0910 RAID Desktop unit fitted with 4 x 160 GB SATA HDDs (7,200 RPM). RAID 5 was configured on three of the HDDs with the remaining HDD acting as a hot spare.
All tests were conducted with the NTFS file system.
The tests were largely based on the content from this web site: http://tools.davidklee.net/sqlio/sqlio-analyzer-instructions.aspx
This is the content from the param.txt file:
z:\testfile.dat 2 0x0 81920
These are the commands from childtest.bat:
echo Test start: %date:~10,4%-%date:~4,2%-%date:~7,2%--%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
sqlio -kW -t8 -s300 -o8 -frandom -b64 -BH -LS -Fparam.txt
echo Test start: %date:~10,4%-%date:~4,2%-%date:~7,2%--%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
sqlio -kR -t8 -s300 -o8 -frandom -b64 -BH -LS -Fparam.txt
echo Test start: %date:~10,4%-%date:~4,2%-%date:~7,2%--%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
sqlio -kW -t8 -s300 -o8 -fsequential -b64 -BH -LS -Fparam.txt
echo Test start: %date:~10,4%-%date:~4,2%-%date:~7,2%--%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
sqlio -kR -t8 -s300 -o8 -fsequential -b64 -BH -LS -Fparam.txt
The test file size is 80 GB or 81920 MB. We used 64 KB blocks.
The first two runs were performed without a testfile.dat file so these runs had to create the file before the actual testing can start. However, in the case of the third run, there was a preexisting testfile.dat and you can see the results of this in the relevant start times in the raw data (not included in this blog post due to problems exporting to CSV format). Creating the testfile.dat added approximately 30 minutes to the total run time. Each test in the childtest.bat file executes for 300 seconds or 5 minutes. With 4 tests in each run, the total run time (without including testfile.dat creation time) is about 20 minutes.
Every run is performed by launching sqliotest.bat. Here are the contents:
childtest.bat > results.txt
Table – results.txt-baseline
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 687.99 | 42.99 | 1 | 22 | 274 | 81920 MB | 50 | 69 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1054.04 | 65.87 | 1 | 14 | 122 | 81920 MB | 73 | 92 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 99.43 | 6.21 | 2 | 160 | 634 | 81920 MB | 4 | 23 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 65.99 | 4.12 | 37 | 241 | 543 | 81920 MB | 27 | 46 | 1 |
Table – results.txt-2nd_run
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 739.24 | 46.2 | 4 | 21 | 224 | 81920 MB | 50 | 69 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1056.83 | 66.05 | 1 | 14 | 134 | 81920 MB | 73 | 92 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 100.55 | 6.28 | 4 | 158 | 633 | 81920 MB | 4 | 23 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 65.57 | 4.09 | 185 | 243 | 657 | 81920 MB | 27 | 46 | 1 |
Table – results.txt-preexisting_testfile
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 754.56 | 47.16 | 4 | 20 | 226 | 81920 MB | 50 | 69 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1056.39 | 66.02 | 1 | 14 | 151 | 81920 MB | 73 | 92 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 100.86 | 6.3 | 3 | 158 | 632 | 81920 MB | 4 | 23 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 65.48 | 4.09 | 37 | 243 | 569 | 81920 MB | 27 | 46 | 1 |
The results are quite good with some of the IOPS exceeding the single appliance benchmarks as seen in the blog post dated November 6, 2012.
Press release originally published 11/21/2012 at WiredPRNews.com
11/20/2012 (press release: kalleyne) // White Bear Lake, MN, USA // Keri Alleyne
Tangible Storage, (www.TangibleStorage.com), officially announces its support for American Express Small Business Saturday (November 24, 2012).
It is often stated that the future of all industry exists within small business and especially within the hearts and minds of small business owners and entrepreneurs. But there are challenges to running the small shop. Apart from the obvious timeless difficulties of raising capital, managing payroll and scheduling duties to employees, today’s business owners need to be familiar with a wide range of online digital technologies on the Internet and elsewhere in order to remain competitive in their respective markets. Everything from simple tweets to email to streaming movies is being categorized, tagged and stored for longer and longer retention periods partly due to stronger regulatory and compliance standards but mostly because the demand for media consumption has grown sharply.
While there are a few exceptions, the data storage market is composed of three main segments:
a) Enterprise Storage Area Network (SAN): Very good scalability with good speed and data capacity but also very expensive to acquire and maintain. Many types require IT organizations to oversee operations.
b) Consumer Network-attached Storage (NAS): Very good price (inexpensive) but with limited speed, scalability and data capacity. Easy to own and easy to operate but upgrades usually mean replacing the entire device. The logical combination of devices for aggregate storage is generally quite complicated.
c) Public Cloud storage: Excellent price but speed is limited to the Internet connection and its uptime. Good scalability and data capacity, easy to operate. Potential data privacy issues if data is not properly handled and encrypted.
Tangible Storage understands that most businesses especially small businesses do not fall neatly into one of the above three groups. Indeed, small flexible companies would probably be better served through combinations of the qualitative advantages from all groups. By supporting the needs of small business, Tangible Storage delivers SAN products that provide good scalability, speed and data capacity while remaining affordable to purchase. Logical combinations of multiple devices simplify the task of aggregating storage. These systems are easy to manage with GUI based Redundant Array of Independent Disks (RAID) Management software which can be configured to automatically alert administrators via email in the event of hardware failures.
Tangible Storage is an authorized US distributor of Storage Area Network (SAN) appliances, equipment and services based on the open standard – ATA over Ethernet. The company is in business to help and empower customers by supplying and delivering quality data storage products with enterprise grade features at reasonable prices.
For more information, please visit us at: http://www.TangibleStorage.com
Tangible Storage
4707 Highway 61 #102
White Bear Lake, MN 55110
info@tangiblestorage.com
Tel: 1-612-293-5077
OpenNebula is one of the leading open-source cloud computing toolkits for IaaS (Infrastructure as a Service) architectures and data center hypervisor (Xen, KVM and VMware) management. The development team just recently introduced changes to include support for ATA over Ethernet (AoE).
Please see this link for details: http://dev.opennebula.org/issues/1648
Microsoft’s SQLIO is a pretty useful utility to measure storage I/O performance.
Here is our testing scenario:
An Intel Core 2 Duo laptop with 2 GB RAM and GbE interface was used to administer the test.
RAID Enclosure #1 is a rackmount RD9A0110 appliance with 4 x 160 GB SATA HDDs (7,200 RPM). RAID 5 was configured on these 4 x HDDs and the SQLIO test was performed. Later, RAID 10 was configured and the SQLIO test was repeated.
RAID Enclosure #2 is a RD9A0110 with 4 x 1 TB SATA HDDs (7,200 RPM). Enclosure #2 is used in conjunction with Enclosure #1. Their combined volumes were accessed by Microsoft Windows 7 drive striping technology. First RAID 5 was configured on both enclosures and SQLIO testing was performed. Later, RAID 10 was configured on both enclosures and the test was repeated.
All tests were conducted with the NTFS file system.
The tests were largely based on the content from this web site: http://tools.davidklee.net/sqlio/sqlio-analyzer-instructions.aspx
These are the commands from childtest.bat:
sqlio -kW -t8 -s300 -o8 -frandom -b64 -BH -LS -Fparam.txt
sqlio -kR -t8 -s300 -o8 -frandom -b64 -BH -LS -Fparam.txt
sqlio -kW -t8 -s300 -o8 -fsequential -b64 -BH -LS -Fparam.txt
sqlio -kR -t8 -s300 -o8 -fsequential -b64 -BH -LS -Fparam.txt
The test file size is 80 GB or 81920 MB. I used 64 KB blocks.
results_1enclosure_RAID5 shows the results of running SQLIO on Enclosure #1 with RAID 5. In a way, this serves as a baseline.
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 376.12 | 23.5 | 16 | 41 | 278 | 81920 MB | 44 | 63 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1068.34 | 66.77 | 12 | 14 | 127 | 81920 MB | 65 | 84 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 41.46 | 2.59 | 50 | 385 | 783 | 81920 MB | 2 | 21 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 64.65 | 4.04 | 189 | 246 | 507 | 81920 MB | 23 | 42 | 1 |
results_1enclosure_RAID10 shows the results of running SQLIO on Enclosure #1 with RAID 10. As you can see, sequential writes have increased from 376 to 680 IOPS. Random writes have increased from 41 to 82 IOPS.
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 680.41 | 42.52 | 16 | 22 | 253 | 81920 MB | 44 | 63 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1072.68 | 67.04 | 12 | 14 | 141 | 81920 MB | 65 | 84 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 82.67 | 5.16 | 3 | 192 | 673 | 81920 MB | 2 | 21 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 73.85 | 4.61 | 137 | 216 | 328 | 81920 MB | 23 | 42 | 1 |
results_2enclosure_RAID5 shows the results of running SQLIO on both striped enclosures with RAID 5. Sequential reads have increased from the previous test from 1072 to 1769 IOPS. Random reads have increased from 73 to 137 IOPS.
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 625.75 | 39.1 | 1 | 25 | 228 | 81920 MB | 44 | 63 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1769.3 | 110.58 | 1 | 8 | 103 | 81920 MB | 65 | 84 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 89.66 | 5.6 | 1 | 177 | 735 | 81920 MB | 2 | 21 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 137.58 | 8.59 | 1 | 115 | 335 | 81920 MB | 23 | 42 | 1 |
results_2enclosure_RAID10 shows the results of running SQLIO on both striped enclosures with RAID 10. Sequential writes have increased from the previous test from 625 to 1240 IOPS. Random writes have increased from 89 to 165 IOPS.
| DriveLetter | Threads | IORequestsPerThread | ReadWrite | Seconds | BlockSize | IOType | CaptureLatency | IOps | MBps | MinLatency | AverageLatency | MaxLatency | TestSize | StartLineNumber | EndLineNumber | TestNumber | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| z: | 8 | 8 | W | 300 | 64 | Sequential | False | 1240.55 | 77.53 | 1 | 12 | 337 | 81920 MB | 44 | 63 | 2 | |
| z: | 8 | 8 | R | 300 | 64 | Sequential | False | 1777.57 | 111.09 | 0 | 8 | 136 | 81920 MB | 65 | 84 | 3 | |
| z: | 8 | 8 | W | 300 | 64 | Random | False | 165.47 | 10.34 | 1 | 96 | 643 | 81920 MB | 2 | 21 | 0 | |
| z: | 8 | 8 | R | 300 | 64 | Random | False | 160.59 | 10.03 | 1 | 99 | 515 | 81920 MB | 23 | 42 | 1 |
One average, when comparing the performance of one enclosure (RAID 5 vs 10), the results seem to show that there is little difference in the read performance (random and sequential). However, RAID 10 outperforms RAID 5 on the write measurements (random and sequential).
Using both enclosures configured with RAID 5 will outperform a single enclosure configured with RAID 10 on the read operations but the write operations are about the same. The best results for read and write operations are seen when both enclosures are used and are configured with RAID 10.
In general terms, the task of adding RAID appliances onto Ethernet LANs can translate into overall increases of IOPS performance when data is striped across the entire SAN. More spindles on switched Ethernet equates to better performance.
Support your favorite small business.
This November 24th is Small Business Saturday®, a day to celebrate and support the local small businesses that boost the economy and invigorate neighborhoods across the country.
This annual event is sandwiched between “Black Friday” (November 23rd) and “Cyber Monday” (November 26th) following Thanksgiving (November 22nd).
Tangible Storage is proud to take part in Small Business Saturday, and we’re encouraging everyone to Shop Small® here on November 24th.
To learn more, visit ShopSmall.com.
Visit us at the 2012 Red Hat Summit and JBossWorld show. Hynes Convention Center, Boston, MA, June 26-29, 2012.
Booth #2918 – JW Electronics.