Archive for February, 2012

FAST’12 Report

I’m sitting here at the hotel where FAST’12 was just held, because my flight home isn’t until this evening and I didn’t schedule anything to do. Somewhere along the way I caught a cold, so going out and “seeing the sights” doesn’t appeal to me very much. I might as well write down my thoughts about the conference while they’re still fresh.

First, FAST is just like a candy store for me. I work in a fairly specialized area, so seeing what other people are doing in areas directly relevant to me is a treat. Seeing stuff that’s being done around the edges of my own area is even better, because it gets me thinking about directions in which to go next. Seeing all of the young presenters and old friends all in one place is an experience like no other. Also, my tutorial on Tuesday went pretty well. I was afraid that my voice would give out or that the length would be wildly off or that I’d just plain lose it and forget what I’d planned to say. None of those things happened, unless you count my “losing the thread” a little on the slide about fault handling (apologies to the audience for that), and the feedback I’ve heard seems mostly positive, so I’m happy.

There were quite a lot of questions about GlusterFS, and the acquisition, and especially about the future of HekaFS. There’s not a whole lot I can add to what I’ve said before on that subject. While I was in Bangalore a couple of weeks ago integration of the HekaFS functionality into GlusterFS was a major topic. We now have a concrete plan for how to do it, but implementation of that plan has barely begun and probably won’t ramp up fully until GlusterFS 3.3 is all the way out the door.

But enough about me and my project. What’s going on in the rest of the filesystems and storage world? Here are some of the papers that seemed most interesting to me.

  • Grupp et al’s Bleak Future of NAND Flash Memory was in the second slot on Wednesday, and seems to have attracted the most attention. That attention includes a mention on Slashdot, which I wouldn’t wish on anyone. Sure, they might not have accounted as fully as they could for likely future advances in how flash devices are built, especially with respect to number of chips. On the other hand, there’s still a huge difference between “I hope you’ll address X in your next paper” (the USENIX/ACM/IEEE approach) and “your paper sucks because X and hur hur hur” (the Slashdot/Reddit/HN approach). There were some interesting results in there, and if you really care about where flash is going I recommend reading the whole paper. The most worrying thing to me was the fact that TLC flash is likely to have such a low number of write cycles that it will be practically unusable for more than storing settings etc. in a real storage system based on something else.
  • Fryer et al‘s Recon: Verifying File System Consistency at Runtime was co-winner of the conference’s Best Paper award, and deservedly so. It looks like a very interesting approach to protecting storage systems against bugs in filesystems. As Daniel mentioned in a poster-session chat, approaches already exist to deal with other kinds of bugs or errors, so the decision to go where coverage is thin makes a lot of sense.
  • Chidambaram et al‘s Consistency Without Ordering described an approach to filesystem consistency that relies on issuing parallel requests for a single write in such a way that partial success can be detected and dealt with later, instead of having to serialize those requests. On the one hand, I think the basic idea holds a lot of promise. On the other hand, the implementation or explanation of that idea could have been better (hint: just don’t benchmark against ext2). Still, good ideas are the important thing, and I might write a separate post about this one, so I’ll leave it there for now.
  • Kim et al‘s Revisiting Storage for Smartphones was the other Best Paper winner, and again deservedly so. If your phone seems sluggish, it might not be the network. It might be a storage problem, either caused entirely or exacerbated by some applications’ use of storage in naive ways that don’t actually work that well on flash. SQLite deserves special condemnation here, since its behavior which is merely lousy on real storage becomes truly horrendous on low-end flash.
  • Sumbaly et al‘s Serving Large-scale Batch Computed Data with Project Voldemort was welcome not just because of the content, but also because it gave me a chance to meet Roshan in person at last. More generally, it gave the entire FAST crowd a chance to meet and listen to someone of his standing from a community that has IMO been too separate for too long. We definitely need more of this kind of cross-pollination.
  • There were a lot of good work-in-progress short talks, but this post is already getting unreasonably long so I’ll just pick one that particularly struck me. Rosenthal et al‘s Toward an Economic Model of Long-Term Storage (presented most ably by Ethan Miller due to illness) takes Monte Carlo methods more commonly used in the financial industry to estimate financial risk, and applies them to the problem of estimating the long-term cost of storing data.

I could go on and on about a half-dozen other papers as well. I highly recommend that anyone interested in these kind of things check out the full list of papers at the first link above. Even better, come to FAST’13 and see for yourself what new kinds of brilliance the coming year will bring.