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 scale, heavy HA requirements

The minor quibble is that no metadata servers I know of translate names to sectors. They all translate names in the global distributed namespace into a tuple of a node ID and a file/object ID on that node, and then other layers are responsible for translating to sectors (which might themselves be virtualized eight ways to Sunday). That's just a minor objection, though. My major objection is to the idea that there must be a metadata-server role separate from the data-server role. GlusterFS has proven that assumption false. Even Ceph, which does have a separate metadata-server role, distributes that role in very much the same way as the proposed alternative object stores, so it's not subject to "heavy HA requirements" any more than they are.

There are some valid points to be made about the ordering and atomicity requirements of a full POSIX filesystem vs. an object store with simpler (saner?) semantics, but the "heavy HA requirements" of metadata servers are avoidable. There is one well known case of a distributed not-quite-filesystem that made that mistake (HDFS), but an argument based on one bad example won't get very far.

Comments for this blog entry