linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Theodore Ts'o <tytso@mit.edu>
To: Al Viro <viro@ftp.linux.org.uk>
Cc: Xin Zhao <uszhaoxin@gmail.com>,
	mingz@ele.uri.edu, mikado4vn@gmail.com,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-fsdevel@vger.kernel.org
Subject: Re: Question regarding to store file system metadata in database
Date: Mon, 20 Mar 2006 08:09:50 -0500	[thread overview]
Message-ID: <20060320130950.GA9334@thunk.org> (raw)
In-Reply-To: <20060319194723.GA27946@ftp.linux.org.uk>

On Sun, Mar 19, 2006 at 07:47:23PM +0000, Al Viro wrote:
> As for "more efficient"...  300 lookups per second is less than an
> improvement.  It's orders of magnitude worse than e.g. ext2; I don't
> know in which world that would be considered more efficient, but I
> certainly glad that I don't live there.

There are two problems... well, more, but in the performance domain,
at least two issues that stick out like a sore thumb.

The first is throughput, and as Al and others have already pointed out
300 metadata operations per second is defintely nothing to write home
about.  The second is latency; how much *time* does it take to perform
an individual operations, especially if you have to do an upcall from
the kernel to a userspace database process, the user space process
then has to dick around its own general purpose,
non-optimized-for-a-filesystem data structures, possibly make syscalls
back down into the kernel only to have the data blocks pushed back up
into userspace, and then finally return the result of the "stat"
system call back to the kernel so the kernel can ship it off to the
original process that called stat(2).

Even in WinFS, dropped from Microsoft Longwait, it really wasn't using
the database to store all metadata.  A better way of thinking about it
is a forcible bundling of a Microsoft's database product (European
regulators take note) with the OS; all of the low-level filesystem
operations are still being done the traditional way, and it's only
high level indexing operation which are being done in userspace (and
only in userspace).  It would be like taking the taking the locate(1)
userspace program and claiming it was part of the filesystem; it's
more about packaging than anything else.

						- Ted

  parent reply	other threads:[~2006-03-20 13:10 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-19  4:48 Question regarding to store file system metadata in database Xin Zhao
2006-03-19  5:07 ` Mikado
2006-03-19 17:48   ` Xin Zhao
2006-03-19 17:58     ` Ming Zhang
2006-03-19 18:11       ` Xin Zhao
2006-03-19 18:26         ` Ming Zhang
2006-03-19 18:50           ` Xin Zhao
2006-03-19 19:47             ` Al Viro
     [not found]               ` <441DC2D6.4060001@societasilluminati.org>
2006-03-19 21:24                 ` Ming Zhang
2006-03-20 13:09               ` Theodore Ts'o [this message]
2006-03-20 15:13                 ` Xin Zhao
2006-03-20 19:36                   ` Xin Zhao
2006-03-20 19:58                     ` Al Viro
2006-03-20 22:53                       ` Xin Zhao
2006-03-20 23:32                         ` Al Viro
2006-03-20 21:08                     ` Matti Aarnio
2006-03-20 22:28                     ` Erez Zadok
2006-03-20 22:19                   ` Theodore Ts'o
2006-03-21  6:51                     ` Miklos Szeredi
2006-03-21 20:05                   ` Pavel Machek
2006-03-22 15:21                     ` Xin Zhao
2006-03-19 21:34             ` Ming Zhang
2006-03-20  8:30         ` Matti Aarnio
2006-03-19 23:06 ` Alan Cox
2006-03-19 23:44   ` Matthew Wilcox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060320130950.GA9334@thunk.org \
    --to=tytso@mit.edu \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mikado4vn@gmail.com \
    --cc=mingz@ele.uri.edu \
    --cc=uszhaoxin@gmail.com \
    --cc=viro@ftp.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).