Das OP fragte nach paralleler Archivierung, nicht nach paralleler Komprimierung.
Wenn das Quellmaterial aus einem Dateisystem stammt, in dem sich möglicherweise unterschiedliche Verzeichnisse / Dateien auf unterschiedlichen Datenträgern befinden, oder sogar von einem einzelnen schnellen Datenträger, der die Eingabegeschwindigkeit der Komprimierungstools überschreitet, kann es in der Tat vorteilhaft sein, mehrere Eingabeströme zu haben in die Kompressionsschichten gehen.
Es stellt sich die sinnvolle Frage, wie die Ausgabe aus einem Parallelarchiv aussieht. Es ist nicht mehr nur ein einzelner Dateideskriptor / stdout
, sondern ein Dateideskriptor pro Thread.
Ein Beispiel hierfür ist der parallele Speicherauszugsmodus von Postgresql pg_dump
, bei dem ein Speicherauszug in ein Verzeichnis erstellt wird, in dem Threads über die zu sichernden Tabellen arbeiten (Arbeitswarteschlange mit mehreren Threads, die die Warteschlange belegen).
Ich bin mir nicht sicher, ob es sich tatsächlich um Mainstream-Parallelarchivierer handelt. Es gab einen Hack für Solaris Tar zur Verwendung in ZFS: http://www.maier-komor.de/mtwrite.html
Es gibt einige dedizierte Sicherungstools, mit denen mehrere Threads erfolgreich ausgeführt werden. Es gibt jedoch noch viele andere Tools, mit denen die Arbeitslast nur nach Verzeichnissen auf hoher Ebene aufgeteilt wird.