High performance with Unraid: What are my options?

Howdy,
I’m building a new workstation for my company that’s going to be used for live video production including 4-channel 1080p recording and playback, among other things. We’re recycling the i9 7900X from another system, which has way more cores than our production software can make use of, so I thought I could split resources between a dedicated NAS (exported clips are often shared to other teams at our events) and a Win10 VM with a GPU and Blackmagic card passed through. I’ve completed a proof of concept on a much lower-end system, so now it’s time to start building. To do this, I figured Unraid would be my best option, but I’m wondering about storage. The chassis this is going into has an array of internal and external HDD bays I can populate, but since Unraid doesn’t RAID (that I’m aware of), I’m not sure that duct-taping a bunch of SSDs together is going to give me any performance boost. Am I better off with using a RAID card and having Unraid treat that as a single disk in the array? Or is there some secret sauce I’m missing. I don’t have a problem dedicating the VM’s virtual drive to an NVMe M.2 or PCIe card, but if I can shove the thing full of commodity SATA SSDs and do a RAID 5 or 10 or something similar, that would be fine, too.

I suppose “Run Windows natively and setup a shared folder” is also an option but that’s not as fun.

Edit: I should also mention that the biggest reason we want high-speed storage is because, if we decide we want to do live playback from the instant replay system (which we try to avoid) there’s a chance we get choppy playback unless the video can be cached to RAM first, and because we often end up scrubbing through the timeline or playing back video faster than real-time, the drives get hit harder than just the 4x100 Mbps read/write. Doing some additional research I noticed that it’s possible to do a btrfs RAID but only on the cache drive. It’s most likely that video to be played back would be recent, so this might still be an option, but I would love to hear input from someone who’s done this before and what kind of performance, reliability, and headaches came of it.

Better edit: I couldn’t sleep so I was watching storage videos and re-watched the GN video where Wendell basically walks through exactly what I was looking for with a link to a write-up and everything. So, uh, sorry for wasting your time if you read all this. Once I have my hands on bunch of drives to test this on I’ll report back.

1 Like

If that works out for you, please reply back to yourself, with the solution, and mark the solved tick box?

You might also take a look at the wiki

https://wiki.unraid.net/Hardware_Compatibility#PCI_SATA_Controllers
For controllers.

I am a massive fan of ZFS, but if you find a more performance solution, feel free to post it!

I found the missing piece; ZFS on Unraid doesn’t support using ZFS pools as part of the array, which is what I was initially hoping I could do. It looks like the way people are doing this is using ZFS to create the pool and setting up SMB shares on the underlying Linux system, then using Unraid as a dedicated VM host largely separate from the ZFS stuff (unless they move their VM to the ZFS pool or something).

1 Like

Thanks for the update!

That is odd about the pools thing; I’ll have to look see what they do with the whole thing.

Per the ZFS on Unraid thread on the Unraid forums…
“This plugin does not allow you to use ZFS as a part of the array or a cache pool (which would be awesome by the way).”

If something has changed I would be very keen to know.

This topic was automatically closed 273 days after the last reply. New replies are no longer allowed.