Fusion Drive - Did Apple just do us a favour?

Moderators: jhartley, MSR734, nola

Fusion Drive - Did Apple just do us a favour?

Post by tangles » Fri Oct 26, 2012 11:11 pm

So,
the Mini and the iMac have a Fusion drive, which anandtech has nicely explained is basically software management of SSD and a conventional drive. (both appear as sata devices etc)

I'm sure hoping that we can seperate the Flash and Spindle with Disk Utility so that you get two physical drives on the desktop instead of the one logical drive...

i.e. use the flash for HFS and therefore boot... (do I hear cache and zil anyone? :!: ) and use ZFS with the spindle for home and any other ZFS filesystems you want...

Fingers crossed...
tangles Offline


 
Posts: 13
Joined: Sun Sep 16, 2012 5:49 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by si-ghan-bi » Sat Oct 27, 2012 7:05 am

Yes, you can separate them.
si-ghan-bi Offline


 
Posts: 145
Joined: Sat Sep 15, 2012 5:55 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by grahamperrin » Sat Oct 27, 2012 8:31 am

Thanks, tangles – I knew nothing about this (haven't followed Apple news recently). Interesting.

… The version of Disk Utility that comes with Fusion Drive is unique. Earlier versions of Disk Utility can't be used with a Fusion Drive. …


– Mac mini (Late 2012) and iMac (Late 2012): About Fusion Drive

Is the diskutil similarly unique? I wonder.
grahamperrin Offline

User avatar
 
Posts: 1596
Joined: Fri Sep 14, 2012 10:21 pm
Location: Brighton and Hove, United Kingdom

Re: Fusion Drive - Did Apple just do us a favour?

Post by tangles » Sat Oct 27, 2012 6:33 pm

ORSM!

I'm happy...
tangles Offline


 
Posts: 13
Joined: Sun Sep 16, 2012 5:49 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by si-ghan-bi » Wed Oct 31, 2012 10:47 am

Yes, Apple DID us a favor!

http://www.macrumors.com/2012/10/31/app ... lder-macs/
http://jollyjinx.tumblr.com/post/347009 ... in-my-last

It works with ZFS as well!!

The question now is: how to get it without reformatting: I don't have enough disks to move the data forth and back.
si-ghan-bi Offline


 
Posts: 145
Joined: Sat Sep 15, 2012 5:55 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by tangles » Wed Oct 31, 2012 4:52 pm

okay, this is looking very interesting.

A couple more questions.

Let's say you start accessing a file that you haven't accessed in quite some time. So Fusion does its thing and starts copying it to the SSD to speed things up for you. What happens to the original files on the spindle? are they deleted once transferred? or are they just moved to a hidden folder or something like that?

By using ZFS with Fusion (as per Jollyjinx's efforts) I guess there is exists a situation where your ZFS volume may not actually contain all the data that you "expect" it to contain.
Let's say you decide to do snapshot and then zfs send/receive – how does one get the files sitting on the SSD into the zfs send/receive? I guess you would have to snapshot every 5 minutes or so and automate the send/receive, which is not something that I really want to do so frequently.
Also, what happens if you remove the ZFS drive and break the Fusion setup/config. Again, you're not 100% sure that all your files (especially the most recent) are actually on the ZFS drive.
There's also the slight possibility of data corruption occurring due to the additional copying between a checksummed device and a non-checksummed device.

I intend to upgrade a Mini soon and personally, I'm not intending to use Fusion with a spindle drive configured as ZFS. I'll happily prefer to configure it manually and "know" where any important data is, and "know" that it's being backed up via snapshots as well. I'd prefer to splash out and buy a 512 SDD if I need more storage and speed.
tangles Offline


 
Posts: 13
Joined: Sun Sep 16, 2012 5:49 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by grahamperrin » Wed Oct 31, 2012 5:34 pm

tangles wrote:… What happens to the original files on the spindle? are they deleted once transferred?


As far as I know, CoreStorage management of logical volumes is block-oriented. Cryptology ePrint Archive: Report 2012/374

… By using ZFS with Fusion (as per Jollyjinx's efforts) I guess there is exists a situation where your ZFS volume may not actually contain all the data that you "expect" it to contain.


I have used ZFS with CoreStorage for a few months, I'm not aware of dataloss.

… what happens if you remove the ZFS drive and break the Fusion setup/config.


Re: removal, please see viewtopic.php?p=1335#p1335 under FYI: ZFS on Fusion Drive actually works.

… possibility of data corruption occurring due to the additional copying between a checksummed device and a non-checksummed device. …


Wherever I use ZEVO with CoreStorage, I scrub regularly. I observe corruption with only one disk: a 500 GB LaCie Big Disk Extreme (300794EK) that I know is imperfect.

The BUGS section of the man page for fsck_cs(8) states that fsck_cs does not perform an exhaustive validation, nor is it able to fix many of the inconsistencies that it does detect.
Last edited by grahamperrin on Fri Mar 29, 2013 11:50 am, edited 1 time in total.
grahamperrin Offline

User avatar
 
Posts: 1596
Joined: Fri Sep 14, 2012 10:21 pm
Location: Brighton and Hove, United Kingdom

Re: Fusion Drive - Did Apple just do us a favour?

Post by tangles » Wed Oct 31, 2012 6:45 pm

Hi Graham,

I have used ZFS with CoreStorage for a few months, I'm not aware of dataloss.


I didn't use the words data loss, because I wasn't referring to data loss. I guess the more accurate wording is data location.

Let me re-ask the question this way:

How can you guarantee you're backing up files using ZFS' snapshot feature, when the files may not physically be located on the ZFS filesystem? (i.e. because they're on the SSD due to recent activity)

Snapshots cannot extend to the SSD for obvious reasons, so Fusion actually breaks ZFS's snapshot/backup feature. This point needs to made very clear to those not quite knowledgeable enough about this, but are wise enough to use ZFS.


Wherever I use ZEVO with CoreStorage, I scrub regularly


mmm, this won't help you if there is data corruption occurring on the SSD. You'll simply be scrubbing already corrupt data.

Take this scenario:

Files get copied from the ZFS spindle to HFS SSD, therefore you don't 100% know that the SSD has written the data correctly because there's no checksum feature to verify the write transaction. The OS is just taking HFS's word that it has.

So, some time parses, the user performs quite a few reads & writes (i.e. saving/updating the files) and is loving the speed increase. And let's just say that the last write happened to incur an issue such as a power spike, brown-out, defective ssd cell, whatever.... We now have a situation where file(s) are not what they should be.

Some more time passes and the user has since moved onto something else and doesn't use the now corrupted file(s) for some time.
So Fusion kicks in and decides to copy the file(s) back to the ZFS spindle. This is where the corrupted file(s) are given to ZFS. ZFS is only going to write the already corrupted file(s) and "transfer" the existing problem onto a ZFS filesystem. ZFS can't help in this situation, in fact, it can now only guarantee that the corrupted file(s) don't become any more corrupt. Scrubbing at this point cannot undo the pre-existing problem or help.

Now this may be very well be making a mountain out of a mole hill, but it demonstrates my point more clearly that moving data away from a checksummed filesystem and then back again can introduce this issue. Hence I won't be using Fusion, I value my data too much. We already have to deal will errors in memory, hbas and nics, and software drivers, so using ZFS is not always going to help, but it's a big help.

This is why I have had my personal data on a ZFS filesystem for years now. I will never move these files away from a ZFS filesystem, especially when our children will be dealing with petabyte drives!! I'm wanting to protect our photos/videos and memories for them just as much for me right now.

I don't want to start up a big "hoo har" about this, but more importantly, I think the main thing to know is:

Having Apple's Fusion move data away from a checksummed filesystem and then back again can introduce uncorrectable errors that ZFS cannot fix.

Using Apple's Fusion with a ZFS filesystem cannot guarantee that ZFS's snapshot feature will backup all your data.


These are indisputable facts.
tangles Offline


 
Posts: 13
Joined: Sun Sep 16, 2012 5:49 am

Re: Fusion Drive - Did Apple just do us a favour?

Post by grahamperrin » Thu Nov 01, 2012 1:34 am

tangles wrote:… Having Apple's Fusion move data away from a checksummed filesystem … 


As I understand it, that does not happen.

Consider the first step in Patrick's first post where disk1 was the SSD:

Code: Select all
diskutil cs create bla disk1 disk7


  • created a CoreStorage logical volume group (LVG)
  • did not create a logical volume family (LVF)
  • did not create a logical volume (LV)
  • did not create a file system.

Points:

  • the CoreStorage verb of diskutil is comparable to the zpool command of ZFS
  • the create coreStorageVerb is comparable to the create subcommand of zpool.

Comparable, but differences are significant. diskutil aside for a moment, a first step for a user of ZFS might have been:

Code: Select all
zpool create -o ashift=12 bla /dev/disk1 /dev/disk7


  • creates a pool with a root file system

– and thanks to dynamics of ZEVO, that file system should mount automatically.

----

Back to Patrick's first post,

Code: Select all
diskutil coreStorage createVolume DE85044F-EADA-4F26-93B7-8CD0ADF006EC jhfs+ blub 500g


  • created a logical volume family (LVF)
  • created a logical volume (LV) named blub at /dev/disk8[/i]
  • created a a JHFS+ file system named blub – content hint Apple_HFS

– diskutil will not allow a ZFS-oriented content hint.

in June 2012 I gave feedback to Apple requesting allowance of content hint zfs_pool_proxy and/or content hint ZFS

----

Now to Patrick's third post:

Code: Select all
diskutil unmount blub


– unmounted the JHFS+ file system

Code: Select all
zpool create foozfs /dev/disk8


  • destroyed the JHFS+ file system
  • created a pool named foozfs with a root file system foozfs

– whilst the JHFS+ file system blub was destroyed, the underlying logical volume blub remained.

Note, no specification of ashift; with this application of CoreStorage as a foundation for the pool, that specification is probably unnecessary even where an Advanced Format drive is (or might be) in the pool.
grahamperrin Offline

User avatar
 
Posts: 1596
Joined: Fri Sep 14, 2012 10:21 pm
Location: Brighton and Hove, United Kingdom

Re: Fusion Drive - Did Apple just do us a favour?

Post by tangles » Thu Nov 01, 2012 6:38 am

Ah, okay...

I'm struggling to understand what you're trying to convey with your post.

Are u suggesting that corestorage cannot transfer data on an SSD disk that is HFS to a ZFS disk within its family/group? (Or whatever LV/LVG/LVS cs uses that's synonymous with a ZFS pool)

If so, then there is no point in using ZFS with Fusion because no speed gains will occur due to that hint thingy you pointed out...

Can anyone chip in with some more knowledge cos either way, I don't see any net value to use ZFS with Fusion atm...
tangles Offline


 
Posts: 13
Joined: Sun Sep 16, 2012 5:49 am

Next

Return to General Discussion

Who is online

Users browsing this forum: ilovezfs and 2 guests

cron