Apple Discontinues ZFS Project 329
Zaurus writes "Apple has replaced its ZFS project page with a notice that 'The ZFS project has been discontinued. The mailing list and repository will also be removed shortly.' Apple originally touted ZFS as a feature that would be available in Snow Leopard Server. A few months before release, all mention of ZFS was removed from the Apple web site and literature, and ZFS was notably absent from Snow Leopard Server at launch. Despite repeated attempts to get clarification about their plans from ZFS, Apple has not made any official statement regarding the matter. A zfs-macos Google group has been set up for members of Apple's zfs-discuss mailing list to migrate to, as many people had started using the unfinished ZFS port already. The call is out for developers who can continue the forked project."
Daring Fireball suggests that Apple's decision could have been motivated by NetApp's patent lawsuit over ZFS.
Great (Score:5, Funny)
Now if you're using zfs on Mac OS, you can't complain if it loses your data. You already knew it was forked.
The straight dope (Score:5, Interesting)
Posting anon, lest someone guess who my sources are.
The long and short of it was, Apple and Sun couldn't come to terms on the licensing. Sun wanted a lot of money for giving it to Apple under different terms and the amount they wanted was in the range of "hell, we could do it ourselves for that".
Add to that, the Oracle buyout and Sun going into management paralysis, and Apple decided to go it alone.
Apple's CoreOS team includes several of the lead engineers from the ZFS project (who fled the remnants of Sun in the Schwartz melt-down), and the architect of the BeFS. I'm expecting Apple to do their own next-generation file system, probably in the 10.7 timeframe.
Re: (Score:2)
Posting anon, lest someone guess who my sources are.
The long and short of it was, Apple and Sun couldn't come to terms on the licensing. Sun wanted a lot of money for giving it to Apple under different terms and the amount they wanted was in the range of "hell, we could do it ourselves for that".
That sounds odd to me. Why would they need different licensing terms? Especially as they apparently had a port that was already somewhat distributed, at least in developer builds - presumably they thought that the license allowed them to do that at the time?
Re:The straight dope (Score:5, Insightful)
Why would they need different licensing terms?
They probably wanted to rename it without changing it. Apple likes renaming things. Microsoft OTOH, loves using the same name as everyone else, and changing stuff to break interop.
Re: (Score:2)
Haha, that did make me laugh :-) You compressed quite a lot of truth into a very small amount of text. There is a certain elegant symmetry to the two companies when you put it like that.
Re:The straight dope (Score:5, Interesting)
That doesn't make any sense. I fail to see why Apple should agree licensing terms for a CDDL licensed open source project or how Sun could demand money for the privilege. Sun were positively overflowing with love towards Apple (as they usually are) when they heard that anyone would actually be interested in their uber new filesystem.
Re:The straight dope (Score:4, Interesting)
Probably because Apple hadn't felt like supporting an FS on its own?
Mac OS X already includes pile of licensed technologies. The sole purpose of that is to offload work from R&D so that they can do something more useful than reinventing a wheel.
Licensing deal likely would have been needed so that if Sun/whatever goes tits up, Apple would retain all rights to the code so that they can develop and maintain it further on their own - without being in mercy of whoever buys Sun after that.
Re:The straight dope (Score:5, Interesting)
It doesn't make sense to you. But it does to every other business.
Free, open source software != costs nothing. (*)
Sun wanted Apple to share development and maintenance costs. Apple wanted some long-term guarantees that Sun wouldn't stop development and would also help Apple to solve problems of ZFS under Mac OS X.
Similar deals happen all the time.
It's just this time the companies couldn't agree on price and/or terms. Obviously acquisition by Oracle contributed to the volatility of situation.
(*) File system as file system is a rather trivial thing with well defined interface. ZFS is not only a file system, but also volume manager and network service. And long list of management tools for all that. Those are big money involved in development, maintenance and support of all that stuff.
Re: (Score:3, Interesting)
ZFS is a solution in search of a problem
ZFS is more or less a direct competitor to Veritas (VxFS).
If you know what later is, then you know where ZFS belongs.
ZFS is so much hyped mainly for two reasons: (1st) Veritas is f***ing expensive and (2nd) all Solaris file system(s) before sucked terribly. (Think of Win7 type of hype: it is so much better than Vista!)
Re: (Score:2, Insightful)
You have gravely underestimated the capacity for lawyers and bean counters to fuck up a great idea.
Re:The straight dope (Score:4, Informative)
This is pretty shitty because it'll fragment the momentum ZFS had in being the next-gen ubiquitous file system. When it was clear ZFS wasn't coming to Linux, those guys got btrfs going, now Apple is doing their own, while ZFS obviously will stay around too. Microsoft obviously wasnt on board for any of this, and without the momentum behind ZFS it never will. This nonsense isnt helping, and I think the best Oracle could do it release it under all the licenses that'll get it into OSX/Linux and perhaps even Windows. Can Oracle go over Sun's head on this or Sun==Oracle?
Re:The straight dope (Score:5, Insightful)
Microsoft obviously wasnt on board for any of this, and without the momentum behind ZFS it never will.
Microsoft is never on board for anything useful, so I'm not sure it really makes any difference.
Re: (Score:3, Interesting)
One small problem is that HFS+ sits on top of HFS and thinks like block allocations fall apart after 1TB. Apple has to switch filesystems. While the problems aren't severe at 2TB or 4TB at 50TB they are going to devastating.
Re:The straight dope (Score:5, Interesting)
(emphasis mine)
Unfortunately, btrfs isn't "going" anywhere. Guess who their development was funded by? That's right, Oracle! Notice that they haven't released anything new since BEFORE Sun's shareholders approved the acquisition? (Latest release on the btrfs wiki is v .19, released in June 2009) It's not exactly improving at a breakneck pace... If btrfs is going to go anywhere, they need some real development money.
Dang Oracle.
Re:The straight dope (Score:5, Informative)
You really need to subscribe to the mailing list. The rate of development is only growing -- it's just now moved on to a lot of smaller features and improvements, now that most of the work is already done.
Re: (Score:3, Interesting)
Simply untrue. Oracle is still committed to BtrFS. In fact in one article I read, they quoted lead developers as saying that BtrFS fit Oracle's needs better than ZFS. This led to speculation that in the long term BtrFS would replace ZFS. Of course licensing issues would necessitate a clean-room implementation, likely. Probably what will really happen is that ZFS will remain with Solaris while BtrFS becomes the standard across the Linux world, and will obviously be heavily used by Oracle database users.
Re: (Score:2)
Re: (Score:2)
After reading an opinion piece of one of the ZFS authors about Btrfs, I stopped thinking that ZFS deserves to have the momentum.
Can't find the link, but ZFS (as first Sun's take on files system) has made several design mistakes which cannot be fixed without redesign. Developed later Btrfs learned on that and avoided the mistakes.
IOW, ZFS might have had a very short momentum, but thanks to the licensing + general insanity of Sun management (which managed in past decade to lose all talented people) I'd
Yes. (Score:2)
Re: (Score:2, Insightful)
Re: (Score:3, Interesting)
For the reason I stated: That using Sun's ZFS left them without control of development, and tracking an outside codebase has reputational risks to which Apple in particular is averse. Having ex-Sun people work on a new filesystem is great, but they still need to navigate the patent minefield that Sun has sown around ZFS.
Interesting that Sun non-competes did not stop their engineers walking down the street to work on directly competitive technology... (First I heard that engineers left Sun for Apple, actual
Re: (Score:3, Insightful)
I'm sorry, perhaps I'm just a bit dense, but what is the benefit of a "ubiquitous file system" that is largely targeted for server infrastructures. Generally speaking I agree that parallel efforts to accomplish a similar / identical task can be deemed wasted efforts on some level. However, that trend is pretty much the standard for all open source projects? Linux vs BSD, WebKit vs Gecko, mysql vs postgres, php/perl/python/ruby the list goes on and on. There are a multitude of reasons projects (corporat
Re:The straight dope (Score:4, Insightful)
Re: (Score:2)
Does he know something nobody else knows? (Score:2)
Re: That's true for any licensee - in fact, Net App could adopt ZFS today and receive the same protection. The port is done to FreeBSD, the OS on which Net App's filers are built.
Last I checked NetApp was using some NetBSD-derived components in their Filer OS. I haven't heard that it's "based on FreeBSD".
Is he mixing up NetApp with Apple?
Re:The straight dope (Score:4, Insightful)
Apple's CoreOS team includes several of the lead engineers from the ZFS project (who fled the remnants of Sun in the Schwartz melt-down), and the architect of the BeFS.
If this (potentially) verifiable information is accurate, that along with the claim of sources are two things missing from most if not all of the other AC speculation. The scenario is plausible and credible, so it is reasonable in the absence of contrary evidence to lend more weight to the AC above.
How much more weight will of course vary amongst individuals, but it seems the mods have deemed it worthy. Wisdom of crowds and all that.
The Reason is Probably Technical (Score:5, Interesting)
However, they still desperately need a next generation filesystem and according to the linked article they're hiring filesystem engineers. I don't see any evidence that this was anything other than a technical avenue that they've explored that has fallen by the wayside as so many have before.
Comment removed (Score:5, Interesting)
Re: (Score:2)
The proof of the pudding, as they say. By any stretch of the imagination ZFS within Mac OS is a project that has stagnated and gone completely stillborne from 10.5 and onwards. It's not something you could ever consider using semi-reliably, nor did you get the impression that it would ever reach that stage.
I'm sure there was no shortage of soundbites and
Comment removed (Score:4, Interesting)
Re: (Score:2, Insightful)
However, they still desperately need a next generation filesystem and according to the linked article they're hiring filesystem engineers.
That doesn't make any sense.
It only makes sense to engineer a new filesystem if the other options are inadequate or unusable.
Engineering a new filesystem is hard and expensive.
For them to seek to do that, they must have rejected the effort to integrate ZFS for some technical reason.
The complexity of integrating ZFS pales into comparison to the massive cost of e
Re: (Score:2, Funny)
It makes perfect sense. HPFS is simply far too long in the tooth now.
Yer................
What's even more difficult is to integrate a
Re: (Score:3)
???????!!!!! Far too late here now. That should of course be HFS(+).
Re: (Score:3, Insightful)
Comment removed (Score:4, Informative)
Re: (Score:2)
I doubt that it's a legal issue as the primary reason that this has happened...
I've dealt with people in Sun who were close to ZFS and who were also excited to have it in Mac OS. It wasn't pulled because it wasn't technically ready.
ZFS is the next generation file system that all others will have to live up to. I've never felt compelled by any file system. Use whatever is there or whatever my peers are comfortable with. ZFS is the first file system that's compelling enough to make me take a stand. I use it on servers daily at work, and I was looking forward to having it on my Macs
Re: (Score:2)
Re:The Reason is Probably Technical (Score:5, Interesting)
I'm sure it will, but I'm afraid that doesn't mean that made it practical for Apple to integrate into OS X or that it fitted the use cases they needed for many desktop scenarios. The FreeBSD people still haven't been able to run and integrate it reliably.
The ZFS advocates trot those lines out every time and they're total nonsense. Ultimately, the only way to deal with silent data corruption or 'bit rot' is to have multiple levels of redundancy several times over for your data - which ZFS has and deals with. No desktop Mac can ever have that. Anyone who thinks that is anywhere near being practical to deal with on a desktop system is an idiot, and no, I'm afraid booting OpenSolaris with ZFS on your desktop system at home and not having it crash and burn does not even approach the kind of issues and corner cases that Apple's engineers will have to deal with, especially in a desktop system like OS X.
By no stretch of the imagination does ZFS handle this 'magically'. There is a severe price to be paid. If you don't have redudancy then you will simply risk losing your ZFS pool if there is corruption.
I'm afraid that hardware, bad sector and disk issues are far, far more prevalent problems than data corruption at an OS level. Many apparent corruption issues at the OS level are usually down to hardware issues somewhere down the line. It might be a problem for operating systems with fairly shitty and poorly maintained disk and controller device drivers with a poor history on x86 and widely used hardware (hello Solaris!) but I'm afraid it's just not a primary concern for everyone else or for those developing desktop operating systems.
Re:The Reason is Probably Technical (Score:5, Informative)
I'm sure it will, but I'm afraid that doesn't mean that made it practical for Apple to integrate into OS X or that it fitted the use cases they needed for many desktop scenarios.
Um, the technical work was already done. It could have shipped with Snow Leopard. Again, the reason it didn't has nothing to do with the technical feasibility of it.
Ultimately, the only way to deal with silent data corruption or 'bit rot' is to have multiple levels of redundancy several times over for your data - which ZFS has and deals with. No desktop Mac can ever have that.
Why? Because you say so?
Anyone who thinks that is anywhere near being practical to deal with on a desktop system is an idiot
While I may be an idiot, you have to convince me that ZFS is not practical for a desktop. Again, just because you say so is not reason enough. I stand by my statement that ZFS is the only file system with enough benefit to make me explicitly choose it for building servers. You may argue that there's a difference between a server and a desktop but those really are nothing more than abstract concepts. A file system that has too much overhead for my desktop has too much overhead for my servers. Performance matters. ZFS may not be the fastest, but it is no slouch either and the other benefits it brings to the table far outweigh miniscule performance concerns.
By no stretch of the imagination does ZFS handle this 'magically'. There is a severe price to be paid.
What exactly is this severe price? Can you spell it out? Exactly? "Any sufficiently advanced technology is indistinguishable from magic." In that respect yes I will say it is magic because it is head and shoulders more advanced than anything else I've had the pleasure of working with. File systems have not had this kind of improvement in decades.
I'm afraid that hardware, bad sector and disk issues are far, far more prevalent problems than data corruption at an OS level...but I'm afraid it's just not a primary concern for everyone else or for those developing desktop operating systems.
How do you know? It's not a significant problem till the data you need is unavailable when you need it. At home my own modest media library sits on just 500 Gig with no guarantee that any of it will still be whole in 6 months. Sure I back it up. Routinely. But until you access the file you don't know if it's been corrupted. Then how long as it been corrupted? Do your backups go back far enough to compensate? Yes you can checksum everything routinely and maintain a database of checksums to validate file change. Part of the beauty of ZFS is it does this with every thing you put in it, at the block level, and it validates the checksum every time you read the data. If a block fails the check, it not only sends you the valid block from the mirrored copy (You do have redundancy right? Even ZFS won't save you if you only have one copy.) but also replaces the bad block with a copy of the good one.
Storage capacity is skyrocketing. Going to backup to fix problems is a real problem in itself. Are the tapes on-site? Do we have to go to the vault to find an uncorrupted copy? Did the media pool get recycled and now there is no uncorrupted copy? Do you enjoy explaining to an executive why the data they want is unavailable despite spending millions on enterprise class storage and backup solutions? The problems of enterprise storage are becoming problems of home users. I have three terabytes of storage just to backup my home system in a replication layout I'm okay with, but I really would have loved the protection ZFS offers against bit rot to top it off. Stick your head in the sand if you want, but I consider my data and it's availability a little more important. ZFS handles it elegantly, in the background, with negligible performance hit.
Github project taking up the slack (Score:5, Informative)
Dustn Sallings put the code on Github and has already hacked some basic Snow Leopard support and a minimal installer:
http://dustin.github.com/2009/10/23/mac-zfs.html [github.com]
Code's here, fork away:
http://github.com/dustin/mac-zfs [github.com]
Re: (Score:2)
It was reported to work on Snow Leopard with a 32-bit kernel. It did not work with a 64-bit kernel. The source would build, but there were missing symbols.
Of course, there's more to do, but you can at least read your volumes again now.
Another nextgen FS on the way? Hmmm. (Score:5, Insightful)
Interesting - we're chugging happily along in Linux / Windows / Mac / Unix land having a load of competing filesystems where all the popular ones have *roughly* similar capabilities. Then ZFS appears in OpenSolaris and filesystem design becomes cool again. Everyone starts either porting ZFS or making filesystems with similar features ... Now a major player that actually *had* ported ZFS (somewhat) is seemingly deciding to go it alone. It seems as though the next-gen filesystem space is also going to have a variety of competing filesystems.
I generally think this is a good thing, lets just hope that a reasonable degree of interoperability becomes possible anyway.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
It seems that FAT32 is still the apex of filesystem interoperability, closely followed by NTFS, courtesy of reverse-engineered drivers. That's kind of sad.
It's not just a filesystem (Score:2)
Yes, I realize it contains the letters "FS", but ZFS is not just a filesystem. It incorporates a lot more than that. That's one of the reasons it's really hard to integrate into an OS, given the architecture of most OS's.
Re: (Score:2)
True, although a lot of the characteristics I find particularly interesting about it relate to the filesystem layer. Various of the "competitors" are incorporating functions that are also (to some extent) outside the normal remit of the filesystem. Btrfs in particular, however its volume management and RAID-ing functionality is not used outside of that filesystem. Whereas I believe ZFS can subsume most storage management, although AFAIK only Solaris really takes this idea to its logical conclusion. ZFS
This is devastating... (Score:5, Funny)
Hearing that ZFS support was upcoming in Snowleopard is one of the things that encouraged me to switch my desktop from Windows XP to MacOS.
It is an understatement to say i'm disappointed to see Apple abandoning this.
Support for ZFS is not just a little feature checkbox, it's a major component of the OS.
It'd be like if Microsoft dropped/cancelled support for Solitaire from Windows....
You can still undevastate yourself (Score:2, Interesting)
I suggest you drop MacOS like a hot potato, send a nastygram to Apple giving them a piece of your mind, and check out both OpenSolaris and FreeBSD. They both support ZFS, OpenSolaris because Sun invented ZFS, and FreeBSD because they have competent management AND engineering. Unlike certain others (and I'm not pointing the finger at linux).
Once again, FreeBSD has shown the fools in Cupertino how it's done.
Re: (Score:2)
Once again, FreeBSD has shown the fools in Cupertino how it's done.
Yeah, Steve is gonna cry himself to sleep on a huge pile of cash tonight.
(Not sure if parent was a troll or totally serious... It's hard to tell around here sometimes!)
Re: (Score:2)
Re:This is devastating... (Score:5, Informative)
I tried the zfs commands you suggested but there aren't any of those available in my path,
The two programs used to work with zfs are 'zfs' and 'zpool'. Both of them are normally located in /usr/sbin
If your PATH is broken so you can't easily access the tools, it doesn't matter what filesystem you're using, you'll have a bad time. I would suggest adding /usr/sbin to your PATH if it's not, or else use "/usr/sbin/zfs list" etc.
the user's, life is made harder?
The user's life is not made harder. It's no harder to learn "Zfs list" than to learn "df"
What is all so totally worth it? I haven't seen any advantages of zfs over hfsplus.
Copy on write filesystem, performance is excellent..
Unlimited impact snapshots which have no I/O performance impact, and has the ability to rollback to most recent snap, clone snapshot, etc; makes backup, replication type tasks easy. The ability to implement transactional unbreakable [xercestech.com] system upgrades, ala apt-clone.
RaidZ, to protect against drive failure
Ditto blocks and checksums to ensure data integrity, protect against silent data corruption, heal bad disk blocks.
No need to 'fsck'
No need to decide the size of each file system at creation time, 'quotas' are soft and can be changed, instead of having to re-format/fdisk to change sizes of a dataset.
No need to manage individual disks. No limits on number of disks imposed by the filesystem layers.
No arbitrary limits in zfs. ZFS can scale to (in theory) 256 quadrillion zettabytes. Other filesystems have a max file size limit, and a max filesystem size limit.
Sharing a folder is a simple invokation of a "share" command.
Re: (Score:2, Funny)
Re: (Score:3, Funny)
Too bad, ZFS has some nice features (Score:4, Interesting)
Leaving aside all the crazy storage pool stuff (great for servers, not necessarily that useful for desktops), there are some interesting features in ZFS that I hope make their way into Mac OS X in some filesystem.
Snapshots and Copy-On-Write filesystem clones seem like a great way to improve the Time Machine backup feature, and would make it easy for applications to provide backup-on-save very efficiently.
The compression and encryption features would likely be useful for some people. I don't think the increased filesystem limits (number of files, size of files) would matter for most folks.
Too bad [FOR APPLE], ZFS has some nice features (Score:5, Insightful)
Too bad for Apple, not for ZFS. OpenSolaris and FreeBSD support ZFS just fine. I do think it's best suited to servers, and OpenSolaris and FreeBSD are greatly superior server operating systems anyway.
Maybe they should look at HAMMER FS (Score:3, Informative)
http://en.wikipedia.org/wiki/HAMMER [wikipedia.org]
Should be under a suitable license for their usage. It's written for DragonflyBSD which has a funny filesystem driver interface but AIUI the developer had ports to other OSes in mind, so it should still be doable. It can do cheap filesystem snapshots so it would support Time Machine-style operation well. The question is whether it could be adapted to fit Apple's uses well enough. Given one of the linked articles suggests Apple are hiring FS developers my guess would be that they've decided they'd rather build a ground-up filesystem that supports all the (slightly odd set of) features MacOS X wants.
Re:Maybe they should look at HAMMER FS (Score:5, Funny)
Steve Jobs commented on HAMMER FS inclusion in 10.7 during WWDC 2009. He said "due to legal and technical constraints we can't touch that"
Re: (Score:2)
Steve Jobs commented on HAMMER FS inclusion in 10.7 during WWDC 2009. He said "due to legal and technical constraints we can't touch that"
Really? I'm somewhat surprised and impressed that somebody thought to ask him! Do you have a reference for that at all? Or do should I go watch the keynote? I'd be interested to see the context (and for that matter to know who thought to put the question).
The legal constraints can't be a license issue but perhaps they're worried about some particular patents. Hard to imagine that they could come up with next gen FS features, even if they chose a different implementation, which didn't potentially infrin
Re: (Score:2)
Re: (Score:2)
OK, this is scary. Two people have politely explained how I didn't get the joke (which I completely missed). Nobody has posted a "woosh". What has happened to the real Slashdot!?
(thanks, by the way)
Re: (Score:2)
*ahem* [youtube.com].
Re: (Score:3, Insightful)
OMG I fail so hard!
Re:Maybe they should look at HAMMER FS (Score:5, Funny)
Thanks for breaking it down. Too bad Apple had to stop HAMMER time.
Re: (Score:2)
I can't believe it's not btrfs.
Did ZFS ever support FIleIDs? (Score:2)
Hopefully, whatever Apple develops next will. It would really suck if the only persistent way to refer to a file was its path.
Re:God forbid... (Score:5, Funny)
Please hand in your geek card as you leave.
http://en.wikipedia.org/wiki/ZFS [wikipedia.org]
Re:God forbid... (Score:5, Funny)
All this time, I thought folks were talking about file management with a phony French accent!
Save zee file to zee FS and you will see that zee bytes go ...
Re: (Score:3, Informative)
That must sting a bit.
Re:God forbid... (Score:4, Funny)
Re:God forbid... (Score:5, Funny)
My sense of entitlement demands that everyone hand everything to me on a silver platter as well! I shouldn't be required to click on a link, much less do a Google search. You and I are in agreement. BTW, you owe me for that.
Please mod this up (Score:4, Funny)
Of course, there's also no better way to prove his point than to get offended by it.
Re:God forbid... (Score:4, Informative)
God forbid the summary tell us what ZFS is
It is a filesystem, available in (Open)Solaris and at least FreeBSD, possibly other BSDs as well. It has some interesting features, which you can check out here [wikipedia.org]. I have heard it claimed that ZFS has good performance, but I have not evaluated any of those claims.
Re: (Score:2)
God forbid the summary tell us what ZFS is
It is a filesystem, available in (Open)Solaris and at least FreeBSD, possibly other BSDs as well. It has some interesting features, which you can check out here [wikipedia.org]. I have heard it claimed that ZFS has good performance, but I have not evaluated any of those claims.
It's a complete and total coincidence, but I just remembered a humorous Web site. [justfuckinggoogleit.com]
Correction (Score:5, Informative)
Re: (Score:3, Insightful)
Merits close study, as the concepts of ZFS overtake current best practices
That is, assuming that having the file system and the volume manager tied to each other is a good thing. I think I can come up with a bunch of reasons for why this is a pretty terrible idea and why modularity here is a good thing.
Re:Correction (Score:5, Insightful)
Modularity is a good thing, if you draw the modules in the correct place. And ZFS is indeed modular...
Take all of this with a grain of salt, as I haven't actually used ZFS, only designed something similar, then found ZFS did it already, then decided I didn't care and used Linux anyway.
My understanding is that there's a storage layer, where you can simply request storage for some purpose, and it gives you that storage with an id -- kind of like an inode. You could build a filesystem on top of that, managing all the metadata yourself. Or you could build something else -- a database, for example. And the filesystem layer still handles all kinds of things, like permissions, directories, etc, it's just that the allocation has been separated out.
Thus, the allocation layer can make smart decisions about things like which disk to allocate something on, or what actually needs to be replicated, etc.
For example: Think about any kind of RAID, even striping. If RAID can only work with whole volumes, that means the entire discs have to be synced (in RAID1) or checksummed/paritied (in RAID5), including free space. In ZFS, not only can you avoid replicating free space, but I believe you could also specify which files are important and which ones aren't -- and only the important ones are replicated, thus saving space on the ones which aren't.
Another, more theoretical example: SSDs are a bunch of hacks on top of hacks. See, erasing and then writing to the same flash cell over and over wears it out, and there's no seek time. Largely because of Windows, I would guess, SSDs these days implement wear-leveling in the firmware, so that the OS sees only a logical disk that pretends to be a hard drive. But this means they always have to keep a number of cells unallocated, and it slows down writes to have to erase each cell before writing.
So, someone came up with the ATA TRIM command, where the OS could tell the SSD which blocks are no longer in use, and the SSD can actually erase them.
Compare this to the old solution -- implement wear-leveling in software. There were a few filesystems written to run directly on the flash, and it was actually the filesystem doing the wear-leveling. This meant the filesystem could intelligently spread new writes over free space, instead of having to keep some arbitrary number of blocks in reserve...
This is getting fairly technical, and also boring, as ultimately, it's not that much of a difference. But this just shows the potential modularity of a system like ZFS. See, if ZFS separates out the allocation, that means you could replace that part without touching the filesystem, database, or anything else. And you could probably replace it with something that knows how to deal directly with a flash device -- something which, for example, erases blocks as ZFS snapshots are deleted.
Re:Correction (Score:5, Informative)
Warning: I have become a ZFS fanboy, my statements may not be entirely rational.
Use ZFS for a week on something like a file server, you'll be more than willing to ignore traditional Unix logic (which I firmly believe in) in order to use the goodness that is ZFS.
I'll admit, I'm a ZFS fanboy now, and I've only used it on FBSD 7.2, which is using a much older version of ZFS (v6, current is 13 I think). In 7.2 its not considered production ready and its still awesome to work with for me.
I shoved 4 PATA and 4 SATA drivers in a case, 2 gigs of ram (really the minimum for FBSD and ZFS on a 64 bit machine, which is where it sings). The 4 SATA drivers are in the zraid vdev, 2 of the PATA drives are in another mirrored vdev, and the final 2 in a second mirror vdev. So all the drives have redundancy and they are all in one big zpool with the total space available as one big chunk.
Now thats all well and good, but heres where it gets awesome. Want more space? Add some drives, create a new vdev, add it too the pool, instant space available. Okay, so thats not that impressive in and of itself. I can also add in a SSD as a 'cache' drive, which the ZFS system will then populate with a read only copy of data that gets accessed often in a random way, for a speed increase for your random IO needs.
Okay, so I've got a few terabytes of data available, but I need a to create a share for backup using TimeMachine on my Mac. Well time machine will be happy to consume all the space on the drive. No problem, create a new mount point in the zpool, limit it to 1TB. It will only consume up to 1TB, IF space is available in the zpool. I can also reserve the space if I want to ensure its there for the backups. You can use the same system for quotas of individual users.
I also have a bunch of ISOs with uncompressed data on them that I mount from virtual machines for various reasons, full of essentially text data. Welp, for that create another mountpoint on the same zpool, turn on compression, now my 5TB of text gets compressed into a few hundred gigs automatically and transparently. Its read only, and very important. I have backups, but they are in another state and transfering them back would be a painfully slow process which would cost me a lot of time. So I set the mount point to read only and set copies=2. Now the mount point is read only, and the data is stored twice, on 2 different vdevs. So not only is the data on a raid or a mirror, its on BOTH. If I was really worried I could set copies=3 and it would be on all the vdevs, so as long as one is usable I have my data, assuming all the vdevs have enough space to store the data. One of them doesn't, so copies=2 is the only useful option to me.
I also have a software archive of all my commercial windows software, I want to keep it safe from any sort of infection or modification, so I set that mount point readonly.
So far, I've done nothing that can't be done already with existing methods, but what I've done it across a common shared data pool. Free space is shared across all of them.
I thought ZFS was a waste of time until I started using it. I am by no means a ZFS master, but I've learned that it can do some pretty powerful things. My setup is small, I only use it at home until FBSD 8 is released, which will have what is considered to be a production ready implementation, but I will be moving to it at that point in our internal office servers.
I know I haven't listed any life changing reasons to use it, but its turned me into a fanboy.
Technically, it IS modular, even if it doesn't have well defined zones. If you look at ZFS in a slight different way, it can be just one layer of the system. You can create virtual devices in a zpool and treat them as a block device (its just another /dev entry). Just to see how it worked, I created a virtual device on top of the zpool, formatted it with UFS, put some files on it, expanded the virtual device, ran growfs and had a larger UFS mount point.
Re:Correction (Score:4, Informative)
Not sure about clustering, but you can export ZVOLS via iSCSI, so if you wanted to distribute the load that way, you can.
Your third point makes no sense. VDEVs can be combined in arbitrary ways, including hierarchically, in the pooled storage layer. Perhaps you are confusing storage pools with VDEVs. With the L2ARC, you can use faster disks (e.g. flash) as a cache for the slower ones.
Re:Correction (Score:5, Informative)
At the bottom layer, you have the pooled storage layer. This is comprised of several modules. The lowest layer is responsible for combining virtual devices into storage pools. This handles things like stripping and mirroring, but it does so with dynamically sized block ranges, rather than static ones (i.e. partitions). On top of this you have the transactional I/O layer. This handles things like checksums, encryption and compression, and provides support for transactions. Every disk access goes via this layer. That means that every single block device access from the upper layers gets transaction support, so you can guarantee that the block devices are always in a recoverable state; every group of low-level I/O operation either worked or failed, it never partially worked. Above this is the adaptive replacement cache, which handles caching and, with the L2ARC can also perform caching in Flash as well as RAM.
On top of that, you have the transactional object layer. While the pooled storage layer works with a flat 128-bit address space, the transactional object layer works with objects and sets of objects. Any higher-level I/O is expressed in terms of transactions containing modifications to sets of objects. This is a very powerful abstraction. An object can be a complete filesystem, some metadata, or a file; there is no difference at this layer. Anything that you can do with one, you can do with any of the others. There are a few other things in this layer, like the ZFS intents log, which handles a higher-level (finer-grained) transactional model.
On top of this is the user interface layer. There are two things here, the ZFS POSIX Layer (ZPL) and ZVOL. The former produces something that looks like a UNIX filesystem, with NFSv4 ACLs and a few other nice features. This is close to a filesystem in the traditional model, but also a bit like a VFS. It provides something that looks like UFS on top of lower-level features, but these are not on-disk structures. ZVOL is simpler; it provides something that looks like a block device. You can export this via iSCSI, for example, and put any kind of filesystem you want into it. Unlike a real block device, this one supports copy-on-write, snapshots, transactions, and so on. You can, for example, have a Windows VM (or real system) with a FAT or NTFS filesystem in a ZVOL mounted via iSCSI. You can snapshot it with the same O(1) snapshots that the rest of ZFS has, and then restore it later. You can also use zfs send and zfs receive to stream the changes across the network to another machine, irrespective of whether you're using ZPL or ZVOL + some filesystem. You can also use ZVOL for things like UDF images for burning, creating a skeleton image, cloning it, and using the native copy-on-write support to make small changes to it.
Re:With SSDs, who needs it? (Score:5, Insightful)
When SSDs come down A LOT in price, and up in size, maybe.
Go do a search on Newegg. Biggest they've got is 256GB, of those, the cheapest is $595. You can get several terabytes for that price with a magnetic hard drives.
SSDs have a place, but as a general replacement for magnetic hard drives they are too expensive with too little capacity.
There is also more to the file system than access speed.
Re: (Score:2)
http://www.newegg.com/Product/Product.aspx?Item=N82E16820227484 [newegg.com]
Re: (Score:3, Interesting)
Grab a small SSD for apps/games and a 5400RPM terabyte disk for all your music/movies/series/home video/whatever. 64/80GB disks seems to be the sweetspot now, which even leaves some space for apps after installing Win7 ;)
Re:With SSDs, who needs it? (Score:4, Interesting)
Yeah, but a lot of people don't need terabytes worth of storage. I just built a machine for my wife with a 64 Gb SSD, which cost $180. She's currently only using about 25% of the space. The good thing is that the machine is really fast on some tasks she does that require a lot of hard-disk access.
Re:With SSDs, who needs it? (Score:5, Interesting)
SATA attach SSD has achieved price parity with enterprise SAS, the density is almost there, and the performance completely blows it away. We're not at the end of spinning disc, but you can see it from here.
The new performance tier of storage is PCIe attach SSD [memory4less.com]. At two terabytes of storage and 1.5GB/s per slot, we're getting close to what we used to get from Ramdisk in performance and adequate density at 3TB per rack unit including server (HP DL785 G5 or equivalent). Yes, this is expensive right now, but the performance tier always has been. This is for trading platforms, HPC and such. These are approaching 2M IOPS and 40TB per 7U server.
The second tier is 2.5" 256GB SATA SSDs. You get 3TB per rack unit including the server. About the same cost as SAS for 10x the performance. Software options enable you to scale this to infinity in both bulk and performance. Great for databases, VMDK files and iSCSI. Get the hot-swap version and leave some open bays so that when the 1TB 2.5" SSDs come out you can migrate your LUNS with no downtime.
The third tier is SAS spinning disk. At something like 20TB/Rack unit (excluding servers) you can use this to serve frequently used files.
The fourth tier now is SATA spinning disk. At roughly the same density as SAS spinning disk for one-fourth the cost, this is a good candidate for deduplicated targets like virtual tape libraries or deduplicated NAS. It's also a good place to store your snapshots. With modern snapshot technologies there's no good reason to not store snaps every 15 minutes or so. Typically you would park this storage offsite for DR purposes so you can avoid the Premium Microsoft danger eXperience(**).
Storage pros probably would note that I neglected to mention tape and Fiber Channel. That's neither accident nor ignorance. The only reason for tape is legally mandated tape backups, and I consider this the IT equivalent of legally mandated hitching posts outside every business (which laws persist in some places) - if you gotta, you gotta, but there's no reason any more to consider it a necessary or good practice. As for Fiber Channel, it just doesn't fit in the model any more. I know this hurts the feelings of folks who just dropped a million bucks for a single rack of SAN storage with 100TB, or worse - popped for the new 8GBit stuff complete with a converged ethernet/FCoE solution, but it's true. There's just no reason for fiber channel any more. It just doesn't have the bandwidth to support a modern storage solution and it costs too much. Sure, it's got redundancy from the disc to the file server, but so what: modern file servers use redundant storage and clustered redundancy and don't need the diminishing returns of embarassingly expensive drives, head nodes, capacity licensing and annual support contracts. By the time you figure in oversubscribed ports in your FC network, you've lost the supposed reliable performance benefit of the whole thing. This isn't bad news for Cisco - they're going to sell a lot of 10Gbit Ethernet ports before they get cheap and they haven't lost anything by being also compatible with FC. It really bites to be EMC this week, but they'll figure it out.
Check the specs on this server [hp.com], this card [memory4less.com], this drive [newegg.com] and this array [hp.com]. This is off-the-shelf stuff, not pie in the sky. The interconnect people need to get off their butts, but this is all doable right now. The compute side becomes an almost trivial cost of what it takes to maintain this storage bandwidth and capacity. If you like proprietary solutions HP sells a thing called the LeftHand Virtual San App
Re: (Score:2)
Re: (Score:2)
What?
Ignoring the high cost and low amount of space what about write endurance? Wear leveling? Asymmetric I/O speeds? Poor I/O performance? Everybody talks about the super fast read speeds while ignoring the fact that write speeds are never the same, tend to be far lower, and are not consistent.
In any case I don't see how faster speed is going to make up for anything in a file system. If you are trying to use them in a server environment it makes no sense either. SSD's don't perform nearly as well as
Re: (Score:2)
SSD's don't perform nearly as well as 4 SATA drives in a decent RAID setup.
What are you smoking?
These [wikipedia.org] are conservative numbers, and they show a commodity (Intel X25-M) MLC flash drive doing over 1,000 IOPS, but a typical 7,200 RPM SATA drive doing 100 IOPS. (Note, I rounded down for the SSD and up for the spinning disk.) So, SSDs are an order of magnitude faster at IOPS than platters. To get a 10x increase of write IOPS on a spinning disk, you'd need to use RAID-0 across ten disks. Hardly a good idea.
Re: (Score:3, Insightful)
Must not be as good as what you are smoking. You are being simplistic.
Total IOPS on SSD's are higher, but that is mostly READ IOPS and not WRITE IOPS. SSD's have typically performed very poorly with random writes. Obviously you don't understand that they mostly refer to TOTAL IOPS because it sounds good. What about the write IOPS? You are conveniently leaving that out. That and the fact that in some cases read IOPS and write IOPS on some SSD's are not anywhere near each other. This creates problems in
Re: (Score:2, Informative)
People don't do enough research and buy the wrong stuff. If you need fast writes, you get the Intel X25-E. If you need fast reads, the Intel X25-M is fine. If you need the SSD to take a punishing amount of writes over the years, you get the X25-E again. If you aren't planning on punishing it with writes, the X25-M is again fine. If you need cheap, then you get an extra helping of crappy write I/O. :-)
If you want to have monstrously fast storage, you build a raid with zfs, and use one or two X25-Ms for
Re:With SSDs, who needs it? (Score:4, Informative)
If you're looking at hundreds of thousands of writes a day to your database, you really only need somewhere between 10 and 100 IO/second (there are 86,400 seconds in a day). Most hard drives handle that somewhat decently, especially if you use a good RAID configuration.
Looking at 100,000,000 updates a day (1,158 writes/second)? Intel's X25-M is rated at more than 4 times that [intel.com]
Let's compare that to a 15k.2 Seagate Savvio harddrive [seagate.com]. Oh, right, they don't list their IOPS ratings. Let's look at what they do have though:
Intel lists these figures:
In other words, for a single track, the Intel drive will be almost 5 times as quick to start the write, and on average the Intel drive will be 38 times faster.
Or looking at it in another way, the absolute best case scenario where we simply ignore actually writing something, the Seagate drive can achieve 205,714,286 write operations per day (86,400 seconds/0.42 milliseconds). The Intel drive will hit 1.016.470.588.
While I can't find anyone benchmarking Intel's SSD offerings directly against the Savvio, I can find a mix of tests. From Tom's Hardware [tomshardware.com] we see that SAS drives tops out at about 400 IOPS for any given task.
Using Tom's Hardware for a comparison, their review of the X25-M [tomshardware.com] had it bottoming out at around 900 IPOS, making it perform 225% better at its worst, compared to the SAS drive's best.
Prices:
Newegg.com doesn't have the Savvio, so I'm using Google instead:
Seagate Savvio 15k.2 146 GB edition: US$ 226.44 [google.com] or US$1.55/GB
Intel X25-M 160 GB edition: US$ 439 [google.com] or US$ 2.74/GB
Considering the performance advantage of at least 225%, you'd have to spend at least US$ 509.49 just to get the same kind of performance as you'd get from the US$ 439 drive from Intel. And that's just their mainstream edition. AND we're talking SSD's worst case scenario vs. SAS's best case scenario. Realistically we're talking much greater advantages for the SSD.
And you keep talking about "commodity SSDs" but refer to datacenters. A commodity harddrive is a 7.200 RPM 8 MB SATA drive, and they aren't suitable for a datacenter either. Duh! So why the fixation of comparing commodity hardware from one technology to enterprise hardware from another? Stop buying commodity hardware for your datacenter needs.
And yet you haven't caught on to the fact, that this isn't that big of a problem. Anandtech wrote an excellent paper [anandtech.com] on write performance problems, and his benchmarks are based on used drives (the drive has to perform deletes before writing), and he got these performances:
The VelociRaptor i
Re: (Score:2)
Re: (Score:2)
For simple image quality, especially fast animation, yes, CRTs are superior.
The desk space advantage of an LCD can be very significant though. It's enough space to fit stuff like books that you wouldn't be able to put in a convenient place otherwise. This is the primary reason I'm a fan of LCDs.
Granted, if I was more of a gamer or used the computer mainly as a media center, I'd give CRTs a closer look. But for many real world tasks, the desk space advantage can be a big practical benefit to LCDs.
Re:With SSDs, who needs it? (Score:4, Insightful)
Don't forget the power savings. I just got a new 24" LG panel with LED backlighting that, I believe, uses only 26W at full power. Compared to the old 19" CRT it replaced, it's a huge savings (that one used over 140W I think). Not only does this affect my power bill, but also the temperature in my poorly-ventilated office. Now it doesn't get so darn hot in there. (Yes, I could turn up the A/C, but then the rest of the house would be freezing, so that doesn't make much sense.)
The picture is nice and bright, and as you'd expect with an LCD, not distorted at all, as I've found most large CRTs to be. Yes, CRTs definitely have better color (at least better than the 6-bit TN panels which are common for LCDs), but ones supporting 1900x1080 or better resolution are downright gigantic, and use a ton of power, and the picture seems to have distortion problems too. I really don't miss having to muck around with all the image adjustment (centering, size, moire, trapezoid, etc. etc.) controls that I had to on every CRT I used.
Re: (Score:2)
Re: (Score:2)
Is that real 85Hz or dropping frames to 60Hz? I'm not aware of any LCD with a genuine maximum refresh rate of 85Hz.
CRT blanking is a very good thing, because it eliminates sample and hold blur. Good article on motion representation:
http://www.microsoft.com/whdc/archive/temprate.mspx [microsoft.com]
Yeah - so unlike Microsoft... (Score:2, Funny)
...who don't even *have* a next-generation filesystem project to cancel.
(see - I can troll, too!)
Re:Yeah - so unlike Microsoft... (Score:4, Insightful)
Well, technically, they do, I don't think WinFS has been nuked yet.
It might as well be. Better odds of seeing Duke Nukem Forever.
Re: (Score:2)
I don't think WinFS has been nuked yet.
No, the Windows Failure System is still going strong.
Re: (Score:3, Funny)