Ross, Gary (G.A.)
2007-Jan-26 18:57 UTC
[zfs-discuss] A little different look at filesystems ... Just looking for ideas
Here''s something I''ve been noodling around for a while. I''d like to run this by some of you in this forum and see what you think. If I''m off topic, I apologize. ZFS gives large companies the ability to have huge amounts of data available to the desktop user. Moving the user data from a locally installed system to a ZFS based server makes a huge amount of sense, not only saving money in the base configuration of the desktop, but also in maintenance, and backups etc ... It make mobility within the company easier, as they can just access the files from anywhere IN the company. That''s wonderful. Only there is one small problem. Many companies that are having major issues with mobility are giving more and more employees laptops. Some of the data they need can be gotten off the Company''s portal, but it still requires the OS and applications to be installed locally, and user data to be on the local disk as well. As more and more laptops are purchased, the issues simply multiply, and the company now has the same maintenance issues they started with! What if something like the old CacheFS was revived, using ZFS as the base file system instead of UFS? Using the ZFS filesystems on servers as the "master" systems, the laptop builds a "cache" of files, used in the last month or so. Could be applications or user data, it would not matter. If the system was disconnected from the network, say on an airplane, the data and applications would still be available. Using the Copy on Write method in ZFS, the local cache of user data would then update when connected back to the server. If anything happens to the system, the only files actually lost would be what was done since the last update to the master. This model could be used at the desktop as well. It would effective reduce the bandwidth needed for NFS mounted clients, and could handle far many clients than without a cache. In the end, the only thing different from a laptop and a desktop might be the size of the cache. If there was a problem, simply clean the cache out and start over. This also would commonize the maintenance models between laptop and desktop. Could this be a good thing, or am I way off base??? Gary A. Ross Network Operations Architect Ford Motor Company gross at ford.com Phone: (313) 390-4313
Ed Gould
2007-Jan-26 19:11 UTC
[zfs-discuss] A little different look at filesystems ... Just looking for ideas
On Jan 26, 2007, at 10:57, Ross, Gary (G.A.) wrote:> ... > What if something like the old CacheFS was revived, using ZFS as the > base file system instead of UFS? > ... > > Could this be a good thing, or am I way off base???Disconnected operation is a hard problem. One of the better research efforts in that area was CODA, at CMU. CODA was, as I recall, and extension to AFS, but it''s probably reasonable to take some of those ideas and marry them with ZFS. CODA is now open-source; at least the BSDs have it. --Ed
Brian Hechinger
2007-Jan-26 19:17 UTC
[zfs-discuss] A little different look at filesystems ... Just looking for ideas
On Fri, Jan 26, 2007 at 11:11:13AM -0800, Ed Gould wrote:> > Disconnected operation is a hard problem. One of the better research > efforts in that area was CODA, at CMU. CODA was, as I recall, and > extension to AFS, but it''s probably reasonable to take some of those > ideas and marry them with ZFS. CODA is now open-source; at least the > BSDs have it.It''s funny you should mention CODA. I''ve just recently started looking at it as a way to get davfs mounting support onto Solaris. It''s not been easy. The CODA Solaris kernel module is several years old and looks like it hasn''t been touched in at least 2 years. It does not cleanly build on svn_50. CODA itself has issues as well. CODA certainly looks like an interesting option as it makes it very easy to support filesystems under Solaris (we *still* lack smbfs for pete''s sake) It seems like lots of work is going to be required to make it useful however. NetBSD 3.1 is currently getting installed on my Ghetto Laptop, at which point I will start playing with CODA. If I like what I see, I''ll probably look into spending some time trying to at least get the kernel module working. -brian -- "The reason I don''t use Gnome: every single other window manager I know of is very powerfully extensible, where you can switch actions to different mouse buttons. Guess which one is not, because it might confuse the poor users? Here''s a hint: it''s not the small and fast one." --Linus
Matthew Ahrens
2007-Mar-13 23:25 UTC
[zfs-discuss] A little different look at filesystems ... Just looking for ideas
Ross, Gary (G.A.) wrote:> What if something like the old CacheFS was revived, using ZFS as the > base file system instead of UFS? Using the ZFS filesystems on servers as > the "master" systems, the laptop builds a "cache" of files, used in the > last month or so.If we ignore the "merging" problem for a moment (ie, where the same file/s are changed on both server and laptop), then you can accomplish a lot of this today (albeit somewhat clunkily) using zfs send/recv. Keep the "main" copy on the server, and use that when attached. When the laptop wants to detach, just ''zfs send'' the latest changes from the server to the laptop. If not too much has changed, this will be fast. When the laptop reconnects, ''zfs send'' the changes back to the server. Essentially, you would want to change what is mounted on /home/$user based on where the "main" copy is stored. When connected to the server, it should point to nfs://server/home/$user, but when disconnected, point to local_zpool/home/$user. Connecting/disconnecting would involve doing the ''zfs send|zfs recv'' plus changing the mount. The fs that is not currently the "main" one should be mounted read-only to avoid the merging problem. As I said, this is clunkier than a "real" solution would be, but it makes for some interesting possibilities. --matt