Building your own NAS is one of the best upgrades you can make to your home network, whether you're going all out with a TrueNAS setup or just setting up a basic file share. Distributed, resilient, and high-performance storage is often the bottleneck in the highest performance systems, with considerations like locking, asynchronous operations, and durability becoming serious problems to solve. Such systems can often be extremely complex and prohibitively expensive, reserved for only the largest enterprises with the most intense storage needs.

Increasingly though, there are some more consumer-friendly options available. The prominence of clustered computing workloads with tools like Kubernetes has helped this, and even home lab-friendly hypervisors like Proxmox can support some pretty advanced clustered storage options. So we'll take a look at some of the more affordable, and some of the more extreme, options for higher-performance NAS alternatives.

We won't be looking at 'upgrades' to a NAS here. We'll focus on the more overkill alternatives that individuals and companies typically graduate to once a NAS is feeling a little cramped for them.

3 Distributed file systems

The more nodes the better, no?

Source: Wikimedia Commons

One great example of network file system alternatives that are faster than a NAS is a distributed file system like Ceph or GlusterFS. These file systems spread your data across multiple servers (or nodes), with some kind of management backbone telling clients where each chunk of data is. A file might be split into many chunks and spread across nodes, allowing a higher throughput of parallel read and writes, while also giving more options for resilience, scalability, and consistency by maintaining multiple copies of a file across a cluster. This decentralized approach introduces a lot of problems though, and some clever algorithms are needed for everything from distributing traffic to managing race conditions. However, when it's all working correctly, the scope for extremely high-performance file systems is huge.

These file systems can be massively complex, and at the enterprise level are huge operations, but can also be approachable. If you're a homelabber, you might even have experimented with this type of file system with something like Proxmox, which supports Ceph natively. The downside of these clusters is that they're heavily interdependent on the interconnects between nodes, as many distributed or high-performance workloads often are. For large clusters, this might mean 25/40/100Gb connections between nodes.

2 Direct-attached storage (DAS)

Fancy and efficient

Another example of extremely high-performance, enterprise-oriented network storage that's an alternative to a NAS is direct-attached network storage. In this structure, extremely high-performance storage is externally attached to a central server, which is then shared directly over the network as accessible storage. Typically, these devices are standalone, directly-attached storage enclosures, for example, a large RAID or SSD array, which then gets connected directly to a host server and made available via a traditional protocol like NFS. Raw access to the storage is delegated to the standalone device, while the server handles the network protocols, acting as a gateway to the storage array.

There are a lot of benefits to this setup, especially in a high-performance environment. DAS arrays are higher performance, with a dedicated read-write connection to the server, offloaded read/write operations, and typically a high-performance array from the outset. They're also more easily expandable, and are designed for a high level of reliability and throughput from the outset. The downside here is that they are expensive and difficult to configure, so are typically only used in high-end enterprise environments where network operations like video editing or other I/O intensive workloads.

Typically, you'll see a workload like this deployed as a 'head unit' or main central server, which then has one or more other storage arrays connected to it.

1 Storage area networks (SANs)

The king of enterprise storage arrays

A SAN is a high-performance network that directly connects a range of storage devices to client computers as if they were connected to that computer directly. This typically works by combining a group of devices, for example, a group of SSDs, and connecting them to devices via SAN fabric and HBAs (host bus adapters) which allow a device to connect to the network fabric. This all sounds a bit complicated, but it's easier to think about when compared to a traditional file server.

Traditional file servers (like a NAS) allow a device to connect and retrieve data on a per-file basis. SANs provide access on a per-block basis. This allows the operating system of the device connected to the SAN to operate on the files as if they were connected locally, instead of requiring another layer of protocol overhead to retrieve data.

Implementing this is difficult, and we've touched on some of the specialized hardware needed above. Typically, a SAN network is entirely separate from a LAN, and at each stage dedicated hardware is required (including switches, HBAs, and servers).

SANs can be optimized for extremely high performance and low-latency, while also integrating a high level of resilience and easy scalability. The downside is that this can be expensive, but for the biggest enterprises with huge storage needs, it can be justified.

Moving past a NAS can be expensive

Whether you're a home user, small business owner, or even an enterprise customer, one thing might be clear now. There is a lot of money in storage, especially the kind of high-performance, distributed storage we've been talking about here. This is an entire sector of the market which some big enterprises have made a lot of money providing to everyone from tech companies to law firms, often at great cost.

For the vast majority of people, including the majority of small business customers, a typical NAS setup is usually fine. This is the kind of service that, in one way or another, many of us use regularly, with things like Microsoft's SharePoint effectively emulating the structure of a well-permissioned NAS system, giving users file system access to some remotely mountable volume where they can store and access files with a per-file or per-mount permissioning system.