Was noch zu beachten ist, ist bei BTRFS die Nutzung der Dateiintegritätsprüfung für Ordner mit Datenbanken nicht zu nutzen:
Wann wird denn eine Datenbank im freigegebenen Ordner gehostet? Installiere ich MariaDB als Paket, wird sie auf dem Volume installiert und benötigt keinen freigegebenen Ordner. Geht es hier um den /data Ordner der für MariaDB als Docker Image gemounted wird?
Installiert man Docker, wird /docker automatisch erstellt, sofern noch nicht vorhanden. Macht man das auf einem Btrfs-Volume ist die Integritätsprüfung übrigens automatisch aktiviert.
So hier mal die Ergebnisse meiner kleinen Versuchsreihe:
Zuerst der Test mit MariaDB als Paket:
- Zuerst MariaDB auf einem Btrfs-Volume installiert.
- Ein Vorgang* dauert ca 7 Minuten.
- Danach MariaDB auf einem ext4-Volume installiert (beide Volumes auf der selben HDD).
- Der selbe Vorgang* dauert jetzt nur noch knapp 1 Minute.
2. Versuch mit Docker:
- Docker wird auf einem Btrfs-Volume installiert. Die Integritätsprüfung für /docker ist aus.
- Der Vorgang** dauert knapp 9 Minuten.
- Docker wird auf einem ext4-Volume installiert, /docker auch dort erstellt.
- Der Vorgang** dauert jetzt nur 1 Minute.
* Zum Vorgang: Am PC wurde ein Ordner mit 100 Dateien a 24MB in einen vom Nextcloud-Client gesyncten Ordner verschoben. Die Dateien werden in die Cloud hochgeladen.
- Nextcloud ist direkt am Webserver der DS installiert.
- Die NC Instanz bleib gleich, es wird nur der Installationsort von MariaDB geändert.
** Beim Versuch mit Docker bleibt der Vorgang der selbe, nur dass beide male sowohl Nextcloud als auch MariaDB als Docker-Container laufen.