-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
41 lines (24 loc) · 1.96 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
pCacheFS - http://code.google.com/p/pcachefs/downloads/list
Copyright 2012 Jonny Tyers
pCacheFS is license under Apache License 2.0 - see the LICENSE file for details.
pCacheFS provides a simple caching layer for other filesystems. The cache, however, does not disappear when you start/stop pCacheFS or reboot - it is persistent.
It is designed for caching large amounts of data on remote filesystems that don't change very much, such as movie/music libraries.
Key features
* you can choose where to store your persistent cache - local harddisk, ramdisk filesystem, etc
* cache contents of any other filesystem, whether local or remote (even other FUSE filesystems such as sshfs)
* pCacheFS caches data as it is read, and only the bits that are read
Currently pCacheFS mounts are read-only - writes are not supported.
Example
Suppose I have a slow network filesystem mounted at /remote.
$ ls /remote
hugefile1 hugefile2 dir3
If I want to use another local directory as a persistent cache for this filesystem, I can use a pCacheFS mount:
$ pcachefs.py -c /cache -t /remote /remote-cached
I will now have a mirror of /remote at /remote-cached.
$ ls /remote-cached
hugefile1 hugefile2 dir3
This is our caching filesystem. We can read files from this filesystem and their contents will be cached in files in /cache. (As well as file contents, metadata and directory listings are also cached.)
So, the first time I access hugefile1 it will be as slow as it would have been via /remote:
$ cat /remote-cached/hugefile1
But, access hugefile1 again and you'll notice a big speed improvement. This is because the data isn't actually being read from the slow filesystem at /remote, it is being read from /cache.
Note that in order to get the benefit of the cache you must access files via your pCacheFS mountpoint (/remote-cached above, but this can be anything you like). Accessing the target filesystem directly (via /remote above) will not see any speed gains as you are bypassing pCacheFS.