A content hash based data store with a filesystem layer, using variable sized blocks, arbitrarily sized data and utilising some domain knowledge to aid efficient block boundary selection.
Project description
A content hash based data store with a filesystem layer, using variable sized blocks, arbitrarily sized data and utilising some domain knowledge to aid efficient block boundary selection.
Note: the "mount" filesystem facility uses FUSE,
which may need manual OS installation.
On MacOS this means installing osxfuse
for example from MacPorts.
You will also need the llfuse
Python module,
which is not automatically required by this package.
The package provides the vt
command to access
these facilities from the command line.
This system has two main components:
- Stores: storage areas of variable sized data blocks indexed by the cryptographic hashcode of their content
- Dirents: references to filesystem entities containing hashcode based references to the content
These are logically disconnected. Dirents are not associated with particular Stores; it is it sufficient to have access to any Store containing the required blocks.
The other common entity is the Archive,
which is just a text file containing
a timestamped log of revisions of a Dirent.
These can be mounted as a FUSE filesystem,
and the vt pack
command simply stores
a directory tree into the current Store,
and records the stored reference in an Archive file.
See also the Plan 9 Venti system: (http://library.pantek.com/general/plan9.documents/venti/venti.html, http://en.wikipedia.org/wiki/Venti) which is also a system based on variable sized blocks.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cs.vt-20190309.tar.gz
.
File metadata
- Download URL: cs.vt-20190309.tar.gz
- Upload date:
- Size: 159.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b946c451966ae540dbb89f194b27206e3531ba85afef0a7aabe098ba76d51477 |
|
MD5 | 8f9bc9b216ce1691dd3da3718437dc48 |
|
BLAKE2b-256 | afb59910418e9396b8b4c3a7e17707b8439b78466f3171a68e3aaff381d07750 |