Data Robotics DroboPro vs. QNAP TS-859 Pro

I previously wrote about my impressions of the DroboPro, and in case I was not clear, I was not impressed.

I recently read the announcement of the new QNAP TS-859 Pro, and from the literature it seemed like a great device, high performance, feature rich, and power saving.
The TS-859 Pro is now available, and I compared it with the DroboPro, and against a regular W2K8R2 file server.

The TS-859 is taller than the DroboPro, the DroboPro is deeper than the TS-859, and the width is about the same.

Before I get to the TS-859, let’s look at the DroboPro information and configuration screens.
The OS is Windows Server 2008 R2 Enterprise, but the steps should be about the same for Vista and Windows 7.
All but the DroboCopy context menu screens are listed below.
DroboPro information and configuration:

The dashboard believes there are no volumes, but Windows sees an unknown 2TB volume:

Creating a new volume:

As the dashboard software starts creating the volume, Windows will detect a new RAW volume being mounted, and asked if it should be formatted.
Just leave that dialog open and let the dashboard finish.
The dashboard will complete saying all is well, when in reality it is not:

The dashboard failed to correctly mount and format the volume.

Right click on the disk, bring it online, format the partition as a GPT simple volume.

The dashboard will pick up the change and show the correct state.

Email notifications are configured from the context menu.
The email notifications are generated by the user session application, so no user logged in, no email notifications.

DroboPro does not provide any diagnostics, even the diagnostic file is encrypted.

Unlike the DroboPro that comes with rudimentary documentation, the TS-859 has getting started instructions printed right on the top of the box, and includes a detailed configuration instruction pamphlet.
The DroboPro also has configuration instructions in the box, printed on the bottom of a piece of cardboard that looks like packaging material, and I only discovered these instructions as I was throwing out the packaging.
I loaded the TS-859 with 8 x Hitachi A7K2000 UltraStar 2TB drives.
On powering on the TS-859 the LCD showed the device is booting, then asked me if I want to initialize all the drives as RAID6.
You can opt-out of this procedure, or change the RAID configuration, by using the select and enter buttons on the LCD.
I used the default values and the RAID6 initialization started.
The LCD shows the progress, and the process completed in about 15 minutes.
Unlike the DroboPro that requires a USB connection and client side software, the TS-859 is completely web managed.
The LCD will show the LAN IP address, obtained via DHCP, login using the browser at http://%5BIP%5D:8080.
The default username and password is “admin”, “admin”.

Although the initial RAID6 initialization took only about 15 minutes, it took around 24 hours for the RAID6 synchronization to complete.
During this time the volume is accessible for storage, the device is just busy and not as responsive.

Unlike the DroboPro that shows no diagnostics, and generates an encrypted diagnostic file, the TS-859 has detailed diagnostics.

Unlike the DroboPro, email alerts are generated from the device and does not require any client software.

SMB / CIFS shares are enabled by default.

iSCSI target creation is very simple using a wizard.

While configuring the TS-859, I ran into a few small problems.
I quickly found the help and information I needed on the QNAP forum.
Unlike the DroboPro forum, the QNAP forum does not require a device serial number and is open to anybody.
The TS-859 default outbound network communication, SMTP, NTP, etc,. defaults to LAN1.
I had LAN1 directly connected for iSCSI and LAN2 connected to the routable network.
NTP time syncs were failing, after switching LAN1 and LAN2, the device could access the internet and NTP and the front page RSS feed started working.
Make sure to connect LAN1 to a network that can access the internet.
When I first initialized the RAID6 array, drive 8 was accessible and initializing, but didn’t report any SMART information.
I received instructions from the forum on how to use SSH to diagnose the drive, and after replacing the drive, SMART worked fine.
What I really wanted to do was compare performance, and to keep things fair I setup a configuration that had all machines connected at the same time.
This way I could run the tests one by one on the various devices, without needing to change configurations.

The client test machine is a Windows Server 2008 R2, DELL OptiPlex 960, Intel Quad Core Q9650 3GHz, 16GB RAM, Intel 160GB SSD, Hitachi A7K2000 2TB SATA, Intel Pro 1000 ET Dual Port.
The file server is a Windows Server 2008 R2, Intel S5000PSL, Dual Quad Core Xeon E5500, 32GB RAM, Super Talent 250GB SSD, Areca ARC-1680 RAID controller, 10 x Hitachi A7K2000 2TB SATA, RAID6, Intel Pro 1000 ET Dual Port.
The DroboPro has 8 x Hitachi A7K2000 2TB SATA, dual drive redundancy BeyondRAID, firmware 1.1.4.
The TS-859 Pro has 8 x Hitachi A7K2000 2TB SATA, RAID6, firmware 3.2.2b0128.

The client’s built in gigabit network card is connected to the switch.
The server’s built in gigabit network card is connected to the switch.
The TS-859 Pro LAN1 is connected to the switch.
The TS-859 Pro LAN2 is directly connected to the client on one of the Pro 1000 ET ports.
The DroboPro LAN1 is directly connected to the client on one of the Pro 1000 ET ports.

The DroboPro is configured as an iSCSI target hosting a 16TB volume.
The TS-859 Pro is configured as an iSCSI target hosting a 10TB volume.
The difference in size is unintentional, both units support thin provisioning, the DroboPro maximum defaults to the size of all drives combined, and the TS-859 maximum defaults to the effective RAID size.

The client maps the DroboPro iSCSI target as a GPT simple volume.

The client maps the TS-859 Pro iSCSI target as a GPT simple volume.

The first set of tests were done using ATTO Disk Benchmark 2.46.
Intel 160GB SSD:

Hitachi A7K2000 2TB SATA:

DroboPro iSCSI:

TS-589 Pro (1500 MTU) iSCSI:

TS-589 Pro Jumbo Frame (9000 MTU) iSCSI:

Read performance:
Device Speed (MB/s)
Intel SSD SATA 274
Hitachi SATA 141
TS-859 Pro Jumbo iSCSI 116
TS-859 Pro iSCSI 113
DroboPro iSCSI 62

Write performance:
Device Speed (MB/s)
Hitachi SATA 141
Intel SSD SATA 91
TS-859 Pro Jumbo iSCSI 90
TS-859 Pro iSCSI 83
DroboPro iSCSI 65


Summary:



The next set of tests used robocopy to copy a fileset from the local Hitachi SATA drive to the target drive backed by iSCSI.

The fileset consists of a single 24GB Ghost file, 3087 JPG files totaling 17GB, and 25928 files from the Windows XP SP3 Windows folder totaling 5GB.

DroboPro iSCSI:
Fileset Run 1 (B/s) Run 2 (B/s) Run 3 (B/s) Average (B/s)
Ghost 67998715 66449606 61345194 65264505
JPG 47376106 34469965 28865504 36903858
XP 33644442 21231487 18780348 24552092
Total 149019263 122151058 108991046 126,720,456


System load during Ghost file copy to DroboPro:


TS-859 Pro iSCSI:
Fileset Run 1 (B/s) Run 2 (B/s) Run 3 (B/s) Average (B/s)
Ghost 94824771 103356597 102596286 100259218
JPG 50591459 51817921 55830439 52746606
XP 39133922 38128876 37972580 38411793
Total 184550152 193303394 196399305 191,417,617


TS-859 Pro Jumbo iSCSI:
Fileset Run 1 (B/s) Run 2 (B/s) Run 3 (B/s) Average (B/s)
Ghost 91427745 113113714 112684967 105742142
JPG 49525622 51203544 51477482 50735549
XP 31910014 37429864 37699130 35679669
Total 172863381 201747122 201861579 192,157,361


System load during Ghost file copy to TS-859 Pro Jumbo:

This test uses the same fileset, but copies the files over SMB / CIFS.
Server SMB:
Fileset Run 1 (B/s) Run 2 (B/s) Run 3 (B/s) Average (B/s)
Ghost 108161169 116949441 115138722 113416444
JPG 53969349 56842239 55586620 55466069
XP 15829769 17550875 19336648 17572430
Total 177960287 191342555 190061990 186,454,944


TS-589 Pro SMB:
Fileset Run 1 (B/s) Run 2 (B/s) Run 3 (B/s) Average (B/s)
Ghost 64295886 65486617 63494735 64425746
JPG 52988736 52633239 53177864 52933279
XP 14345937 15703244 15506456 15185212
Total 131630559 133823100 132179055 132,544,238



Summary:

In terms of absolute performance the TS-859 Pro with Jumbo Frames is the fastest.
For iSCSI TS-859 Pro with Jumbo Frames is the fastest
For SMB the W2K8R2 server is the fastest.
If we look at the system load graphs we can see that the DroboPro network throughput is frequently stalling, while the TS-859 is consistently smooth.
This phenomena has been a topic of discussion on the DroboPro forum for some time, and the speculation is that the hardware cannot keep up with the network load.
Further speculation is that because the BeyondRAID technology is filesystem aware, it requires more processing power compared to a traditional block level RAID that is filesystem agnostic.

So let’s summarize:
The TS-859 Pro and the DroboPro are about the same price, around $1500.
The TS-859 Pro is a little louder than the DroboPro (with the DroboPro cover on).
The TS-859 Pro is not as pretty as the DroboPro, arguable.
The TS-859 Pro has ample diagnostics and remote managament capabilities, the DroboPro has none.
The TS-859 Pro has loads of features, the DroboPro provides only basic storage.
The TS-859 Pro is easy to setup, the DroboPro requires a USB connection and still fails to correctly configure, requiring manual intervention.
The TS-859 Pro outperforms the DroboPro by 52%.
The TS-859 Pro will stay in my lab, the DroboPro will go 🙂

DroboPro Impressions

In this post I am describing, and partly reviewing, my experience using a DroboPro over iSCSI.

I have been aware of of the Drobo storage devices for some time now, but never used one or knew anybody that owned one.

Recently a coworker’s large home RAID system had a controller failure, and after recovering the data, he migrated to a DroboPro using iSCSI.
After he told me how quite the device is, and how little power it uses, I wanted to try one out myself.
As I always do before purchasing hardware or software, I wanted to visit the community forums to see what owners have to say about their products.
But, to gain access to the Drobo Forums you have to register, and to register you need a valid Drobo device serial number, so there really was no way to know what was being discussed before purchasing a device.
This does seem rather weird, makes me wonder if they want to hide something, and searching online I found several other people that had similar feelings about Drobo’s forum policy, some saying so more politely than others.
Searching for DroboPro reviews online, I found mixed results, I found questions being asked about DroboPro and iSCSI, and several very negative Drobo comments, specifically unhappy Drobo Share owners.
One particular item of interest was the Drobo Users Community Forum, where the site owner closed the site in response to his dissatisfaction with the device and Data Robotics.
Even with the uncertainty of the device capabilities and stability, I decided to try one out anyway.
When I got the device I was surprised by just how small it is, about the size of a small form factor computer.
I unpacked the device, it comes with USB, FireWire, Ethernet, power cables, a CD and a user guide.
What I found missing was a getting started guide, and I went to the DroboPro support KB site in search of getting started documentation, I found none.
Admittedly, after I already had the device working, and as I was throwing away the packaging, I found the getting started steps printed on a piece of packaging.
I think a simple brochure would have been much more helpful compared to printing it under a part of the pretty packaging, that I discarded as I opened the box.
In order to configure the device you must use a USB connection and the Drobo Dashboard software.
I installed the dashboard, I plugged in the Ethernet cable and USB cables, and powered on.
Nothing, the dashboard software would not see the DroboPro.
Long story short, it turns out that you may have only one cable connected at a time, and since I had Ethernet and USB, the USB did not connect.
Admittedly, the getting started steps on the packaging did say Ethernet OR USB OR FireWire, but I did not literally take this as USB ONLY.
I now have the DroboPro running, and the dashboard sees the device.
There are no drives in the DroboPro, and the status light in the first drive slot is red, this means add a drive.
Strangely, even without a drive in the DroboPro a drive did appear in disk manager, the drive size was reported as a very big negative number, and a 32MB partition of unknown type, weird.
I inserted the first drive (Hitachi UltraStar A7K2000 2TB), the red light flashed for a bit, then turned green, and the second slot turned red.
I inserted the second drive, it turned green, and I continued inserting the remainder of the 8 drives.
While I was inserting the remainder of the drives, the second slot had some problem, I could hear the drive spinning up and down a few times, and then the slot turned red.
I replaced that drive with another, and the slot went back to green.
I went back to disk manager, and the previous 32MB disk was now gone, and instead there was a 2TB RAW drive, again a drive I did not create.
I opened the Drobo Dashboard volume manager, deleted the 2TB volume that was automatically created, and created a new 16TB NTFS volume.
The Drobo Dashboard automatically partitions and formats the volume for you, the supported file systems, on Windows, are FAT32 and NTFS.
While in the settings I changed the device settings to dual disk redundancy.
After applying this change, the device was busy for a few minutes flashing all drive lights, I assume while it was rearranging bits on the disks.
When you create a volume you must specify the partition file system format type.
My understanding is that the BeyondRAID technology used by Drobo requires understanding of the file system format, this is how they can dynamically move files around, and dynamically adjust the volume size, something that is not possible with traditional block level RAID.

Although the logical volume is reported as 16TB in size, the actual available storage using 8 x 2TB drives is about 11TB.

The logical volume size reported by the DroboPro to the OS is unrelated to the physical available storage size.
The Drobo documentation says one should create a volume as large as the maximum size you may ever need, and then simply add drives to back that storage as you need the space.
I tested this by creating 2 additional 16TB volumes, three times the physical storage capacity, and the drives showed up fine.
The one caveat is that if you ever format the partition, you must use quick format, regular format will fail.
While on the topic of sizes, the Drobo mixes SI and IEC prefixes, they say TB and GB, but they really mean TiB and GiB.
I even found a post about this on their forum, and the moderator response was that “most people don’t know the difference”, with this type of indifference the confusion will never be properly addressed.
I wanted to delete the 2 test volumes, and before I did this I wanted to USB Safely Remove the volume.
The safely remove failed, telling me that the device is in use, and that the DDService.exe was holding open the handles.
DDService.exe is the Drobo Dashboard Service.
Now was my opportunity to register with Drobo Forum.
After posting my question, a moderator almost immediately responded saying that I should use the dashboard to power down the device, and that the dashboard will unmount the volume.
I did not want to power down, I just wanted to unmount the volume.
I even found a Drobo support KB saying to use either the dashboard or the normal safely remove procedure.
Several users replied saying they have similar problems with the dashboard service preventing safe removal.
I deleted the two test volumes using the dashboard, it did appear to unmount them, and then reboot.
Still, one would expect the Drobo service to correctly respond to device removal notifications.
I wanted to know why the original drive in bay 2 had failed.
The dashboard does not display any diagnostic information, no drive power state, no SMART state, nothing.
When you right click on the dashboard tray icon there is an option to create a diagnostic report.
At first it seemed like the diagnostic report dialog hanged, then I noticed that DDService.exe crashed.
I restarted the dashboard and the service, and this time the report file was created on the desktop, to my surprised the file was encrypted.
Not allowing me access to any diagnostic information is highly unusual.
I found an old forum post on the now closed Drobo Users Community Forum, describing that the data file is a simple XOR.
But since the forum is closed the post was no longer available, fortunately the google cache still has the information.
Unfortunately it turns out that the encryption on newer models have changed.
I opened a support ticket attaching my diagnostic file, and requested the reason for the drive failure, I also asked why the file is encrypted.
I received a reply stating that the drive experienced 2 timeouts, and that is why it was kicked out.
The reason for the encryption is that apparently the log contains details of the BeyondRAID file movements, and that this is proprietary information.
Ok, I can understand not wanting to give away the secret sauce, but not making any diagnostic information available, and requiring tech support interaction for any questions will become a problem.

I was now ready to switch to iSCSI.
The PDF included on the CD was not much help, but the KB articles on the Drobo support site was helpful.
The steps calls for; power up with USB only, configure using dashboard, power down using dashboard, disconnect USB, connect Ethernet, power up, dashboard will reconnect after a few minutes.

The steps say that for DroboPro connected to a switch you cannot use automatic IP configuration, and you must use a static IP.

I could not see why no, so I ignored the steps and used automatic configuration, for whatever reason, it does not work.
I went back to USB, selected a static IP, rebooted, and this time after a few minutes the dashboard connected to the DroboPro, and the drive I had previously created re-appeared.
I assumed that the dashboard is configuring iSCSI targets for me,
I opened the Windows iSCSI Initiator, and as expected the target and device was already configured.
To test the device I started a robocopy of a large set of backup data from my PC to the DroboPro.
At this point I am not testing performance, I will do that later when I have the DroboPro connected to a dedicated Ethernet port.
The copy started, and I left the machine idle while it copied.
On returning later my machine had gone to sleep, and the DroboPro had gone to sleep, just the orange power light was on.
I woke up my machine, and noticed that the robocopy was still in progress, half way through a large file, but not resuming.
I waited, but the DroboPro did not wake up.
Every window I opened and every application I started on my PC would just hang.
In the end I had to reset my machine.
Back to the forum, and as before a moderator responded very quickly.
After a few back and forth questions, the moderator confirmed that it is a known problem with dashboard version 1.6.6 that I was using.
The suggested fix was to simply restart the dashboard and the dashboard service on wake from sleep.
This was not a reasonable solution for disappearing and hanging volumes will lead to data corruption.

I opened a support ticket, and was asked to revert to the older dashboard version 1.5.1.
On uninstalling the 1.6.6 dashboard, I received an error that I must be an administrator, but I am an administrator.
Support told me to disable UAC, and then uninstall.
This is rather surprising, Windows 7 has already shipped and the Drobo software is still not Vista / UAC ready.
On installing dashboard 1.5.1 I found that it is even more Vista unfriendly, the dashboard requires elevation, is added to the startup group, but applications requiring elevation are not allowed to auto start.
Even with the UAC quirks, so far with dashboard 1.5.1 I have not had any hanging problems on resume from sleep.
The dashboard includes an email alert feature.
But after I set it up, and pulled a drive, I did not receive an email alert.
Back to the forum, and a confirmation that the email alert is generated by the dashboard user session process.
This means that no user logged in, no email alert.
I find it rather weird that Drobo implemented iSCSI, and uses words like “enterprise ready“, “enterprise level“, and achieved “VMWare Ready” certification, yet there is not a single enterprise level feature in the product.
And not that I expect enterprise level reliability or performance in a consumer device, but basic functionality that is found in almost all comparable devices.
  • iSCSI and IP connectivity, but no web management interface.
  • USB for setup requires proximity to a physical machine, no remote management, and no virtual machine provisioning.
  • No DHCP support when connected to a LAN.
  • No raw volume management, must be a supported file system, must be managed by dashboard app.
  • I have to trust DroboPro with my data, but there is no diagnostic or health status.
  • I have to trust Data Robotics, but the forum is closed and diagnostic logs are encrypted.
  • Email alerts requires a user to be logged in, if I was logged in I would not need an email alert.
  • Software that is not fully Vista compatible, even after Windows 7 already shipped.
  • Software that shipped with known problems that could cause data corruption.
The DroboElite is more than double the price of a DroboPro.
The main differences between DroboPro and DroboElite are dual Ethernet ports, multi host access to volumes, and more volumes.
Although I do not have one to test, from what I can gather in documentation and the forum, none of the items above are any different.
As a direct attached USB or FireWire storage device some of the above mentioned items would be irrelevant, but iSCSI, I really expected more.

Next up, I’ll move the DroboPro from my workstation to my W2K8R2 server on a dedicated Ethernet port.

This will give me the ability to do some performance and benchmarking comparison between RAID6 DAS and the DroboPro BeyondRAID iSCSI.
[Update: 30 January 2010]