One mac, Two or more storage devices - how to divide things?
Solution 1:
My setup is the following :
- Macbook pro 2009, 13"
- SSD (Intel X25M Postville) replacing the superdrive, used as system + home folder disk
- Factory HDD used for music and pictures storage
I tried to move my home folder to te HDD, here are my conclusions : when you move your entire home folder to an HDD, your mac boots fast, but you don't get too much performance gain while opening applications (even apps that do not use any document, like safari). That's because when the app starts up, it loads it preference and cache files from your library. If it is on the second drive, startup of apps is nearly as slow as when you use your HDD for booting.
I now use my HDD for iTunes/Aperture and vmware images only. These apps are a bit slower than the others (but still as fast are when I didn't have a SSD). But I did not do as Matt recommends : I created new iTunes and aperture libraries directly on the HDD, using the alt key at launch. I do not like symlinks, that can break if you unmount your HDD, for maintenance or by mistake for example, leaving your home folder in a non consistent state.
Last points :
- with this configuration, you have to be careful of what files you put on the HDD if you have multiple accounts on your mac : these files are accessible to anybody by default, and filevault will not protect them (unless you use Lion which allows full-drive encryption).
- And you need to setup Time machine to include the HDD (if needed), which includes only the system drive by default.
Solution 2:
Moving the Home Directory to the SSD
Macintosh Performance Guide has an excellent writeup on the subject. Most important perhaps is the admonishion to Create another admin account that resides on the boot drive. Else, if your drive containing the home directory goes away, you cannot log in.
Tips on how full or empty to keep your boot drive and any gotchas you learned the hard way are greatly appreciated.
Another MPG article; very informative. Synopsis: As you approach 2/3 - 3/4 full the disk's performance can decrease about 40%. And in the spirit of this question-thread - this does not happen to an SSD.
Solution 3:
I own a botique short-run book publishing company. For all intents, the design and printing operations are a one-man operation. Time spent waiting for a spinning beach ball is wasted and unprofitable time. Funds are tight for getting the latest equipment, but I try to incorporate the technology that provides the best bang for the buck. I recreationally dabble in PHP/MySQL web development.
My main system is an Early 2008 MacPro (3,1). I have a 2011 mid-level Mac mini as a secondary design machine and internal web/database server. Both systems boot from 128GB SSDs that also hold the user folders and pull publishing project data from spinning hard drives. While the MaPro is a processor-gifted rig, keep in mind that the Mac mini runs SATA twice as fast.
Here's how I have my Mac Pro:
128GB SSD
- iCloud files
- Dropbox files
- Fonts
- User folders
- Personal files except for music, movies and photos
- Photoshop cache files
- Typically have 20GB to 40GB free space at any given time
Secondary HDDs running ZFS
- Backup software install files
- iTunes library
- iPhoto library
- Folder of movies
- All my client publishing projects
I've managed to live within a 128GB space by keeping the big stuff off my SSD. No "fancy" things like symbolic links. iTunes and iPhoto are one-time points to their files. I manually move movie rips from /users/movies to my HDDs... When I get around to it. I use Dropbox mainly for 1Password sync and iCloud holds much of my word processing, spreadsheets and presentations for access from the MacPro as well as my iOS gear.
I have always manually managed file locations for my client projects in InDesign, Illustrator and Photoshop. Most client files are small enough (5MB to 50MB typically) that they load quickly, especially because the programs run from the SSD. I notice the speed difference of the hard drive when I build 100MB to 500MB Photoshop files. I've discovered that saving to PSD is single-threaded and slow where Photoshop's saving to a layered TIF is multi-threaded and much faster.
This relatively simple and predominantly manually set up system works extremely well for me... almost all of the time. On the personal side, my only major housekeeping functions involve movies.
I am contemplating building a Fusion Drive on the mini but haven't done so yet. As I begin to create more intricate book designs that require larger Photoshop files, I would happily trade my complete control provided by my current setup for the automatic tiered storage provided by a Fusion Drive.
I drive a manual transmission car because it's more fun. I use a Mac because OS X just works better than Windows. If I can find a way to leverage the ZFS data integrity with a Fusion Drive's fluidity, I'd go that route in a heartbeat.
Solution 4:
For installation of the OS, apps et cetera
Give one disk to JHFS+.
If you're limited to two disks and one is hard, use the hard disk.
For integrity of user data
Give at least one other disk to ZFS.
Why not HFS Plus?
A little HFS test – a command-line presentation by @jolly of DIY Fusion Drive fame – demonstrates HFS Plus failure in one situation.
In other situations: corruption of data may go unnoticed, and be propagated through all backups, to the point of no recovery.
Such corruption may be undetectable by utilities such as Disk Utility and Alsoft DiskWarrior (that's the nature of HFS Plus). Effects on end users range from subtle to extreme; and without positive identification of files that are corrupted, it can be extraordinarily difficult to pinpoint the source of a problem.
Why ZFS?
See for example the accepted answer to a question in Server Fault, ZFS Data Loss Scenarios –
… I've never lost data with ZFS.
I have experienced everything else …
If the disk is hard (rotational)
Avoid a mixture of file systems that includes HFS Plus:
Since HFS+ has a single global lock for all metadata updates (held across the I/O) it is highly sensitive to disk latencies. …
(My current use of JHFS+ and ZFS on a Seagate Momentus® XT ST750LX003-1AC154 solid state hybrid – internal to a MacBookPro5,2 with 8 GB memory – is good enough, but could perform better without that mixture on the single disk.)
With three or more disks, just one solid state, and Mountain Lion
Give one slice of the SSD to a CoreStorage LVG, then pool that with your JHFS+ startup volume. Aim: Fusion Drive-like behaviour.
Give a different slice of the SSD to ZFS. Either:
- simply
zpool add poolname cache /dev/disknslicen
or - give the slice to CoreStorage the add that CoreStorage to your ZFS pool.
Approach (1) is well established for performance gains through level 2 adaptive replacement cache. Brendan's blog » L2ARC Screenshots (2009-01-30) reminds us that rebooting the operating system causes L2ARC to go cold and:
We are also working on a persistent L2ARC, so if a server does reboot it can begin warm, which will be available in a future update.
Approach (2) aims to bring auto-tiering to ZFS without a go-cold at reboot. A routine check of integrity of data (scrub
) might demote data from the high performance tier … if so, I wonder whether another routine can mitigate the effects of demotion – an incremental zfs send
… (backup) should read, from the ZFS pool, recently written blocks; and so CoreStorage should promote things to the preferred tier.
Multiple pools sharing a single SSD
The accepted answer to a question in Server Fault observes:
It's not a good idea to share an SSD between pools for reasons of data integrity and performance. …
However, the subject for that question was ZFS - how to partition SSD for ZIL or L2ARC use? (2011-02-22) – predating ZEVO, Fusion Drive etc.. Under ZEVO resilience to untimely loss of L2ARC (2012-11-04) my initial guess is that with multiple pools sharing a single SSD, the L2ARC part of that SSD need not pose a risk to integrity of data.
(I have no experience with ZIL.)
Personally: for the past few months I have used ZEVO ZFS for my home directory, with CoreStorage to encrypt the ZFS dataset and the startup volume. Different passwords, so (better than FileVault 2) no other administrator of the machine can access my data.
Apple Disk Utility is currently too bugged to present a true overview, so here are alternative views.
The one solid state hybrid drive in the laptop:
Plus an external hard disk drive (StoreJet) and its cache vdev (Verbatim, USB flash drive) for level 2 adaptive replacement cache:
Hint: the cache device can be physically removed whilst actively using the hard disk drive. No harm should result; this is one of the beauties of ZFS.
Generally: if the idea of mixing two pool technologies (Apple CoreStorage plus ZFS) puts your head in Here be dragons! territory then:
- set aside thoughts of mixtures
- for ZFS, do at least take a look at MacZFS or fuller-featured ZEVO.
@bmike will probably wish for a tl;dr addition to this answer … a diagram might make the whole caboodle easier to digest.