I have a small mini pc as server similar to [1], which has a super nice small form and has an internal slot for a 2.5" ssd disk. Currently I have a 2TB SSD, but it is filling up rapidly.
My options are:
Buy a way more expensive 8TB SSD and replace the existing one
Buy a much cheaper 8TB HDD + enclosure and connect it via USB.
I wonder what are the pros and cons of each option. I like 1 more because the form factor of the homelab is maintained and I don't need to plug yet another thing. OTOH I'm allergic to spending money 😆 so a cheaper solution (about 4 times cheaper) is always welcome.
I cannot recommend any USB-connected drive for long-term use. (Only for portable devices that get plugged in for a little while at a time.) In the long term, any USB drive will randomly reset during periods of heavy use -- including heavy writes, meaning some data will get lost.
USB enclosures tend to just crap out completely after a year or two, if used continuously on a server. I know because I twice used 1TB external drives with OpenWRT (home router) devices. The data will be safe on the drive, but you'll have to replace the enclosure.
My first recommendation would be to look very carefully at the chassis and see if there's any way at all to fit another SSD inside it. 2.5" SSD's are usually thinner than 2.5" hard drives, so it may be possible, and most motherboards have more SATA ports than they need.
Is there possibly an NVMe slot on the motherboard? Or an open PCIe slot where you could put an NVMe adapter?
My second recommendation would be using a 2.5" hard drive. Newegg has a 5TB one for $135, but unfortunately that's as large as they seem to go. It will be a bit slower than an SSD, but still probably around 150MB/s for sequential access.
My third recommendation, if money is really tight, would be an additional server, with a large 3.5" hard drive. This will be a lot cheaper than an 8TB SSD, but adds complexity, electricity use, space use, and possibly fan noise.
If this is for 24/7 use, don't do USB drives. The problem, typically, is that the SATA->USB chipsets will, at some point, shit themselves and you'll have random things crashing or even data loss.
They're really just not designed for constant load, and a server-esque workload is just asking for shit to break at random and data to be lost.
And yes, I know lots of people use them like this, but this is very much a case of it's perfectly fine until it's not.
Neither of those options is particularly appealing to me. I'd look at building a more respectable file server, with 4 or more SATA ports. I'd have a relatively tiny SSD to host the OS, and any number of HDDs in some variety of RAID array
SSDs are fast; HDDs are slow. I would not want my operating system hosted on an HDD if there is any way to avoid it. An external USB drive would have slow file operations to and from that drive; an internal HDD would slow the entire system.
Says on the product page that that Beelink supports a maximum 2TB SSD, so I wouldn't go buying another unless you're sure it can.
As others have said, no USB drives as I've had a failure with one too hence me now having a NAS. I know you said you're allergic to spending money but saving up for one was the best thing I've bought for a while.
USB is slow, and will kill the drive if used 24/7. I know it's hard to expend too much money on a dedicated box for storage but long term you'll thank yourself for investing.
3TB of data I lost and paying to recover that data? Dammit, hindsight is a bitch