Re: HSM + Linux

Larry 'Daffy' Daffner (vizzie@mail.airmail.net)
Thu, 19 Mar 1998 21:25:45 -0600


>>>>> "RvR" == Rik van Riel <H.H.vanRiel@fys.ruu.nl> writes:

RvR> On Thu, 19 Mar 1998, Jason Duerstock wrote:
>> Is there any current or planned support for hierarchical storage
>> management in any of the Linux file systems? I would be really
>> interested to see something in ext2 (or maybe Coda since it's
>> already chock full o' userland fun) where a file could be set
>> with an 'off-line' attribute at which the I/O operation would
>> block until a daemon could bring it on-line...
>>
>> Am I totally off in left field here?

RvR> Just a bit :-). We would want to support files that are larger
RvR> than the 'caching device', so we shouldn't page in a complete
RvR> file. Furthermore, as a file could be spread out over more
RvR> 'background storage volumes', we'd want the application to
RvR> unblock as soon as the first blocks of data have arrived.

RvR> To do that, we'd need: - a Dvd-FS like, multi-volume support
RvR> for the background media - a (kernel-level?) method for paging
RvR> in/out chunks of file - some other bookkeeping thing - a way to
RvR> warn the user that his file is on background storage, so he/she
RvR> doesn't abort the program in frustration :-)

In-kernel HSM's are tricky. If you truly want a normal filesystem to
do HSM, the best way to do it is to build the HSM, then put hooks in
the filesystem whereby the kernel can notice a file as being inf
nearline/offline storage, and call a userland program to bring it back
in. (also, you'll want hooks for the kernel to know when the
filesystem is low on space, so it can start sending files to secondary
storage). Working in something other than whole files makes an even
bigger mess of it. If you really want to do this, the best alternative
is to create a virtual filesystem which mounts via NFS first, then add
the kernel hooks in once the storage system is up to snuff. Anything
else and you're basically begging for trouble, needing to debug both
the HSM layer and the kernel hook layer at the same time.

It would most certainly be a very large, complex project, at least if
it's done anywhere approaching 'correctly' :)

-Larry

-- 
  Larry Daffner        |  Linux: Unleash the workstation in your PC!
  vizzie@airmail.net / http://web2.airmail.net/vizzie/
If people think nature is their friend, then they sure don't need an enemy.
        --Kurt Vonnegut

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu