Other articles


  1. Ten Stages of Technology Familiarity

    Wed 10 September 2014

    tags: humor

    Without further ado...

    1. Never heard of it.

    2. Yeah, I hear all the hipsters yammering about it.

    3. I checked out the docs and examples once.

    4. I used it for a side project.

    5. We're using it for some new projects at work.

    6. We're using it in production.

    7. We're using ...

    read more
  2. Wannabe of the Month: Skylable

    Every month or two, someone comes along and claims to be the new Best Thing Ever in distributed file storage. More often than not, it's just another programmer who recently discovered things like consistent hashing and replication, then slapped together another HTTP object store because that's what people ...

    read more
  3. Inktank Acquisition

    I know a lot of people are going to be asking me about Red Hat's acquisition of Inktank, so I've decided to collect some thoughts on the subject. The very very simple version is that I'm delighted. Occasional sniping back and forth notwithstanding, I've always been ...

    read more
  4. New Style Replication

    This afternoon, I'll be giving a talk about (among other things) my current project at work - New Style Replication. For those who don't happen to be at Red Hat Summit, here's some information about why, what, how, and so on.

    First, why. I'm all out of ...

    read more
  5. Change the Axis

    The other day, I was talking to a colleague about the debate within OpenStack about whether to chase Amazon's AWS (what another colleague called the "failed Eucalyptus strategy") or forge its own path. It reminded me of an idea that was given to me years ago. I can't ...

    read more
  6. Data Gravity

    In the last few days, I had an interesting exchange on Twitter about the concept of data gravity. For convenience, I'll include the relevant parts here.

    • Mat Ellis: Interesting piece by @mjasay link … @randybias is right on the money, data gravity is already a big deal on the cloud ...

    read more
  7. Tiers Without Tears

    A lot of people have asked when GlusterFS is going to have support for tiering or Hierarchical Storage Management, particularly to stage data between SSDs and spinning disks. This is a pretty hot topic for these kinds of systems, and many - e.g. Ceph, HDFS, Swift - have announced upcoming support ...

    read more
  8. The World Is Not Flat

    Way back when I was a young pup, either in college or after that but before I started my career, I got to use an operating system called MTS. That stands for Michigan Terminal System. It was created to run on IBM (and later Amdahl) mainframes, when U of M ...

    read more
  9. Data Extortion

    This is a story about the dark side of moving your stuff into the cloud. It does have a (reasonably) happy ending, but along the way there are some important lessons to be learned about the relationship between cloud users and cloud providers, and how it's possible for people ...

    read more
  10. Roll Back or Rock On?

    For a while now, Kyle Kingsbury has been doing some excellent work evaluating the consistency and other properties of various distributed databases. His latest target is Redis. Mostly I agree with the points he makes, and that Redis Cluster is subject to inexcusable data loss, but there is one point ...

    read more
  11. Giving Thanks

    Thu 28 November 2013

    This was inspired both by a blog post elsewhere and by a nice email I got this morning thanking me for this blog (thanks Tristan). It seems like we all fail to give thanks, and nowhere more so than in the "gift economy" of open source. I'll start with ...

    read more
  12. Shared Libraries are Obsolete

    I was around when shared libraries were still a new thing in the UNIX world. At the time, they seemed like a great idea. On multi-user systems like those I worked on at Encore, static linking meant not only having a separate copy of the same code in every program ...

    read more
  13. Fixing Fsync

    When I wrote about how local filesystems suck a while ago, it sparked a bit of debate. Mostly it was just local-filesystem developers being defensive, but Dave Chinner did make the quite reasonable suggestion that I could help by proposing a better alternative to the fsync problem. I've owed ...

    read more
  14. The "IOPS Myth" Myth

    It's nice to see more people becoming aware that IOPS are not the be-all and end-all of storage performance. Unfortunately, as with all consciousness raising, the newest converts are often the ones that take things too far. Thus, we get extreme claims like IOPS Are A Scam or Storage ...

    read more
  15. Secure Email

    Ever since one of the talks at LISA, I've been thinking about secure email. My thoughts are nowhere near complete, but I need to get them out of my head and I do that by writing about them. Apologies in advance.

    I've actually been thinking for many years ...

    read more
  16. Moot Comments

    I have a couple of posts coming up where I'll be soliciting feedback, so it's time to implement blog comments again. After looking at the alternatives, I eventually decided that Moot had the best combination of features for me (as the guy who has to integrate them) and ...

    read more
  17. Comedic Open Storage

    Thu 24 October 2013

    tags: storage

    I've written before about some people's mania for object storage as an alternative to blocks and files. It's a valid model, but I do think its benefits are being pretty drastically oversold. Often there's a lot of FUD about distributed filesystems in particular, from people who ...

    read more
  18. Leaning Out

    Thu 10 October 2013

    tags: working

    In April of '89 I left my family and friends to move from Michigan to Massachusetts for a programming job. The new job paid twice as much as my first programming job had, which means three times as much as I was making since that company laid me off, so ...

    read more
  19. Model Checking

    Fri 27 September 2013

    tags: process

    Model checking is one of the most effective tools available for reducing the prevalence of bugs in highly concurrent code. Nonetheless, a surprising number of even very smart and very senior software developers and architects seem to know about it. Of the many such people I've worked with over ...

    read more
  20. SAN Stalwarts and Wistful Thinking

    I've often said that open-source distributed storage solutions such as GlusterFS and Ceph are on the same side in a war against more centralized proprietary solutions, and that we have to finish that war before we start fighting over the spoils. Most recently I said that on Hacker News ...

    read more
  21. Local Filesystems Suck

    Distributed filesystems represent an important use case for local filesystems. Local-filesystem developers can't seem to deal with that. That, in a nutshell, is one of the most annoying things about working on distributed filesystems. Sure, there are lots of fundamental algorithmic problems. Sure, networking stuff can be difficult too ...

    read more
  22. Technical Credit

    To a first approximation, "software engineering" refers to all of the things you need to know when you take "programming" and try to scale it up - more code, more people, more time. You don't need an a civil engineer to dig a latrine, but you'd better have one ...

    read more
  23. GlusterFS 3.5 Features

    It's time to let some cats out of some bags. As my loyal readers (yeah right) have surely noticed, things have been quiet around here. Part of that has been the result of vacations and such, but also there's a lot of stuff I just haven't felt ...

    read more
  24. Avoiding Jet Lag

    Thu 25 July 2013

    tags: travel

    And now for something completely different...

    As part of my job - educating and evangelizing and whatever else you call it - I travel a fair amount. I know there are other people who travel ten times as much as I do, but then there are many more who travel less than ...

    read more
  25. Startups and Patents

    Fri 19 July 2013

    tags: legal

    This should be a pretty familiar story to anyone in high tech by now. Startup makes something cool, becomes a target for patent litigation from what we used to call an NPE (Non Practicing Entity). Apparently the new term is PAE (Patent Assertion Entity) but I prefer an even more ...

    read more
  26. Small Synchronous Writes

    Sometimes people ask me why I always use small synchronous writes for my performance comparisons. Surely (they say), there are other kinds of operations that are more common or more important. Yes there are (I say), and don't call me Shirley. But seriously, folks, there are definitely other kinds ...

    read more
  27. Performance Measurement Pitfalls

    One of the problems with measuring and comparing performance of scalable systems is that any workload capable of producing meaningful results is going to be highly multi-threaded, and most developers don't know much about how to collect or interpret the results. After all, they hardly ever get any training ...

    read more
  28. Two Weeks is Not a Sprint

    We're moving to an "agile" development process at work. Yes, we're becoming scrumbags. ;) One of the terms that really bothers me is "sprint" because I think of a sprint as a flat-out effort. That means minimal eating, sleeping, or time with family. Even hard-core hackers rarely do that ...

    read more
  29. Lies, Damn Lies, and Parallels

    This apparently happened a while ago, but it recently came to my attention via LWN that James Bottomley has made the claim that "Gluster sucks" (not a paraphrase, those seem to be his exact words). Well, I couldn't just let that go by, could I? Why would he say ...

    read more
  30. Package Managers

    There are many things that differentiate a true software engineer from a mere programmer. Most of them are unpleasant - planning releases, reviewing designs or code, testing, release engineering, and so on. One of the most odious tasks is packaging software. I'll admit that it's an area where my ...

    read more
  31. Metadata Servers

    I was sad that I had to miss RICON East, because I knew they had a lot of great speakers lined up. I really liked James Hughes's presentation, but must take issue with slide 15.

    Metadata Servers

    Required by traditional filesystems (POSIX) to translate names to sectors

    Hard to ...

    read more
  32. Starting Over

    You might have noticed that things look a bit different around here. OK, if you're reading this in an RSS reader then maybe not, but otherwise it's kind of obvious. I've switched platforms yet again, because I was feeling a bit blocked. Publishing new stuff using my ...

    read more