Subject: [nfsv4] "you mean pNFS stripes data?"

From: "Mike Eisler" <[email-masked]>
Date: Sat, 10 May 2008 09:06:53 -0700 (PDT)

This was the surprised question I got about 48 hours
ago from someone I was trying to convince to implement
a pNFS client.

He thought pNFS such separated metadata from data, providing
a roughly 2X improvement in performance.

Gee, why might he think that. Perhaps in small part
because the spec says:

<   NFSv4.1's pNFS feature partitions the file system protocol into two
<   parts: metadata and data.  Where data being the contents of a file  and
<   the metadata is "everything else".  The metadata functionality is
<   implemented by a NFSv4.1 server that supports pNFS and the
<   operations described in (<xref target="nfsv41operations" />) (a 
metadata server).

I would like it to say:

>   NFSv4.1's pNFS feature stripes file systems across
>   multiple storage servers.  For expediency, the first
>   instantiation of pNFS, as part of NFSv4.1, separates the
>   file system protocol processing into two parts: metadata
>   processing and data processing. Data consists of the
>   contents of regular files which are striped across
>   storage servers. Data striping occurs on both a
>   file-by-file basis, and within sufficiently large files,
>   on a block-by-block basis. In contrast, striped
>   access to metadata by pNFS clients is not provided in
>   NFSv4.1, even though the file system backend of a pNFS
>   server might stripe metadata.  Metadata consists of
>   everything else, including the contents of non-regular
>   files (e.g.  directories); see <xref
>   target="metadata"/>.  The metadata functionality is
>   implemented by an NFSv4.1 server that supports pNFS and
>   the operations described in (<xref
>   target="nfsv41operations" />); such a server is called a
>   metadata server (<xref target="mds"/>).

> </t>
> <t>
119c136
< <section title="Metadata">
---
> <section title="Metadata" anchor="metadata">
128c145
< <section title="Metadata Server">
---
> <section title="Metadata Server" anchor="mds">

And do me a favor. When you talk to anyone about pNFS,
accentuate the positive. The lack of end-to-end metadata
striping is an expediency. There is sufficient support in the
pNFS community to fix this, and we will, *after* NFSv4.1.

-- 
Mike Eisler, Senior Technical Director, NetApp, 719 599 9026,
http://blogs.netapp.com/eislers_nfs_blog/

_______________________________________________
nfsv4 mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/nfsv4

---

From: "Halevy, Benny" <[email-masked]>
Date: Sat, 10 May 2008 13:19:57 -0400

The test you suggested looks fine to me.
Re metadata striping I think that referrals can achieve
some of that...

Benny

-----Original Message-----
From: [email-masked] on behalf of Mike Eisler
Sent: Sat 2008-05-10 09:06
To: [email-masked]
Subject: [nfsv4] "you mean pNFS stripes data?"

119c136
128c145

---

From: Robert Gordon <[email-masked]>
Date: Sat, 10 May 2008 13:21:00 -0700

I prefer your updates.

Robert.

---

From: Dean Hildebrand <[email-masked]>
Date: Sat, 10 May 2008 16:49:34 -0700

>>   metadata server (<xref target="mds"/>).
I agree that the original text is unclear, but I don't think the 
alternate sufficiently clarifies pNFS.  pNFS doesn't stripe files 
systems, it provides parallel data access to file systems.  It is now an 
'out-of-band' protocol.  In addition, I don't think any introduction 
should get into how files can be striped.  It is too much too soon if 
you will.  Also, by suggesting there are 2 ways to stripe data, you are 
insinuating that there are ONLY 2 ways to stripe data, which is 
incorrect, striping can be done however a layout type wishes to stripe 
it (per directory is one other way that comes to mind).  

Also, I wouldn't say "For expediency, the first instantiation of pNFS, 
as part of NFSv4.1, separates the file system protocol processing into 
two parts:...".  I think the file system protocol will always be divided 
into 2 parts (data and metadata), but it is possible that we subdivide 
metadata (and its processing) into different types, e.g., directory, 
file, location, ...).  I think the word (or action) of expediency, if 
you can use that word and NFSv4.1 in the same sentence :), would apply 
to the lack of metadata striping.

How about the following text for the first part of the paragraph:

  NFSv4.1's pNFS feature enables parallel data access to
  a file system that stripes data across multiple storage servers
  (known as data servers).  pNFS provides an out-of-band
  protocol, which separates the file system protocol processing
  into two parts: metadata processing and data processing. Data consists of the
  contents of regular files which are striped across
  storage servers. For expediency, pNFS within NFSv4.1
  does not enable pNFS clients for parallel access to metadata on multiple servers,
  even though the file system backend of a pNFS
  server might stripe metadata.  Metadata consists of
  everything else...<as above>

Dean