Was ist ein Treewalk?
Leserfrage: Im Interview mit Qumulo wird davon gesprochen, dass Dateisysteme einen sogenannten Treewalk durchführen. Was ist das genau? Was ist das Problem daran und was wäre die Lösung?
Antwort Doc Storage:
Als Treewalk bezeichnet man es, wenn ein Client-System Metadaten eines Bereiches von Daten durchsucht. Ein Windows Explorer oder ein UNIX »ls -la«-Kommando lösen einen solchen Treewalk aus. Zu anderen Anwendungen, die einen Treewalk auslösen, gehören zum Beispiel Backup-Programme. Der Treewalk muss also nicht als Problem gesehen werden.
Zu den Metadaten, die dabei durchsucht werden, gehören die folgenden:
- Statische und dynamische Datei- und Verzeichnisattribute (Inodes),
- Die physischen Blöcke, auf denen Dateien gespeichert sind (Btree),
- Quota-Informationen,
- Dateien, die zur Verfolgung von Änderungen in Snapshots dienen,
- Generische physikalische Blöcke, in denen Anwendungen spezielle Informationen speichern.
Die meisten Treewalks verwenden vor allem die Inode-Einträge, die dann über die Btree-Listen den jeweiligen physikalischen Blöcken zugeordnet werden.
Vor allem bei der Verwendung von SSDs sind Treewalks hilfreich: Mit ihrer Hilfe muss nicht mehr nach einzelnen Blöcken gesucht werden, auf denen große Dateien gespeichert sind, auf die im Random-Mode zugegriffen werden soll (zum Beispiel VMDK-Dateien von VMware).
Gruß
Doc Storage