What's the better way to expand my small SSD?
I have a retina MBP (MacBook Pro (Retina, 15-inch, Mid 2014)) with an SSD of 256GB. Using it for a month or 2 now, I'm noticing that I'd like some more space (for using a Virtual Machine). There isn't yet a way to upgrade the interal drive, and I've been wondering what the more efficient upgrade is:
- Transcend Jetdrive Lite (Claims Read speed of 95MB/s, Write 60MB/s)
- USB3 memory stick (Bigger in physical size, smaller in disk space)
- External USB3 SSD / HDD (Which is what I'd least like in physical size)
The ideal "upgrade" would be small size, so I can leave it in and forget about it, but fast enough to use for my Virtual Machines (and big enough).
Being a Windows developer I need to run full blown VMs. Currently I have 2 VMs on my SSD, both of which use the storage quite a lot (a server and a compile machine). I'd now like to use another VM, mostly to use as a thin-client to connect to customers' servers. This means that the third VM (the one on the extra storage) doesn't need to be as fast as an SSD, nor does it need to be as big. I think it currently sits at around 30-40GB.
Currently I do not know what kind of read / write speeds are enough for my thin-client VM, because it's more of a 'i'll know it when i see it' problem.
Does anyone have benchmarks or advice on how to proceed?
Solution 1:
A traditional USB flash stick will not cut it for your purposes. This is not a question of R/W speed. Regardless of the R/W speeds (I own an excellent 128GB PNY Turbo stick), the on-board controller (the microchip that serves as the brains behind the drive’s operation) is built for low-cycle I/O operations. If you plan to run virtualization software from an external drive, with portability/size being the caveat, your best bet is purchasing an mSATA-based SSD with an exclosure.
Here’s a good image to put the size into perspective:
Bottom line: you won’t be able to reliably run a VM from a USB based flash drive. You need a dedicated external drive with a controller engineered to handle the operations you plan to execute.