|
|
|
|
Google-Website
|
|||||||
| Foren | Registrieren | Blog | Man-Seiten | Forum-Regeln | Links | Alben | FAQ | Benutzer | Kalender | Suche | Die heutige Beiträge | Alle Foren als gelesen markieren |
| Dateisysteme, Festplatten und Memory Diskutieren NAS, SAN, RAID-, Roboter-Bibliotheken, Backup-Geräte, RAM, DRAM, SCSI-, IDE-, EIDE-Themen hier. |
![]() |
|
|
Thread Tools | Suche diesen Thread |
Bewertung:
|
Anzeige-Modi |
|
|||
|
Ist es langsamer zu öffnen oder eine Datei in ein Verzeichnis mit 1 Million Dateien als ein Verzeichnis mit 1000 Dateien? Wie viel langsamer? Wo finde ich Informationen dazu?
Ich bin vor allem besorgt über JFS auf AIX, sondern auch auf Windows-NTFS-Server. Gibt es einen Unterschied? Ich bin versucht zu bestimmen, ein guter Weg, um eine große Anzahl von Dateien (2 Millionen und wächst etwa 200 K pro Jahr). Zur Zeit habe ich sie in sechs verschiedenen Verzeichnissen, so dass es über 300 K-Dateien pro Verzeichnis. Danke! |
| Sponsored Links | ||
|
|
|
|||
|
Zitat:
Vielleicht sollte ich ein JFS-Partition auf einer virtuellen Linux-Maschine und einige Benchmarking. Ich habe keinen Zugriff auf einen Ruhezustand AIX Maschine vergleichbar, die mit dem in der Produktion eingesetzt. Natürlich ist ein solcher Test würde sich von "Wirklichkeit" in gewisser Weise: anderes Betriebssystem, CPU-Architektur-und Storage-Lösungen (lokale IDE-Laufwerk im Vergleich zu SAN). |
|
|||
|
Windows XP-Test
Ich habe nicht die Zeit für einen Test auf Linux, aber ich gerade einen Test auf meinem Windows XP-Desktop-Rechner (NTFS). Ich bin mir nicht sicher, wie wertvoll dieser Prüfung ist, aber es ist sehr interessant ... Bitte geben Sie Ihre Meinung zu diesem Thema. Öffnen und Schließen von 100 ausgewählten Dateien zufällig 100.000 Mal von Verzeichnissen, die unterschiedliche Anzahl von Dateien (relative Zeiten): 100 Dateien: 100,0 1000 Dateien: 100,4 10.000 Dateien: 101,3 100.000 Dateien: 109,6 1000000 Dateien: 130,9 Eine Geschwindigkeit von 30%, wenn man von 100 bis 1.000.000 Dateien in einem Verzeichnis! Als ich die Tests wieder lief, waren sie nicht nur schneller, aber die Unterschiede waren fast Null: 100 Dateien: 100,0 1000 Dateien: 100,0 10.000 Dateien: 100,6 100.000 Dateien: 100,2 1000000 Dateien: 100,3 Natürlich, einige Caching vor sich geht. Also, wenn Sie die gleichen Dateien immer und immer (und die Anzahl der Dateien klein genug ist), es scheint nicht zu, wie viele Dateien Sie in den Verzeichnissen. Das Caching könnte vermuten lassen, dass die Leistung über Hit wäre größer, wenn ich hatte mehr als 100 Dateien. Eine andere Möglichkeit, dies zu tun, würde es sein, lesen Sie jede einzelne Datei in zufälliger Reihenfolge. Vielleicht sollte ich haben die gleiche 1000000 Dateien in jedem Test und stattdessen verteilte sie anders (100 Dateien pro Verzeichnis, 1000 Dateien pro Verzeichnis etc). Aber dann würden andere Variablen auf die Ergebnisse, wie zum Beispiel, wie ich sie verteilt - Pfad Tiefe, Anzahl der Verzeichnisse etc. Details Ich habe ein Skript zum Erstellen von Dateien mit zufälligen Namen von 10 +3 Zeichen. Ich kopiert die Dateien aus dem "100-Verzeichnis", um die anderen Verzeichnisse, dann weitere Dateien hinzugefügt. Die Dateien waren fast leer ist (72 Byte). Dann habe ich ein Python-Skript, die geöffnet und geschlossen zufällig ausgewählten Dateien (von den 100 Dateien) in jedem Verzeichnis. Der Source-Code ist: Code:
import datetime
import random
def getMS():
dt = datetime.datetime.now()
ms = dt.microsecond / 1000
ms += dt.second * 1000
ms += dt.minute * 60000
ms += dt.hour * 3600000
return ms
fh = open("files.txt", "r")
filenames = map(lambda fn: fn.strip(), fh.readlines())
fh.close()
random.seed()
NUMBER_OF_OPENS = 100000
TIMES_PER_CASE = 3
testcases = ["1000000", "100000", "10000", "1000", "100"]
for i in range(TIMES_PER_CASE):
for testcase in testcases:
starttime = getMS()
for j in range(NUMBER_OF_OPENS):
filename = "c:\\temp\\test" + testcase + "\\" + random.choice(filenames)
open(filename, "rb").close()
endtime = getMS()
print testcase, i, endtime - starttimeUnd die Ergebnisse: Code:
C:\Temp>python -OO openfiles.py 1000000 0 16156 100000 0 13531 10000 0 12508 1000 0 12399 100 0 12346 1000000 1 12291 100000 1 12274 10000 1 11886 1000 1 11265 100 1 11117 1000000 2 11199 100000 2 11183 10000 2 11232 1000 2 11166 100 2 11166 Technische Daten der Maschine Ich habe die Tests auf meinem alten Desktop DELL Optiplex 280 mit einem Pentium 4 Prozessor (2,8 GHz), 2 GB DDR2 SDRAM und 80 GB Serial ATA-150, 7200 U / min Festplatte (Cache-Größe unbekannt). Ich verwende Windows XP SP3 mit NTFS. Ich Beenden Sie alle Anti-Virus, die Indizierung und die Aktualisierung und die meisten Programme vor der Ausführung des Tests. Die Festplatte defragmentiert wurde nach der Erstellung der kleinen Dateien und vor der Ausführung des Tests. Ich bin auch neu gestartet, bevor Sie die Tests. |
|
||||
|
Wir haben nach Prüfung der Art (mit VMS, Novell Unix MS ...) und fand heraus, dass alle wahren präemptives Multi-Prozess-Multitasking-Betriebssystem, wo besser als von den anderen ...
Es ist der Preis, den Sie für Ihre Zeit, ebenso zwischen den Prozessen ... (Für mich ist es erwiesen, dass Windows-Server (NT4 W2000) wurden noch nicht vollständig präemptives Multitask ...) |
|
|||
|
Auch ich habe ähnliche Tests, aber etwas anders. Anstatt einfach Zeit die Schaffung von 100 Dateien, die kann sehr irreführend sein oder Zeitpunkt der Erstellung der 1M-Dateien, die nicht besser ist, ziehe ich es vor zu sehen, was passiert in der System-Ressourcen während der gesamten Veranstaltung.
Ich collectl mit einem Überwachungs-Intervall von 1 Sekunde, die Anmeldung zu einer Datei, oder einfach nur gerade das System in Echtzeit. Wenn ich eine Million Dateien, die ich beobachten kann die CPU in regelmäßigen Abständen erhöht. In der Tat, wenn man in die höheren Enden von Dateien kann ich sehen Spike in die CPU-Auslastung. Das ist etwas, was Sie nicht sehen können, wenn man sich nur tun, Ende-zu-Ende-Nummern. Ein weiterer interessanter Test ist, um einen Alarm in Ihr Skript zu schreiben, die die Anzahl der Dateien, die jeder 10. (oder sogar Hundertstel) von einer Sekunde. Sie werden staunen, um zu sehen, wie gerade die Anzahl der erstellten Dateien / Sekunde sinkt im Laufe der Zeit als auch in regelmäßigen Abständen, wie sich die Dinge langsam, aber nicht sichtbar sind, wenn nur der Second-Level-Proben. Sie können auch collectl bei einer Kontrolle im Abstand von 0,1 Sekunden und siehe Micro-Spikes in die CPU-Auslastung als gut. Das ist etwas, was die meisten Leute verpassen, weil keines der bestehenden Instrumente können mit Sub-Sekunden-Berichterstattung. -Marke |
|
||||
|
Wir waren nicht die Rede von 100 Dateien, aber die Dateien von 10'000 ...
Zitat:
Zuletzt bearbeitet von vbe; am 03-06-2009 12:46 PM.. Grund: Kleine Korrektur ... |
| Sponsored Links | ||
|
|
![]() |
| Lesezeichen |
| Tags |
| Inodes, jfs, ntfs |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|
Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
|
||||
| Faden | Thread Starter | Forum | Antworten | Last Post |
| HBA Leistung | jwholey | Dateisysteme, Festplatten und Memory | 2 | 02-27-2009 01:27 PM |
| Verbesserung der System-Performance, indem Sie den Log-Dateien zu RAM | Linux Bot | UNIX-und Linux-RSS-News | 0 | 07-16-2008 05:30 AM |
| Entfernen Sie Header-Dateien: optimale Leistung | kausmone | UNIX for Dummies Questions & Answers | 4 | 11-14-2007 10:14 AM |
| Bekanntgabe collectl - neue Performance-Linux-Performance-Monitor | MarkSeger | News, Links, Termine und Ankündigungen | 0 | 10-26-2007 07:14 PM |
| Vergleich Große Dateien - Performance ist sehr schlecht | madhukalyan | UNIX for Dummies Questions & Answers | 5 | 10-10-2006 11:58 PM |