Microsoft Windows Search-Indexerstellung verbraucht Ressourcen

NoBody43

Lt. Junior Grade
Registriert
Juni 2018
Beiträge
290
Ich habe ein kleines Programm in einem Jupyter Notebook geschrieben, dass viele kleine csv Dateien (über 1 Million mit je ein paar KB) in einem Ordner erstellt.
Nachdem das Programm gelaufen ist, und nachdem ich Jupyter geschlossen habe und kein Fenster von irgendeinem Programm mehr offen ist, zeigt der Taskmanager an, dass weiterhin 20GB Ram genutzt werden.
Bei den Prozessen ist "Microsoft Windows Search-Indexerstellung", das etwa 5% der CPU nutzt.
Der belegte Arbeitsspeicher wird mit der Zeit auch immer kleiner (etwa 200MB pro Minute).

1. Ist das normal, dass der Prozess noch so lange nach dem Erstellen der Dateien etwas macht?
2. Muss ich warten, bis er fertig ist, damit ich auf die Dateien zugreifen kann? Denn ein anderes Programm, was diese Dateien lesen soll, hat irgendwo in der Mitte aufgehört und gesagt, dass eine Datei nicht existiert, und als ich nachsah, da stimmte es, dass einige Dateien weg waren (ich hatte da noch nicht gewusst, dass dieser Prozess noch im Hintergrund läuft).
 
mit einer absurd hohern anzahl von dateien steigt auch der verwaltungsaufwand, das sollte offensichtlich sein.
und mit einer sehr hohen anzahl winziger dateien dauert das halt, aber irgendwann ist er fertig erstellt, der index.
und schließlich kann man die idexierung auch abdrehen.
 
  • Gefällt mir
Reaktionen: WhyNotZoidberg? und areiland
Aber muss ich auch zwingend warten, bis der fertig ist?

Und was wird noch alles beeinflusst, wenn die Indexierung deaktiviert wird?
 
Man könnte in den Einstellungen der Indizierung ja auch ganz einfach diesen einen Ordner vom Index ausnehmen.
 
  • Gefällt mir
Reaktionen: savuti, Gekko_de und WhyNotZoidberg?
Wenn man über 1 Million Dateien erzeugt, braucht Windows Search natürlich um diese Fülle an Dateien zu indizieren.

Ich würde den befüllten Ordner aus der Indizierung rausnehmen.

Du musst nicht warten bis der fertig ist, das läuft ja im Hintergrund.
 
  • Gefällt mir
Reaktionen: Gekko_de, whats4 und areiland
1. Ja der Indexiert die Files inklusive Inhalt und das braucht zeit und Ressourcen.
2. Nein du kannst normal auf die Daten zugreifen und bearbeiten. Das könnte aber weitere Indexierung auslösen (je nachdem). Der Indexierung Job löscht keine Daten, wenn die Files weg sind, wurden sie entweder nicht korrekt erstellt (waren z.B. nur im Buffer) oder wurden anderweitig gelöscht.

Die Suchfunktion funktioniert nicht mehr oder nicht mehr gescheit - sehr langsam etc.
Ich würde bei solchen Sachen lieber eine Ausnahme in die Indexierung eintragen, als diese Komplett zu deaktivieren.

https://www.addictivetips.com/windo...es-folders-from-cortana-search-on-windows-10/

Das mache ich meistens für meine Source Code Folder, damit diese nicht indexiert werden.
 
  • Gefällt mir
Reaktionen: NoBody43
NoBody43 schrieb:
1. Ist das normal, dass der Prozess noch so lange nach dem Erstellen der Dateien etwas macht?
Ja, er indiziert halt weiter. Das läuft auch permanent und ist eigentlich nie "fertig". Auch bereits indizierte Dateien werden fortlaufend neu untersucht (aber in Idle-Zeiten).

NoBody43 schrieb:
Muss ich warten, bis er fertig ist, damit ich auf die Dateien zugreifen kann?
Nein, eigentlich nicht, und das kommt mir auch seltsam vor, denn:

NoBody43 schrieb:
als ich nachsah, da stimmte es, dass einige Dateien weg waren
Die Indizierung an sich hat eigentlich nichts mit dem Schreiben der Dateien zu tun, irgendwas ist da noch woanders faul.
 
  • Gefällt mir
Reaktionen: rocketworm
Mal davon abgesehen, das man das für den gewünschten Ordner auch abschalten kann...
 
Ja, das ist jetzt etwas ungünstig, dass bei mir einige Dateien verschwunden sind.
Es kann eigentlich nicht an den bestimmten Dateien liegen, da sie sich voneinander kaum unterscheiden und gleich verarbeitet werden.
Kennt ihr irgendwelche häufigen Probleme beim Erstellen von vielen kleinen Dateien?

@Robo32 Ja das wusste ich bis jetzt nicht, hatte bisher auch nie damit zutun.
 
viele dateien erstellen hängt eins zu eins an der I/O leistung des datenträgers.

natürlich spielt die restliche hardware auch eine rolle.
ich hab z.b. eine samsung 860evo in einem core2 lenovo w500 aus 2008/2009 verbaut.
natürlich bringt die ssd in dem alten system nedmal ansatzweise die I/O leistung, die in einem modernen system möglich wäre.
 
Ah gerade noch gelesen: (über 1 Million mit je ein paar KB in einem Ordner) - da wirst du noch zusätzlich in ein Problem vom Explorer laufen. Dieser kann ab einer gewissen Anzahl von Daten richtig richtig böse probleme verursachen.

Daten werden nicht mehr geschrieben, zugriff auf den Ordner lässt den Explorer abstürzen etc. Ich hatte da mal ein Problem in der alten Firma genau wegen dem. Da waren (ich weiss es leider nicht mehr genau) x 100 000 Files in einem temp Ordner vorhanden auf dem Windows Server. Ein Service wollte da eine neue Temp Datei hineinschreiben um diese später dem Kunden als Download auszuliefern. Die Temp Datei konnte aber wegen den tausenden Files nicht mehr geschrieben werden - und somit wurde dem Kunden kein Download ausgeliefert.

Ich denke das könnte bei dir das Problem mit dem Zugriff ausgelöst haben und natürlich den fehlenden Daten.

Wenn du so viele Daten schreiben musst, würde ich entweder Linux nehmen (die haben das Problem nicht) oder die Daten irgendwie aufteilen in mehrere Ordner.
 
@Kenny [CH] ich schätze, sollte es beim nächsten Mal wieder nicht klappen, dann teile ich sie einfach auf 1000 Ordner auf
ich habe aber davor noch gegoogelt, wie viele Dateien in einem Ordner sein dürfen, und ich meine für NTFS waren es über 4 Milliarden
Ergänzung ()

Ok, diesmal hat alles geklappt, ich werde jetzt euren Anweisungen folgen und die Indezierung dafür deaktivieren,
DANKE
 
Zuletzt bearbeitet:
NoBody43 schrieb:
wie viele Dateien in einem Ordner sein dürfen, und ich meine für NTFS waren es über 4 Milliarden
Das Dateisystem ist auch nicht die Beschränkung, sondern die Software die drauf zugreift, in dem Fall eben Windows bzw. dessen unterliegende Treiber.
Es gibt halt einen Unterschied zwischen theoretischen Maximum und dem was praktisch implementiert ist.
 
  • Gefällt mir
Reaktionen: areiland
Micha45 schrieb:
Für so etwas nutzt man einen NAS.
Sehe ich anders, Millionen von Dateien und dann noch übers Netzwerk. Das bremst deutlich.
Ergänzung ()

@TE Wofür brauchst du die Millionen winzigen CSV Dateien überhaupt? Vielleicht gibt es ja generell eine Bessere Lösung für dein Vorhaben als unzählige kleine Dateien.
 
@Micha45 Also ich weiß nicht, wie es mit einem NAS wäre
aber selbst mit meiner NVMe MP510 dauert das Erstellen der Dateien etwa ne halbe Stunde
ich kann mir gut vorstellen, dass das mit einem NAS, vor allem wenn es HDDs hätte, deutlich länger dauern würde
 
NoBody43 schrieb:
ich kann mir gut vorstellen, dass das mit einem NAS, vor allem wenn es HDDs hätte, deutlich länger dauern würde
Ich wollte auch nicht auf die Performance hinaus, sondern vielmehr darauf, dass bei solchen extremen Vorgängen das Arbeiten am aktiven Rechner extrem eingeschränkt sein dürfte. Selbst bei potenter Hardware.

Ich würde mich an deiner Stelle wenigstens mal mit dem Thema NAS beschäftigen und mich informieren. Da gibt es genügend Infomaterial im Netz. ;)
 
  • Gefällt mir
Reaktionen: NoBody43 und areiland
Zurück
Oben