Dateien in filesystem cache laden

Michael Windelen ubuntu at fam-windelen.de
Mon Okt 12 10:59:47 BST 2009


Michael Zoet schrieb:
>> Michael Windelen schrieb:
[..]
>> da cp -R xx /dev/null nicht funktioniert. Wollte ich fragen ob:
>> find /test/ -type f -print0 | xargs -0 cat > /dev/null
>>
>> eine Möglichkeit für mein Problem ist.
> 
> Ich kann dir zwar keine Lösung angeben, habe mich aber gefragt warum du
> das machen möchtest?
> Normalerweise (so weit ich das weiß) entscheidet ein Unix/Linux Kernel von
> alleine was er vom Dateisystem im RAM cached und was nicht. Irgendeine
> heuristic, die versucht vorher zusagen wo der nächste Palttenzugriff am
> wahrscheinlichsten ist. Aber vielleicht gibt es da mittlerweile schon
> andere scheduler, die sich anders verhalten. Wenn du jetzt sehr viele lese
> Operationen auf die gleiche Datei hast, ist die sicherlich auch im Cache.
> Bei einmaligem Zugriff nicht unbedingt. Da das aber bestimmt alles nur
> Wahrscheinlichkeiten sind, kann man sich nie sicher sein.
> 
> Allerdings könntest du dir eine RAM Disk anlegen und dann sind deine Daten
> garantiert im RAM Speicher. Mit allen Vorteilen (schneller Zugriff, usw.)
> und allen Nachteilen (beim ausschalten ist alles weg!, usw.)
> 

Gerne erkläre ich warum ich das machen möchte.
Der Server cached ja während des Backups die Dateien die als letztes 
angefordert wurden und die noch in den Arbeitsspeicher passen, also 
nicht die Dateien die als letzes während des Arbeitstages genutzt wurden 
und relevant (für uns) sind (woher soll er das auch wissen).
Bei dem Programm was auf dem Server liegt handelt es sich um Quincy eine 
Praxis/Patientenverwaltung auf die per Samba zugegriffen wird.
Wenn ein Patient mit einer großen Akte anruft dauert es mitunter >8 Sek 
bis Selbige geladen ist. Wenn ich vorher von einer beliebigen Station 
den Ordner windat (Server) nach lokal kopiere dann öffnen sich alle 
Patientenakten von allen Stationen aus nun innerhalb einer knappen 
Sekunde da der Server ja Alles im RAM hat und sofort ausliefern kann. 
(Auch noch nach mehreren Stunden)
Daher möchte ich halt gerne nach der Sicherung das Verzeichnis mit den 
Patientendaten in den Dateisystemcache im RAM laden.
Die RAM-Disk scheidet wie du schon gesagt hast aus da alle Daten nach 
einen Absturz, etc. verloren wären.
Ich hoffe das mein Motiv nun etwas klarer ist.

-- 
Grüße
Michael
-
Bitte kein Cc an mich, ich lese die Liste.
http://www.vlies-kontor.windelen.net/