Rolf B: Sicherheit, weitere Ideen

Beitrag lesen

Hallo Martin,

Das Aufbauen eines kompletten Verzeichnislistings dauert daher nicht wirklich länger als das Öffnen einer Datei, die zufällig physikalisch weit hinten im Verzeichnis steht.

Kannst Du diese These belegen?

Meine Gegenthese:

Die MFT ist eine Relationale DB, die als B-Tree organisiert ist. Steht hier, ein Dokument aus einer Zeit, als Microsoft noch richtige Dokumentationen erstellte und veröffentlichte.

Zitat aus dem Artikel:

The MFT is a relational database that consists of rows of file records and columns of file attributes. It contains at least one entry for every file on an NTFS volume, including the MFT itself.

Und

The benefit of using B-tree structures is evident when NTFS enumerates files in a large folder. The B-tree structure allows NTFS to group, or index, similar file names and then search only the group that contains the file, minimizing the number of disk accesses needed to find a particular file, especially for large folders. Because of the B-tree structure, NTFS outperforms FAT for large folders because FAT must scan all file names in a large folder before listing all of the files.

D.h. wenn ich weiß, dass die Datei "Martins Bericht.doc" heißt und im Ordner "C:\Users\Martin\Documents" steht, springt NTFS relativ zügig über den B-Tree zur Datei "Martins Bericht.doc".

Wenn ich "C:\Users\Martin\Documents" auflisten will, wird es komplizierter, denn dann muss ich über den Folder Index gehen. Solange ich nur Namen suche, ist das ein Index Scan und fix, aber wenn ich auch Datei-Infos brauche, damm denke ich, dass man dann für jede gefundene Datei in die File Table einsteigen und sie holen muss.

Rolf

--
sumpsi - posui - obstruxi