Slashdot Mirror


Google Switching To EXT4 Filesystem

An anonymous reader writes "Google is in the process of upgrading their existing EXT2 filesystem to the new and improved EXT4 filesystem. Google has benchmarked three different filesystems — XFS, EXT4 and JFS. In their benchmarking, EXT4 and XFS performed equally well. However, in view of the easier upgrade path from EXT2 to EXT4, Google has decided to go ahead with EXT4."

41 of 348 comments (clear)

  1. Time for a backup? by Itninja · · Score: 5, Informative

    I guess now is as good as any to go through my Gmail and Google Docs and make local backups. I'm sure my info is safe, but I have been through these types of 'upgrades' at work before and every once in a while....well, let's just say backups are never a bad idea.

    --
    I judt got a nre Kinesis keybiartf so please excusr ant egregiou typos.
    1. Re:Time for a backup? by fuzzyfuzzyfungus · · Score: 4, Funny

      Not to worry. It's all in the cloud, right?

    2. Re:Time for a backup? by castironpigeon · · Score: 4, Funny

      Uh huh, the mushroom cloud.

      --
      mmmm...forbidden donut
    3. Re:Time for a backup? by paradigm82 · · Score: 5, Funny

      It's probably nothing, probably. But I'm getting a small discrepancy in the file sizes...no, no, it's well within acceptable limits. Continue to stage 2.

    4. Re:Time for a backup? by tool462 · · Score: 5, Funny

      I usually let the bit-gods decide what data I have that is important enough to save. Over the years the bit-gods have taught me that:

      Music files: not important, Styx crossed the Styx to /dev/null in 2002
      Essay written for sophomore year high school english: Important, I assume to haunt me in some future political race.
      Porn collection: Like the subject matter within, it swells impressively, explodes, then enters a refractory period until it's ready to build up again.
      C++ program that graphs the Mandelbrot set: Important. I like feeling like an explorer navigating the cardioid's canyons.
      Photos of my children: Not important. If I need more baby photos, I can just have more babies.

    5. Re:Time for a backup? by Itninja · · Score: 4, Funny

      Jeez, calm down junior! No need to open a can of fanboi on me....

      --
      I judt got a nre Kinesis keybiartf so please excusr ant egregiou typos.
    6. Re:Time for a backup? by Anonymous Coward · · Score: 5, Funny

      Wait a minute. I'm a manager, and I've been reading a lot of case studies and watching a lot of webcasts about The Cloud. Based on all of this glorious marketing literature, I, as a manager, have absolutely no reason to doubt the safety of any data put in The Cloud.

      The case studies all use words like "secure", "MD5", "RSS feeds" and "encryption" to describe the security of The Cloud. I don't know about you, but that sounds damn secure to me! Some Clouds even use SSL and HTTP. That's rock solid in my book.

      And don't forget that you have to use Web Services to access The Cloud. Nothing is more secure than SOA and Web Services, with the exception of perhaps SaaS. But I think that Cloud Services 2.0 will combine the tiers into an MVC-compliant stack that uses SaaS to increase the security and partitioning of the data.

      My main concern isn't with the security of The Cloud, but rather with getting my Indian team to learn all about it so we can deploy some first-generation The Cloud applications and Web Services to provide the ultimate platform upon which we can layer our business intelligence and reporting, because there are still a few verticals that we need to leverage before we can move to The Cloud 2.0.

    7. Re:Time for a backup? by XaXXon · · Score: 3, Informative

      Half life.

    8. Re:Time for a backup? by pz · · Score: 3, Funny

      Based on the movie 2001:

      HAL: "Sorry about this, I know it's a bit silly...just a moment...just a moment... I've just picked up a fault in the AE35 unit. It's going to go 100% failure within 72 hours."

      Dave:"It's still within operational limits right now?"

      HAL:"Yes. And it will stay that way till it fails."

      I don't have my copy of the book handy to check the original dialogue.

      --

      Put my fist through my alarm clock with its ding-dong death inside my ear. - The Blackjacks.
    9. Re:Time for a backup? by naglep · · Score: 4, Funny

      A comment very very similar to this one has appeared on slashdot cloud articles before - almost verbatim, I'd say. Can't help but wonder if you're one of those losers who keep logs of comments they like so they can copy/paste them later.

  2. Use of commas. by Anonymous Coward · · Score: 4, Funny

    Eats, shoots and leaves. Read it.

    1. Re:Use of commas. by schon · · Score: 4, Funny

      Maybe it was submitted by William Shatner?

  3. Digitzor link uesless by autocracy · · Score: 5, Informative

    I managed to ease a pageview out of it. That said, the /. summary says all they say, and you're all better served by the source they point to, which is what SHOULD have been in the article summary instead of the Digitzor site.

    See http://lists.openwall.net/linux-ext4/2010/01/04/8

    --
    SIG: HUP
  4. Ted T'so by RPoet · · Score: 4, Informative

    They have Ted T'so of Linux filesystem fame working for them now.

    --
    "Oppression and harassment is a small price to pay to live in the land of the free." -- Montgomery Burns.
  5. No ReiserFS? by CRCulver · · Score: 3, Interesting

    It's interesting that ReiserFS wasn't even an option here. I myself even ended up using Ext4 when I set up a new box not too long ago. It's a real shame that just because the creator of the filesystem committed a crime, people are drawn to treat the technology itself are somehow dishonored.

    1. Re:No ReiserFS? by pdbaby · · Score: 3, Insightful

      ...or maybe the fact that he's no longer involved brings up questions about its future direction. I'm sure they took a look at reiserfs previously

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    2. Re:No ReiserFS? by Anonymous Coward · · Score: 4, Funny

      ...maybe they felt it wasn't cutting edge enough.

    3. Re:No ReiserFS? by jspenguin1 · · Score: 5, Funny

      They need to change the name... How about
        Object-oriented
        Journalled
        File
        System?

    4. Re:No ReiserFS? by mqduck · · Score: 3, Interesting

      So it's not because the creator of the filesystem committed a crime, it's because the product has an unsavoury name

      Actually, it's more likely because the creator and main developer of the filesystem is suddenly gone. As I understand it, he wasn't a very friendly guy (surprise!) and drove others away from the project.

      --
      Property is theft.
  6. Google doesn't need journaling? by Paradigm_Complex · · Score: 3, Interesting

    The main advantage of EXT3 over EXT2 is that, with journaling, if you ever need to fsck the data, it goes a LOT quicker. It's interesting to note that Google never felt it needed that functionality.

    Additionally, I was under the impression that Google used massive numbers of commodity consumer-grade harddrives, as opposed to high-grade stuff which I presume is less likely to err. Couple this fact with the massive amount of data Google is working with and there has got to be a lot of filesystem errors, no?

    Can anyone else with experience with big database stuff hint as to why Google would not need to fsck their data (often enough for EXT3 to be worthwhile)? Is it cheaper just to overwrite the data from some backup elsewhere at this scale? How do they know the backup is clean without fscking that?

    --
    "A witty saying proves nothing." - Voltaire
    1. Re:Google doesn't need journaling? by spydum · · Score: 4, Informative

      Replicas stored across multiple servers -- if one is corrupted or unavailable requiring fsck, who cares? Ask the next server in line for the data.

    2. Re:Google doesn't need journaling? by tytso · · Score: 4, Interesting

      So there's a major problem with Soft Updates, which is that you can't be sure that data has hit the disk platter and is on stable store unless you issue a barrier operation, which is very slow. What Soft Updates apparently does is assume that once the data is sent to the disk, it is safely on the disk. But that's not a true assumption! The disk drive, especially modern ones with large caches, can reorder writes which are sent to the disk, sometimes (with the right pathological workloads) for minutes at a time. You won't notice this problem if you just crash the kernel, or even if you hit the reset button. But if you pull the plug or otherwise cause the system to drop power, data in the disk's write cache won't necessarily be written to disk. The problem that we saw with journal checksums and ext4 only showed up on a power drop, because there was a missing barrier operation, so this is not a hypothetical consideration.

      In addition, if you have a very heavy write workload, the Soft Updates code will need to burn a fairly large amount of memory tracking the dependencies and burn quite a bit of CPU figuring out which dependencies need to be rolled back. I'm a bit suspicious of how well they perform and how much CPU they steal from applications --- which granted, may not show up in benchmarks which are disk bound. But if the applications or the large number of jobs running on a shared machine are trying to use lots of CPU as well as disk bandwidth, this could very much be an issue.

      BTW, while I was doing some quick research for this reply. it seems that NetBSD is about to drop Soft Updates in favor of a physical block journaling technology (WAPBL), according to Wikipedia. They didn't get a reference to this, nor did they say why NetBSD was planning on dropping Soft Updates, but there is a description of the replacement technology here: http://www.wasabisystems.com/technology/wjfs. But if Soft Updates is so great, why is NetBSD replacing it and why did Free BSD add file system journaling alternative to UFS?

    3. Re:Google doesn't need journaling? by Jeff- · · Score: 5, Informative

      There's a lot of misinformation in this thread about softupdates. I only have so much time to reply so I'll hit a few key points. I'm the author of journaling extensions to softupdates so I have some experience in this area.

      This notion that softupdates was so complex and so inhibited new features in ffs is bogus. I've seen it repeated a few times. There simply was not much pressure for these features and the filesystem metadata did not support it until ufs2. The total amount of code dedicated to extended attributes in softupdates can't be more than 100 lines. ffs sees fewer features because we have fewer developers period.

      Furthermore, softupdates is just a different approach. It is no more complex than journaling. When I review a sophisticated journaling implementation such as xfs I see more lines of code dedicated to journaling and transaction management than softupdates requires for dependency tracking. I have worked on a number of production filesystems and while softdep is definitely not trivial, neither were any of the others unless you compare to synchronous ufs. I think a lot of people who are familiar with COW and Journaling are looking at this unfairly because they already know another system and forget how long it took to become comfortable with it.

      In cpu benchmarks softdep costs more than async ffs, this is true. However, rollbacks are actually quite infrequent because our buffercache attempts to write buffers without dependencies first. Generally there are enough of those which satisfy dependencies on other buffers that you can keep the pipeline busy. Looking at the code size and depth in any modern filesystem it's clear that a lot of cpu is involved. Are journal blocks not consuming memory? Is the transaction tracking free? Most dependency structures are quite small compared to generating a copy of a metadata block for a jouranl write.

      NetBSD abandoned softdep for something much simpler because they didn't have the resources to fix the bugs in it and they didn't incorporate fixes from FreeBSD. Their journaling implementation is similar to our gjournal which is mostly filesystem agnostic and does full block logging in a very simple fashion.

      The journaled filesystem project was started simply to get rid of fsck. I think this hybrid solution is very promising. It gives us a place to issue barriers which can affect arbitrary numbers of filesystem operations. The journal write overhead is much lower than with traditional journals.

      And regarding benchmarks; FreeBSD doesn't really have a comparably developed journaling filesystem to benchmark softdep against. I think it's unreasonable to compare linux with ext4 to FreeBSD with ffs+softdep for purposes of evaluating the filesystem design. Too many other factors come into play.

      You can read more about softdep journaling at http://jeffr_tech.livejournal.com/

      Thanks,
      Jeff

  7. As impressively as each other?! WTF?! by Anonymous Coward · · Score: 4, Funny

    From TFA:

    In their benchmarking, EXT4 and XFS performed, as impressively as each other.

    WTF kind of retarded sentence is that?! Did Rob Smith help you write that article?!

    In their benchmarking of EXT4 and XFS, EACH performed as impressively as THE OTHER.

    1. Re:As impressively as each other?! WTF?! by mqduck · · Score: 3, Informative

      Simply removing the second comma would make the sentence entirely correct:

      "In their benchmarking, EXT4 and XFS performed as impressively as each other."

      Adding "each" would make it a bit clearer, but the meaning is already obvious. I don't know why you think it has to be "THE other".

      --
      Property is theft.
  8. Still on ext2 on servers by ls671 · · Score: 3, Insightful

    We are still using ext2 on servers. Now I have an argument; if Google is still using ext2 maybe we aren't so foolish. We might update some day but it is not yet a priority. With UPS and proper fail over and backup procedure in place, I can't remember when a jounaling file system would have helped us in any way. They seem great for desktops/laptops although.

    --
    Everything I write is lies, read between the lines.
  9. It's Not Hans by TheNinjaroach · · Score: 4, Interesting

    I too have abandoned using ReiserFS but it's not about the horrible crime Hans committed. It's about the fact I don't think the company that he owned (who developed ReiserFS) has a great future, so I foresee maintenance problems with that filesystem. Sure, somebody else can continue their work but I'm not going to hold my breath.

    --
    I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
    1. Re:It's Not Hans by diegocg · · Score: 4, Informative

      Reiserfs has been undermaintained for a lot of time AFAIK. When hans started working in reiser4, he forgot completely about adding needed features to v3. The reiserfs disk format may be good, but the codebase is outdated. Ext4 has an ancient disk format in many ways, but the codebase is scalable, it uses delayed allocation, the block allocator is solid, xattrs are fast, etc etc. Reiserfs still uses the BKL, the xattr support that Suse added is said to be slow and not very pretty, it had problems with error handling etc etc...

  10. Re:Btrfs? by Paradigm_Complex · · Score: 5, Informative
    From kernel.org's BTRFS page:

    Btrfs is under heavy development, and is not suitable for any uses other than benchmarking and review. The Btrfs disk format is not yet finalized, but it will only be changed if a critical bug is found and no workarounds are possible.

    It's ready for benchmarking, it's just not ready for widespread use yet. If Google was looking for a filesystem to make a switch to in the near future, BTRFS simply isn't an option quite yet.

    It's really easy at this point to move from EXT2 to EXT4 (I believe you can simply remount the partition as the new filesystem, maybe change a flag or two, and away you go). It's basically free performance. If Google is convinced it's stable, there isn't much reason not to do this. It could act as an interim filesystem until something significantly better - such as BTRFS - gets to the point where it's dependable. The fact BTRFS was not mentioned here doesn't mean it's completely ruled out.

    --
    "A witty saying proves nothing." - Voltaire
  11. Re:Not A Nerd? by MBGMorden · · Score: 3, Interesting

    I too found it interesting, because it basically alleviates any need for me to worry about "upgrading" to ext4. My current Linux systemse use an ext3 /boot partition and everything else xfs. Given some of the press ext4 has gotten lately, I just trust xfs more, and knowing that I'm not really giving up any performance is a huge plus.

    Truthfully though, where the heck are the meta-data based filesystems that we were promised? I've love to be able to, on a filesystem level, instantly pull up a folder view of all videos - or all images. Or all images of my dog. Or all images outdoors. Or all images of my dog outdoors.

    Basically, just the ability to organize via an arbitrary number of categorized tags.

    --
    "People who think they know everything are very annoying to those of us who do."-Mark Twain
  12. XFS performance highly variable by bzipitidoo · · Score: 3, Interesting

    I've used XFS on a RAID1 setup with SATA drives, and found the performance of the delete operation extremely dependent on how the partition was formatted.

    I saw times of up to 5 minutes to delete a Linux kernel source tree on a partition that was formatted XFS with the defaults. Have to use something like sunit=64, swidth=64, and even then it takes 5 seconds to rm -rf /usr/src/linux. I've heard that SAS drives wouldn't exhibit this slowness. Under Reiserfs on the same system, the delete took 1 second. Anyway, XFS is notorious for slow delete operations.

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  13. GFS by jonpublic · · Score: 3, Insightful

    I thought google had their own file system named the google files system.

    http://labs.google.com/papers/gfs.html

    1. Re:GFS by joib · · Score: 3, Informative

      I believe GFS uses a local fs on each node to take care of, well, all the stuff that a normal local fs like ext3 does. GFS only does the distributed stuff on top of that.

  14. Ubuntu 9.10? by GF678 · · Score: 4, Interesting

    Gee, I hope they're not using Ubuntu 9.10 by any chance: http://www.ubuntu.com/getubuntu/releasenotes/910

    There have been some reports of data corruption with fresh (not upgraded) ext4 file systems using the Ubuntu 9.10 kernel when writing to large files (over 512MB). The issue is under investigation, and if confirmed will be resolved in a post-release update. Users who routinely manipulate large files may want to consider using ext3 file systems until this issue is resolved. (453579)

    The damn bug is STILL not fixed apparently. Some people get the corruption, and some don't. Scares me enough to not even try using ext4 just yet, and I'm still surprised Canonical was stupid enough to have ext4 as the default filesystem in Karmic.

    Then again, perhaps Google knows what they're doing.

    1. Re:Ubuntu 9.10? by Lennie · · Score: 4, Insightful

      They employ the main developer of ext2, ext3 and ext4.

      He probably knows a lot about it.

      --
      New things are always on the horizon
    2. Re:Ubuntu 9.10? by tytso · · Score: 3, Informative

      So Canonical has never reported this bug to LKML or to the linux-ext4 list as far as I am aware. No other distribution has complained about this > 512MB bug, either. The first I heard about it is when I scanned the Slashdot comments.

      Now that I'll know about it, I'll try to reproduce it with an upstream kernel. I'll note that in 9.04, Ubuntu had a bug which as far as I know, must have been caused by their screwing up some patch backports. Only Ubuntu's kernel had a bug where rm'ing a large directory hierarchy would have a tendency to cause a hang. No one was able to reproduce it on an upstream kernel,

      I will say that I don't ever push patches to Linus without running them through the XFS QA test suite. (Which is now generalized enough so it can be used on a number of file systems other than just XFS). If it doesn't have a "write a 640 MB file" and make sure it isn't corrupted, we can add it and then all of the file systems which use the XFSQA test suite can benefit from it.

      (I was recently proselytizing the use of the XFS QA suite to some Reiserfs and BTRFS developers. The "competition" between file systems is really more of a fanboy/fangirl thing than at the developer level. In fact, Chris Mason, the head btrfs developer, has helped me with some tricky ext3/ext4 bugs, and in the past couple of years I've been encouraging various companies to donote engineering time to help work on btrfs. With the exception of Hans Reiser, who has in the past me of trying to actively sabotage his project --- not true as far as I'm concerned --- we all are a pretty friendly bunch and work together and help each other out as we can.)

  15. Re:Windows Driver by fuzzyfuzzyfungus · · Score: 4, Insightful

    I can't imagine why it would.

    To the best of my knowledge, Google uses pretty much no Windows servers themselves(at least not for any of their public facing products, they almost certainly have some kicking around) and "a vast number of instances of custom in-house server applications" is among the least plausible environments for a Windows server deployment, so that is unlikely to change.

    On the desktop side, Google has a bunch of stuff that runs on Windows; but it all communicates with Google's servers over various ordinary web protocols and stores local files with the OS provided filesystem. The benefits of EXT4 on Windows would have to be pretty damn compelling for them to start requiring a kernel driver install and a spare unformatted partition.

    I suppose it is conceivable that some Google employee might decide to do it, for more or less inscrutable reasons; but it would have no connection at all to Google's broader operation or strategy.

  16. Re:Btrfs? by StarHeart · · Score: 4, Informative

    You don't have to start from scratch. You just have to enable the extents feature. It won't auto convert the old stuff, but any time something is changed it will be made into an extent.

    --
    Havoc Penington, the bane of my Linux desktop.
  17. Re:I upgraded from ext3 to ext4 and by jjohnson · · Score: 3, Informative

    When you run data centres around the world that are collectively the most powerful supercomputer known to man, you too can get a front page story on ./ announcing your upgrade.

    Until then, STFU.

    --
    Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.
  18. Re:Has Ted Cooked the Benchmarks Again? by tytso · · Score: 5, Informative

    So I'm not sure what you're talking about. If you're talking about delayed allocation, XFS has it too, and the same buggy applications that don't use fsync() will also lose information after a buggy proprietary Nvidia video driver crashes your machine, regardless of whether you are using XFS or ext4.

    If you are talking about the change to _ext3_ to use data=writeback, that was a change that Linus made, not me, and ext4 has always defaulted to data=ordered. Linus thought that since the vast majority of Linux machines are single-user desktop machines, the performance hit of data=ordered, which is designed to prevent exposure of uninitialized data blocks after a crash wasn't worth it. I and other file system engineers disagreed, but Linus's kernel, Linus's rules. I pushed a patch to ext3 which makes the default a config option, and as far as I know the enterprise distro's plan to use this config option to keep the defaults the same as before for ext3.

    Since it was my choice, I actually changed the defaults for ext4 to use barriers=1. which Andrew Morton vetoed for ext3 because again, he didn't think it was worth the performance hit. But with ext4, the benefits of delayed allocation and extents are so vast that it completely dominated the performance hit of turning on write barriers. That is what most of the performance benefits for ext4 come from, and it is very much a huge step forward compared to ext3.

    So with respect, you don't know what you are talking about.

    -- Ted

  19. Re:Not A Nerd? by smash · · Score: 3, Interesting

    You can use ZFS. Just run FreeBSD or opensolaris. The amount of software that runs on Linux but not FreeBSD (particularly if you're talking about open-source) is exceedingly minimal.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.