Last updated 5-12-2024
If you are using a Raspberry Pi 4B for your piserver, you will want to have faster, larger, and more reliable storage for your clients. The Pi 4B model has USB 3.0 (=3.1 gen 1) ports for connecting to external storage and it has a gigabit network port for your clients to PXE boot from and store data on this storage over the NFS configured by piserver.
Below I provide speed tests on products I have tried, slowest first. For fair comparison, in each case I used the same microSD to boot the Pi 4B and ran the test on the media inserted in one of the two USB 3.0=3.1 gen 1 ports. Also, each of the tested products used sda2 for the ext4 filesystem ( media/pi/rootfs) and the contents of that filesystem were the same and of similar size, except for the noted 16GB microSD. You can replicate these tests with the code below from https://github.com/TheRemote/PiBenchmarks
wget https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh chmod +x Storage.sh sudo ./Storage.sh /path/to/storage
While the Samsung Fit Plus, 128 GB USB 3.1 gen 1 drive only achieved 8.66% of its advertised max read speed of 400 MB/s, its write speed was the fastest of the three FIT drives I tried, although much slower than a Sata SSD with USB adapter.
The PNY 64GB USB 3.1 gen 1 gives significantly better performance in the x96max than in the Raspberry Pi 4B.
This USB 3.0 to Sata III adapter creates radio interference for my Logitech Unifying receiver. I had to plug my USB 2.0 Unifying receiver into a cable extending away from the Pi and this worked better if the Pi was in a metal case. This would not be an issue if running Piserver headless with no local wireless keyboard/mouse. This also gives better performance in the x96max.
For a standalone Pi workstation, one of the newer USB 3.0/USB 3.1/gen 1 FIT flash drives that fit entirely inside the USB 3.0 port solves the Logitech wireless Unifying interference problem, but will not be as robust as an SSD. The Lexar FIT read nearly as fast as my WD SSD and would not require any mounting arrangements. It might be preferred for write once, read many times, such as a media server. The Raspberry Pi 4B has two USB 3.0/USB 3.1 gen 1 ports so the Lexar, which comes in 32, 64, and 128 GB, could provide 2 x 128 GB of media storage.
Note that a microSD card read speed is limited by the speed of the Raspberry Pi 4B microSD slot hardware. All the above tests were done through the USB 3.0/3.1 gen 1 port. This next test is on the Samsung 32 Evo Plus microSD card in the microSD slot and was the boot drive for the above tests. As you can see, in this configuration, the microSD card max read speed was reduced from 68.25 MB/s to 41.48 MB/s. There are newer and faster microSD cards than the three I tested, but these will likely be limited by the speed of the Raspberry Pi 4B microSD port unless used in a separate USB 3.1 gen 1 media reader.
5-12-2024 Above tests were in 2022. I recently was ready for some more microSD cards and decided to try Lexar brand because I was so impressed by their USB 3.0 JumpDrive S47 tested above. I had not seen any tests in the Raspberry 4B of their microSD so chose a 3 pack of the 32 GB version of their microSDHC/SDXC UHS-1 E- series card for $15.99 on Amazon.
This has a little faster read speed than the Samsung 32 Evo Plus microSD card, but its write speed is a spectacular 4.6x faster! Here it is limited by the speed of the microSD slot on the raspberry pi. When retested in a USB 3.0 adapter it has a spectacular 77.6 MB/sec read speed.