1. Foren
  2. Kommentare
  3. OpenSource
  4. Alle Kommentare zum Artikel
  5. › Meego: Mobiles Linux verwendet…

Warum ist Verzeichnisstruktur so lahm?

Am 17. Juli erscheint Ghost of Tsushima; Assassin's Creed Valhalla und Watch Dogs Legions konnten wir auch gerade länger anspielen - Anlass genug, um über Actionspiele, neue Games und die Next-Gen-Konsolen zu sprechen! Unser Chef-Abenteurer Peter Steinlechner stellt sich einer neuen Challenge: euren Fragen.
Er wird sie am 16. Juli von 14 Uhr bis 16 Uhr beantworten.
  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


  1. Warum ist Verzeichnisstruktur so lahm?

    Autor: Datenbank 13.05.10 - 18:58

    Warum ist bei allen (mir bekannten) Dateisystemen das Suchen nach Dateien so langsam?

    z.B. Suche nach *.doc auf dem gesamten Datenträger dauert immer ewig.

    Warum geht das nicht in unter 1 Sekunde, kann doch nicht so schwer sein, das Dateiverzeichnis wie eine DB aufzubauen und Abfragen wären flott möglich, z.B.

    SELECT filename, filedate FROM C: WHERE filename LIKE "*.doc" AND filesize>1000

    Sollte in unter 1 Sekunde ALLE TREFFER auflisten...

    Das meine ich NATIV ohne irgendwelche Indizierungsdienste...

  2. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Wahrheitssager 13.05.10 - 19:18

    Siehe BFS (BeOS Filesystem , gerade auch in der neuen Fassung von Haiku als OpenBFS) .
    Das hat die Funktionalität die du willst.

  3. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Ferrum 13.05.10 - 21:07

    Datenbank schrieb:
    --------------------------------------------------------------------------------
    > Warum ist bei allen (mir bekannten) Dateisystemen das Suchen nach Dateien
    > so langsam?
    >
    > z.B. Suche nach *.doc auf dem gesamten Datenträger dauert immer ewig.

    Ich verstehe nicht viel von Dateisystemen, aber die Antwort auf diese Frage würde mich auch interessieren. Immerhin sind selbst bei FAT-Dateisystemen alle Verzeichniseinträge innerhalb einer kompakten Tabelle des Stammverzeichnisses gespeichert. Eine einfache Suche innerhalb dieser Tabelle kann bei mehreren hunderttausend Einträgen schon einmal mehrere Minuten dauern, was ein normaler Texteditor innerhalb weniger Sekunden oder sogar Sekundenbruchteilen erledigt.

    Vielleicht kann es jemand erläutern, der mehr Ahnung von der Materie hat. Wäre interessant.



    2 mal bearbeitet, zuletzt am 13.05.10 21:11 durch Ferrum.

  4. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: tsu 13.05.10 - 21:30

    1. Sind Plattenzugriffe viel viel teurer als Speicherzugriffe
    2. ist das eine Frage der Aufbereitung, z.B. lassen sich sortierte Datensätze schneller finden als unsortierte
    3. ist im Dateisystem mehr "Bewegung" innerhalb des Datenbestandes möglich

  5. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Everything 13.05.10 - 22:57

    Dafür benutze ich unter Windows "Everything search engine": http://www.voidtools.com/

    Datenbank schrieb:
    --------------------------------------------------------------------------------
    > Warum ist bei allen (mir bekannten) Dateisystemen das Suchen nach Dateien
    > so langsam?
    >
    > z.B. Suche nach *.doc auf dem gesamten Datenträger dauert immer ewig.
    >
    > Warum geht das nicht in unter 1 Sekunde, kann doch nicht so schwer sein,
    > das Dateiverzeichnis wie eine DB aufzubauen und Abfragen wären flott
    > möglich, z.B.
    >
    > SELECT filename, filedate FROM C: WHERE filename LIKE "*.doc" AND
    > filesize>1000
    >
    > Sollte in unter 1 Sekunde ALLE TREFFER auflisten...
    >
    > Das meine ich NATIV ohne irgendwelche Indizierungsdienste...

  6. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Ferrum 13.05.10 - 23:21

    tsu schrieb:
    --------------------------------------------------------------------------------
    > 1. Sind Plattenzugriffe viel viel teurer als Speicherzugriffe
    Schon klar. Aber wenn die Tabelle mit den Verzeichniseinträgen am Stück eingelesen und durchsucht wird, hätte man dann im Prinzip nicht nur einen einzigen Festplattenzugriff darauf? Inwiefern soll sich das dann auf die Suchdauer niederschlagen?

    > 2. ist das eine Frage der Aufbereitung, z.B. lassen sich sortierte
    > Datensätze schneller finden als unsortierte

    Das gilt vielleicht für Menschen. Aber ein Rechner durchsucht doch ohnehin alle zur Verfügung stehenden Einträge auf einen Treffer der Suchmaske. Also inwiefern würde eine Sortierung die Suche dann beschleunigen?

    > 3. ist im Dateisystem mehr "Bewegung" innerhalb des Datenbestandes möglich

    Inwiefern soll eine Bestandsänderung die Suchdauer beeinflussen? Wenn der Bestand geändert wird, aktualisiert sich die Dateizuordnungstabelle und gut ist. Letztlich muss doch nur diese Tabelle durchsucht werden und nicht die ganze Platte nach einzelnen Dateien.



    1 mal bearbeitet, zuletzt am 13.05.10 23:24 durch Ferrum.

  7. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: schmofarz 13.05.10 - 23:58

    Ferrum schrieb:
    --------------------------------------------------------------------------------
    > tsu schrieb:

    > > 2. ist das eine Frage der Aufbereitung, z.B. lassen sich sortierte
    > > Datensätze schneller finden als unsortierte
    >
    > Das gilt vielleicht für Menschen. Aber ein Rechner durchsucht doch ohnehin
    > alle zur Verfügung stehenden Einträge auf einen Treffer der Suchmaske. Also
    > inwiefern würde eine Sortierung die Suche dann beschleunigen?

    Die Sortierung ist bei sämtlichen Datenbanken die grundlegende Eigenschaft für effizientes Suchen (völlig unabhängig von der verwendeten Hardware, im Vergleich natuerlich immer auf derselben, d.h. entweder Ram oder Platte). Hast Du N Datensätze, findest Du einen Datensatz bei Nichtsortierung sequentiell in maximal N schritten, bei Sortierung in log( N ) / log ( 2) (also ld(N)) Schritten, ein Beispiel: 1*10 hoch 6 Datensäze

    ohne Sortierung: 1*10 hoch 6 Verarbeitungsschritte
    mit Sortierung: ld( 1*10 hoch 6)= 20 Verarbeitungsschritte
    d.h. 50000 mal schneller

    umso mehr Datensätze Du hast, desto mehr wirkt sich die Sortierung aus


    > > 3. ist im Dateisystem mehr "Bewegung" innerhalb des Datenbestandes
    > möglich
    >
    > Inwiefern soll eine Bestandsänderung die Suchdauer beeinflussen? Wenn der
    > Bestand geändert wird, aktualisiert sich die Dateizuordnungstabelle und gut
    > ist. Letztlich muss doch nur diese Tabelle durchsucht werden und nicht die
    > ganze Platte nach einzelnen Dateien.

    Daß mehr Bewegung möglich ist, stimmt so nicht, wenn der Datenbestand auf bestimmte Suchanfragen hin indexiert ist, müssen bei jeder Bewegung die Indexe mitgeführt werden.

    Gruß

  8. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: dbadmin 14.05.10 - 07:59

    es ist nur dann langsam, wenn deine Platte nicht indiziert ist. indexe zu erstellen kostet aber zeit und speicher. stichwort "Laufwerk für schnelle Dateisuche indizieren" ich hatte irgendwo mal nen artikel zur hand, der auf die indizierung unter xp im detail eingegangen ist, ich glaub es war in der ct.
    schau mal nach bei systemsteuerung - verwaltung - computerverwaltung - dienste und anwendungen - indexdenst

  9. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: dbadminkiller 14.05.10 - 08:26

    *********************************

    1. ging es in der Frage explizit um eine Suche ohne Indexierung.
    2. ist eine Indexierung vor allem für eine Suche von Inhalten innerhalb von Dateien sinnvoll.
    3. ist deine Begründung, dass die Suche nur aufgrund einer fehlenden Indexierung langsam ist, absoluter Schwachsinn. Die Gründe liegen woanders und dass es auch ohne Indexierung schneller gehen kann sieht man an anderen Dateisystemen.
    4. Heißt es Indexierung. Eine Indizierung ist was vollkommen anderes.

    Lies Wikipedia wenn du keine Ahnung hast und troll dich!



    1 mal bearbeitet, zuletzt am 14.05.10 09:11 durch ap (Golem.de).

  10. Lahm ist nur Windows

    Autor: egal0815 14.05.10 - 09:17

    > Warum ist bei allen (mir bekannten) Dateisystemen das Suchen
    > nach Dateien so langsam?

    Das hängt davon ab, wie das Dateiverzeichnis verwaltet wird. Ich benutze in Linux updatedb, um das Dateiverzeichnis aktuell zu halten. Mit locate finde ich dann jede Datei innerhalb von 3 Sekunden, auch bei 1 Mio Dateien. Ohne updatedb würde es Minuten dauern, um eine Datei zu finden.

    Bei Windows ist die Suche mit dem Explorer ein Relikt aus der Steinzeit. Kennt Windows überhaupt sowas wie updatedb?

  11. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: schmofarzkiller 14.05.10 - 09:18

    Auf ein neues:

    schmofarz schrieb:
    --------------------------------------------------------------------------------
    > Die Sortierung ist bei sämtlichen Datenbanken die grundlegende Eigenschaft

    Hier geht es um ein Dateisystem und nicht um eine Datenbank!

    > Daß mehr Bewegung möglich ist, stimmt so nicht, wenn der Datenbestand auf
    > bestimmte Suchanfragen hin indexiert ist, müssen bei jeder Bewegung die
    > Indexe mitgeführt werden.

    In der Ausgangsfrage ging es explizit um eine Suche ohne Indexierung!

  12. Re: Lahm ist nur Windows

    Autor: egal0815killer 14.05.10 - 09:29

    Sagt mal, könnt ihr eigentlich alle nicht Lesen?

    egal0815 schrieb:
    --------------------------------------------------------------------------------
    > > Warum ist bei allen (mir bekannten) Dateisystemen das Suchen
    > > nach Dateien so langsam?
    >
    > Das hängt davon ab, wie das Dateiverzeichnis verwaltet wird.

    Erstklassige Antwort. Sehr ausführlich und informativ. Echt super!

    > Ich benutze [blablabla]...

    Es interessiert hier keinen, was du benutzt. Zumindest beantwortet das nicht die Frage.

    > ... in Linux updatedb, um das Dateiverzeichnis aktuell zu halten.

    In der Frage ging es explizit um eine Suche ohne Indexierungsdienst.

    > Ohne updatedb würde es Minuten dauern, um eine Datei zu finden.

    Erstklassige Feststellung. Hat sogar der Fragesteller schon herausgefunden. Doch die Frage nach dem „Warum“ hast du natürlich nicht beantwortet.

    Auch für dich daher: Wenn du keine Ahnung hast, dann lies Wikipedia und troll dich!

  13. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Auch Everything 14.05.10 - 10:12

    Everything schrieb:
    --------------------------------------------------------------------------------
    > Dafür benutze ich unter Windows "Everything search engine":
    > www.voidtools.com

    Genau das nutze ich auch, superschnell und erfüllt genau die
    Ansprüche, die der Thread-Starter fordert !

    Also, einfach mal ausprobieren statt hier rum zu diskutieren !

  14. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Auch Everythingkiller 14.05.10 - 10:39

    Der heilige Troll-Freitag ist scheinbar schon voll im Gange.

    Auch Everything schrieb:
    --------------------------------------------------------------------------------
    > Genau das nutze ich auch, superschnell und erfüllt genau die
    > Ansprüche, die der Thread-Starter fordert !

    Der Thread-Starter fordert keine Ansprüche, sondern eine Erklärung auf eine Frage, zu der du offenbar genauso wenig in der Lage bist.

    > Also, einfach mal ausprobieren statt hier rum zu diskutieren !

    Als ob sich davon die Frage beantworten würde.

    Auch für dich daher: Wenn du keine Ahnung hast, dann troll dich!

  15. nicht am Anfang der Platte und nicht zusammenhängend

    Autor: 7bit 14.05.10 - 11:26

    Ferrum schrieb:
    > Immerhin sind selbst bei FAT-Dateisystemen
    > alle Verzeichniseinträge innerhalb einer kompakten Tabelle des
    > Stammverzeichnisses gespeichert.

    Du verwechselst da was: Diese Tabelle die Du da meinst (und die dem FAT auch seinen Namen gibt) ist die File Allocation Table, die verwaltet aber nur (quasi eine Schicht tiefer) welche Cluster frei oder belegt sind und für belegte Cluster welcher Cluster jeweils der nächste in einer Datei ist (die Reihenfolge in der sie zusammengefügt eine Datei ergeben). Diese Tabelle hat eine feste Größe weil es ja nur eine fixe Anzahl an Clustern gibt, sie ändert nie ihre Größe, daher kann man sie an einem Stück irgendwo am Anfang der Partition ablegen.

    Die Verzeichnisse jedoch mit den Dateinamen und den zugehörigen Angaben wie Attribute, Größe, Nummer des ersten Clusters sind kreuz und quer über die ganze Platte verteilt. Jeder "Ordner" hat sein eigenes Verzeichnis, manchmal ist selbst für einen Ordner das Verzeichnis in mehrere Teile aufgeteilt wenn die Platte übel fragmentiert ist.

    Ich kann mich erinnern zu FAT Zeiten noch eins dieser Defragmentierprogramme (von norton) benutzt zu haben und da gabs eine Option die Verzeichnisse aufzuräumen und jeweils wieder in einem Stück an den Anfang zu verlegen und das hat bewirkt dass Dateisuchen nicht mehr ganz so übel auf der Platte gerödelt hat (damals waren die Platten noch *laut*) und auch beim booten gings dann etwas ruhiger zu.



    2 mal bearbeitet, zuletzt am 14.05.10 11:29 durch 7bit.

  16. Re: nicht am Anfang der Platte und nicht zusammenhängend

    Autor: Ferrum 14.05.10 - 11:39

    7bit schrieb:
    --------------------------------------------------------------------------------
    > Die Verzeichnisse jedoch mit den Dateinamen und den zugehörigen Angaben wie
    > Attribute, Größe, Nummer des ersten Clusters sind kreuz und quer über die
    > ganze Platte verteilt.

    Ach herrje. Was für ein Chaos. Wenn für eine banale Suche erstmal die komplette Festplatte nach allen Dateieinträgen durchsucht wird und dafür alle Ordner einzeln angesprungen werden müssen, erklärt das natürlich einiges. Danke dir.

  17. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Der braune Lurch 14.05.10 - 12:54

    > Hier geht es um ein Dateisystem und nicht um eine Datenbank!

    Ach. Und wo sollen die Datei- und Verzeichniseinträge mit all ihren Informationen gespeichert werden? Eventuell in einer Datenbank?

    ------------------------------
    Der Molch macht's.
    ------------------------------

  18. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Der braune Lurch 14.05.10 - 12:59

    > 4. Heißt es Indexierung. Eine Indizierung ist was vollkommen anderes.

    Nein. Wenn man von Indizierung spricht (womit meist ein Verbot der Bewerbung von Medien gemeint ist), sagt man das so, weil dieses Medien auf den Index kommt. Genauso kommen bei einer Indizierung bei einer Partition bestimmte Informationen über Dateien/Ordner in einen Index. Indizierung ist korrekt.

    ------------------------------
    Der Molch macht's.
    ------------------------------

  19. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: no way, jose 14.05.10 - 13:34

    Die Verzeichnisstruktur ist bei den meisten Dateisystemen nicht zusammenhängend in einem großen Block, sondern über die Platte verteilt. Bei einer Suche schubbert der Schreib-Lesekopf also ziemlich wild über die Scheibe(n) hin und her, und liest die Verzeichnisblöcke ein. Diese Seek-Zeiten dürften die meiste Zeit ausmachen.

  20. Re: Warum ist Verzeichnisstruktur so lahm?

    Autor: Der braune Lurchkiller 14.05.10 - 14:05

    Der braune Lurch schrieb:
    --------------------------------------------------------------------------------
    > > Hier geht es um ein Dateisystem und nicht um eine Datenbank!
    >
    > Ach. Und wo sollen die Datei- und Verzeichniseinträge mit all ihren
    > Informationen gespeichert werden? Eventuell in einer Datenbank?

    Ach. Und was hat das mit der Ausgangsfrage zu tun? Eventuell gar nichts?

  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. SysTec Systemtechnik und Industrieautomation GmbH, Glessen (Nähe Köln)
  2. CipSoft GmbH, Regensburg
  3. AKDB Anstalt für kommunale Datenverarbeitung in Bayern, verschiedene Standorte
  4. Stadt Paderborn, Paderborn

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Hardware-Angebote
  1. täglich neue Deals bei Alternate.de
  2. (reduzierte Überstände, Restposten & Co.)
  3. 369,45€ (Bestpreis!)


Haben wir etwas übersehen?

E-Mail an news@golem.de


Complex Event Processing: Informationen fast in Echtzeit auswerten
Complex Event Processing
Informationen fast in Echtzeit auswerten

Ob autonomes Fahren, Aktienhandel oder Onlineshopping: Soll das Ergebnis gut sein, müssen Informationen quasi in Echtzeit ausgewertet werden. Eine gute Lösung dafür: CEP.
Von Boris Mayer

  1. Ubuntu Canonical unterstützt Flutter-Framework unter Linux
  2. Musik Software generiert Nirvana-Songtexte
  3. mmap Codeanalyse mit sechs Zeilen Bash

Kumpan im Test: Aussehen von gestern, Technik von morgen
Kumpan im Test
Aussehen von gestern, Technik von morgen

Mit der Marke Kumpan Electric wollen drei Brüder aus Remagen den Markt für elektrische Roller erobern. Sie setzen auf den Look der deutschen Wirtschaftswunderjahre, wir haben ein Modell getestet.
Ein Praxistest von Dirk Kunde

  1. Venturi Wattman Rekordversuch mit elektrischem Motorrad mit Trockeneis
  2. Mobility Swapfiets testet Elektroroller im Abo
  3. Elektromobilität Volabo baut Niedrigspannungsmotor in Serie

Bluetooth-Hörstöpsel mit ANC im Test: Den Airpods Pro hat die Konkurrenz nichts entgegenzusetzen
Bluetooth-Hörstöpsel mit ANC im Test
Den Airpods Pro hat die Konkurrenz nichts entgegenzusetzen

Die Airpods Pro haben neue Maßstäbe bei Bluetooth-Hörstöpseln gesetzt. Sennheiser und Huawei ziehen mit True Wireless In-Ears mit ANC nach, ohne eine Antwort auf die besonderen Vorzüge des Apple-Produkts zu haben.
Ein Test von Ingo Pakalski

  1. Bluetooth-Hörstöpsel Google will Klangprobleme beseitigen, Microsoft nicht
  2. Bluetooth-Hörstöpsel Aldi bringt Airpods-Konkurrenz für 25 Euro
  3. Bluetooth-Hörstöpsel Oppos Airpods-Alternative kostet 80 Euro