Open Source Deduplizierung

Workshop - Deduplizierung mit lessfs unter Linux

15.12.2011
Von Thomas Steudten

Konfigurationsdatei lessfs.cfg

In der Konfigurationsdatei "lessfs.cfg" erkennt man zwei Verzeichnisstrukturen: "dta" für die Datenblöcke und "mta" für Metadaten, wie Hard- und Softlinks, Dateiblöcke, Verzeichniseinträge, Blockauslastung und Freieblockliste. Nutzt man Tokyocabinet als Datenbank, dann erkennt man die Dateiendung "tcb".

Die eigentlichen Datenblöcke des lessfs-Dateisystems werden im Verzeichnis "dta" als Datei "blockdata[.tcb |.dta]" gespeichert. Hier kommen also die Vor- und Nachteile des darunter liegenden Dateisystems zum Tragen. Je schneller dieses I/O-Operationen abwickeln kann, desto weniger Zeit werden die lessfs-Threads im Status Wait-IO verbringen.

Die Dateien im Verzeichnis gesetzt durch die Optionen BLOCKUSAGE_PATH und FILEBLOCK_PATH sollten wenn möglich nicht im gleichen Dateisystem abgelegt werden, das heißt idealerweise nutzt man unabhängige Disks dafür.

lessfs ist in der Lage, auch die Datenblöcke mit einem Komprimierungsalgorithmus in der Auswahl zu bearbeiten. Die Option "COMPRESSION" bietet hierfür die Möglichkeiten "qlz", "lzo", "bzip", und "deflate" oder auch "disabled" an. Dabei ist zu beachten, dass dies bei der Kompilierung mit angegeben wird.

Hat man die Option "DEBUG=5" gesetzt, erkennt man ein erfolgreiches Einhängen des Dateisystems im Systemlog an der Ausgabe der nachfolgenden Zeilen:

The selected data store is tokyocabinet.

Lessfs transaction support is enabled.

config->blockdata = /dedup/dta

Threaded background delete is enabled

Hash MHASH_TIGER192 has been selected

Lessfs uses a 24 bytes long hash.

Automatic defragmentation is enabled.

cache 1024 data blocks

Tuning the bucketsize for /dedup/mta/fileblock.tch to 1048576

Tuning the bucketsize for /dedup/mta/blockusage.tch to 1048576

Tuning the bucketsize for /dedup/mta/metadata.tcb to 1048576

Tuning the bucketsize for /dedup/dta/blockdata.tch to 1048576

Tuning the bucketsize for /dedup/mta/symlink.tch to 1048576

The filesystem is clean.

Sun Mar 27 16:49:44 2011