Can a Raspberry Pi NAS beat an off-the-shelf NAS. That's the question.
The last time I tried it, I compared a hacked-together Pi NAS I built in a cave,
with a box of scraps to a nice, midrange ASUSTOR Lockerstor 4.
But that wasn't very fair. The Lockerstor 4 had faster RAM,
faster Networking, and a way faster Intel CPU. So of course it beat out the Pi in every benchmark.
And, while the Pi build cost about $350, the Lockerstor was two hundred bucks more, at $550.
But ASUSTOR launched a new lower-cost NAS, the Drivestor 4 Pro. It only costs $330, which is
right in line with the price for my Pi build. And like the Pi, it's powered by a lower-spec ARM CPU.
It also lacks some other Lockerstor features like internal NVMe slots and dual 2.5 Gig Ethernet.
But the Pi ecosystem wasn't resting on its laurels, either. I reviewed this new Taco board,
from Radxa. It puts together all the things I wanted into one tiny board, with five SATA ports,
2.5 Gig ethernet, and M.2 expansion—and this thing costs less than $100! Of course,
that's just the board. A full package with a case, Pi, and power supply will be about $200.
So a little cheaper, but both of these things use ARM processors,
both have 2.5 Gig networking, and both can run at least four SATA drives—3.5" or 2.5".
I tested both systems with the exact same Seagate 4TB IronWolf NAS drives.
I checked their power consumption. I tested swapping drives. I tested network throughput.
And by the end of this video, we'll know which one is better:
a Raspberry Pi NAS, or an off-the-shelf NAS.
Before we get started, I wanna get one thing clear—I put the 'paid content'
badge on this video because ASUSTOR sent me their Drivestor NAS, and they also
got Seagate to send me the test hard drives. They didn't have any input into the content,
they just wanted to see how their budget ARM NAS compared to the Radxa Taco. So let's get into it!
The System on a Chip on both boards is closely matched, but in this case,
the Pi's faster Cortex A72 CPU gives it a slight performance edge over the ASUSTOR,
and the built-in GPU means the Pi can include HDMI, which is missing entirely on the Drivestor.
That's a HUGE difference from the Lockerstor 4 I tested earlier this year,
which beat the Pi on, well, pretty much everything.
The Pi also beats the Drivestor for memory—it's slightly faster, and you can get Compute Modules
with up to 8 Gigs of RAM. The Drivestor only has 2, and it's not upgradeable.
The Taco has an additional SATA port on its board, but the Drivestor has a much more flexible
enclosure and toolless hot-swap bays, which makes installing bigger 3.5" hard drives easier.
In my earlier review of the Taco, I used 5 2.5" SSDs,
and those fit nicely right on the board. But SSDs are more expensive per gigabyte,
and you can't get high capacity 2.5" hard drives. So when I tested with 3.5" drives,
I had to use these SATA extension cables, and the build got a little messy.
Still, a heck of a lot nicer than my original Pi NAS, which took up my whole desk!
Both units have a single 2.5 Gig Ethernet port, and while the Drivestor drops the HDMI output,
the Taco retains it, so you could run the Taco connected to a display or a TV
and it can pull double duty as a NAS and media center.
The Taco loses out on USB, though; it only has a single USB 2.0 port,
while the Drivestor has three USB 3.2 Gen 1 ports.
Finally, what the Taco lacks in USB, it makes up for in flexibility:
there's an additional M.2 M-key slot for an NVMe SSD, and the final production
board should have an extra A and E key slot so you could even add on WiFi 6!
On specs alone, the Pi-based Taco actually edges out the more expensive Drivestor 4 Pro.
But specs are only one part of what makes a NAS useful. You also
need a good setup experience, and great software.
And the Taco falls a little short here. Besides not having a typical NAS-style chassis, with hot
swap drive bays, the Taco relies on open source NAS software. Tools like Open Media Vault are,
it pains me to admit, not quite as polished as ASUSTOR's ADM.
More flexible storage software like TruNAS isn't being built for ARM processors yet,
so if you want more advanced features, or flexible ZFS and caching support,
you'll have to do that by hand, since some things aren't supported out of the box by OMV.
In the course of making this video, I wanted to see how much SSD caching could speed up a
slow RAID volume on the Pi. As it turns out, I had to do a lot of work to get it working,
including recompiling the Pi's kernel by hand. Hey! I have a shirt for that. Red Shirt Jeff.com.
Now, SSD RAID caching on a low-cost NAS is fairly niche,
but ZFS also requires some hand tuning to get it working well.
What's cool is on the Taco, it's actually possible without sacrificing any of the
SATA slots. So the Taco does have a leg up there.
But in terms of NAS software, ADM 4, which is ASUSTOR's latest Linux-based OS,
is well-tuned for the Drivestor, and pretty easy to use for basic storage,
or more advanced things like running Docker images.
The UI is straightforward, and you can also enable SSH for remote command line access.
I used that a lot in my benchmarking, but ADM isn't quite the Linux experience you're used
to. A lot of useful Linux tools are missing, and they're not just an apt install away;
ADM is a custom distro, and it's not super easy to build your own software on it,
unless you can run it inside a Docker container.
But compared to Open Media Vault, at least, I liked the ADM experience better.
Open Media Vault has seen a lotta polish, and version 5 was a great upgrade. But it still feels
a little more like a command line wrapper instead an abstraction that conveniently hides away the
Linux underneath. It also does some questionable things, like allowing root SSH login by default,
but on the whole it does work, and it has a lotta plugins available to expand its functionality.
But in either case, I just want network storage. And fancy UI's like OMV and ADM
don't really matter if you just use 'em to set up your storage and don't look at 'em again.
So let's get into how these NASes perform.
For raw disk performance, I decided to test both NASes with a three-drive
RAID 5 array. Since both NASes use software RAID and have a limited PCI Express bus,
RAID 5 is a pretty good test for SoC performance limitations.
And the picture is a bit muddled. It looks like the Pi actually performs best for sequential
operations and large file reads, but the ASUSTOR performs a lot better for random IO, especially
for writes. I'm not sure if that's due to the SATA architecture or what, but it was consistent.
Since the Taco board had more ports, including an NVMe slot,
I decided to set up bcache to see if it would help. Bcache is a Linux caching system that uses
faster SSD storage as a read, write, or both read and write cache for slower hard drives.
And since this isn't commonly done on Raspberry Pis, since, well, it wasn't
even possible until the Compute Module 4, I wrote up a separate blog post on how I did it.
Anyways, using bcache, the Pi actually trounced the ASUSTOR,
but that's to be expected, since NVMe storage is a LOT faster than hard drives.
Especially when you're talking about an 8 TB Sabrent Rocket, which is complete overkill.
Huge word of warning, though: the way I had it set up adds a lotta risk,
since the write cache was only on one SSD. For production,
I'd make sure any bcache volume was also in RAID, or I'd set it up to only be a read cache.
I should also mention bcache didn't seem to be supported in Open Media Vault,
so when I was testing it, I had to do everything by hand in the command line.
ASUSTOR's ADM software supports cache management in the UI,
but only if your hardware supports it, like on the Lockerstor.
Disk performance is only one part of the critical foundation of NAS performance. It
has to be able to expose those disks over a network connection. For network performance,
my first test showed something interesting: both the Pi and
the ASUSTOR wound up only getting about 1.9 Gigabits of bandwidth on a 2.5 gig network!
I was puzzled by this, and also by the fact that the Pi seemed to struggle to keep up when I was
running a disk benchmark at the same time as the network test; that's this second graph here.
Long story short, drivers matter, a lot. I was using the in-kernel driver
for the Realtek RTL8125B, that's this chip you're seeing right now.
And that's the exact same chip used in both the Taco and the Drivestor.
And it seems there may be some performance issues with the driver that's in the Linux
kernel. Of course I recompiled the kernel and tried later versions...
but none of them gave me more than 1.9 Gigabits!
So next I installed the driver from Realtek's website, and wouldn't you know? I got 2.35
Gigabits of throughput, even when I was running disk benchmarks at the same time!
I'm guessing the Drivestor's also using the in-kernel driver, because the performance seems to
be crippled just like the Pi was with the kernel driver. Anyways, raw throughput is one thing,
actually copying files to and from the NAS is where the rubber hits the road.
And here's where the ASUSTOR seems better optimized.
The strange thing is I've gotten better performance on the Pi in the past, but over
the past few months, I haven't seen as good of samba performance, and I'm not quite sure why.
But the ASUSTOR was putting up faster file copy numbers consistently. Regardless of the
network driver, network file copies rely on a lot of subsystems, from the PCI Express bus,
the SoC, and software RAID running on the CPU.
And it looks like the Realtek SoC in the Drivestor beats out Broadcom's chip in the Pi.
As I mentioned earlier, I also tested a network copy with bcache, but that
didn't seem to make a huge difference. I think more investigation is needed,
but overall I can say the ASUSTOR has a leg up in consistent networking performance.
When it comes to CPU, I don't have any real need for things like live video transcoding,
so I didn't test that. The Taco and Drivestor are both
underpowered compared to more expensive Intel-based NASes, and these budget NASes
are better suited to simpler needs like file serving and running light container services.
But I did wanna measure power consumption more accurately. For something you'll likely be running
every day, forever, it's better if it doesn't add an extra fifty bucks to your electric bill.
And good news, neither device'll do that. But what surprised me is how efficient the ASUSTOR is.
I used the exact same three hard drives, in the same RAID configuration,
and both NASes were set up identically in terms of connections and benchmarks.
I'm guessing some of the increase on the Pi comes from the higher-powered Pi SoC,
as well as the PCI Express switch. But the numbers are at least close, especially under load.
The one number that might be surprising is the boot max—that's the maximum value I read on my
meter during initial power on. And it's really high on the Pi because the Taco doesn't stagger
the drive spin-up. When you turn it on, it immediately powers all five SATA slots. If
you're using hard drives, each drive pulls a lotta current as it spins the disk platters up to speed.
Traditional NASes like the ASUSTOR use staggered spin up—they spin up
sets of disks and wait for them to be ready before the spin up the others.
This ensures there's no point where all the hard drives cause an overload.
It wasn't a problem during my testing on the Taco, but I might be nervous if I had all five
SATA slots full of enterprise hard drives. But as I wrap this up, let's get right to the point:
the Raspberry Pi is a worthy alternative to a traditional low-end NAS. But only if you're okay
with getting your hands a little dirty. Some advanced features might require a little trip
to the command line, but the basics are pretty well covered with open source software like OMV.
But would I go out and recommend a Taco to everyone?
No. It's just not as plug-and-play. Not to mention ASUSTOR has a support plan,
thorough and simple documentation, and a sleek tool-less enclosure.
The Taco is a very nice piece of hardware, and it's the first Raspberry Pi NAS device
that I can say performs as well as a low-end NAS.
But I'd only recommend it if you're the type willing to get your hands dirty.
Some people say time is money, and why not spend a hundred bucks more on the NAS you can plug in
and use right away? But some of us don't put a monetary value on our time. For us, every
hour spent learning is priceless. And maybe, for some of us, the Taco's actually the better value.
There are links to everything I mentioned
in this video in the description, and until next time, I'm Jeff Geerling.