Archivdatei vs. Geschwindigkeit Datenübertragung
Hi,
es geht hier um kein Problem an sich, sondern um eine Verständnisfrage. Habe es nun mit mehreren Kollegen diskutiert und scheinbar stehen wir alle auf dem Schlauch.
Ich ziehe ein Backup von der internen SSD (A) auf die externe Festplatte (B). Als Beispiel nehmen wir einen Ordner mit 500 Bildern, je 1 MB.
Kopieren des Ordners von A nach B dauert eine Minute bei einer Übertragungsrate von ca. 100 MB/sec
Nun archiviere ich den Ordner auf A und schiebe ihn abermals auf B, die Übertragungsrate beträgt nun ca. 400 MB/sec
Soweit klar bzw. in meinem Verständnis:
500 Einzeldateien brauchen länger als eine einzige Datei, das Archiv halt.
Beide Kopiervorgänge benötigen bis zum Abschluss eine Minute, warum ist das so? Ich würde es verstehen, wenn auf B entweder gepackt oder entpackt wird, aber das ist ja nicht der Fall. Kann mir jemand die Antwort geben bzw. einen guten Denkanstoß?
Danke ich Voraus.
Mfg
Mitchell
es geht hier um kein Problem an sich, sondern um eine Verständnisfrage. Habe es nun mit mehreren Kollegen diskutiert und scheinbar stehen wir alle auf dem Schlauch.
Ich ziehe ein Backup von der internen SSD (A) auf die externe Festplatte (B). Als Beispiel nehmen wir einen Ordner mit 500 Bildern, je 1 MB.
Kopieren des Ordners von A nach B dauert eine Minute bei einer Übertragungsrate von ca. 100 MB/sec
Nun archiviere ich den Ordner auf A und schiebe ihn abermals auf B, die Übertragungsrate beträgt nun ca. 400 MB/sec
Soweit klar bzw. in meinem Verständnis:
500 Einzeldateien brauchen länger als eine einzige Datei, das Archiv halt.
Beide Kopiervorgänge benötigen bis zum Abschluss eine Minute, warum ist das so? Ich würde es verstehen, wenn auf B entweder gepackt oder entpackt wird, aber das ist ja nicht der Fall. Kann mir jemand die Antwort geben bzw. einen guten Denkanstoß?
Danke ich Voraus.
Mfg
Mitchell
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 597837
Url: https://administrator.de/contentid/597837
Ausgedruckt am: 22.11.2024 um 04:11 Uhr
12 Kommentare
Neuester Kommentar
Kopieren des Ordners von A nach B dauert eine Minute bei einer Übertragungsrate von ca. 100 MB/sec
Nun archiviere ich den Ordner auf A und schiebe ihn abermals auf B, die Übertragungsrate beträgt nun ca. 400 MB/sec
Beide Kopiervorgänge benötigen bis zum Abschluss eine Minute, warum ist das so?
Es gibt den bekannten Spruch:
Wer mißt, mißt Mist.
Wie mißt Du denn?
lks
Also Nach Adam Riese
500 Bilder x 1MB = 500MB
Kopiere Ordner von A nach B braucht 60 sek (1 min!), hat eine Geschwindigkeit von 100MB/s (!) -> 60(sek)*100MB/(sek) = 6000MB = 6GB, wie kann das bei 100MB/s 60 sek dauern 500MB zu kopieren?
Bist du
a) betrunken
b) be....
c) Sonnenstich?
[aus pol. Gründen zensuriert d) c...infiziert?]
Mit Mbit/s wärst du zwar näher dran, aber trotzdem noch eine Differenz von 1/3.
Grüße
500 Bilder x 1MB = 500MB
Kopiere Ordner von A nach B braucht 60 sek (1 min!), hat eine Geschwindigkeit von 100MB/s (!) -> 60(sek)*100MB/(sek) = 6000MB = 6GB, wie kann das bei 100MB/s 60 sek dauern 500MB zu kopieren?
Bist du
a) betrunken
b) be....
c) Sonnenstich?
[aus pol. Gründen zensuriert d) c...infiziert?]
Mit Mbit/s wärst du zwar näher dran, aber trotzdem noch eine Differenz von 1/3.
Grüße
Zitat von @Mitchell:
Muahahaha, beide Kommentare habe ich erwartet. Ihr habt ja auch Recht, es ging mir eigentlich nur um's Prinzip und nicht um die tatsächlichen Zahlen. Aber ok, nochmal und diesmal richtig:
500 Bilder, Einzelbild = 5,41 MB = 2,64 GB gesamt (unten siehst du auch, warum die Zahl aufkommt ^^)
Übertragungsgeschwindigkeit = schwankend, 70 - 100 MB/sek, im Schnitt 79,8 MB/sek (warum MB? Weil Windowsexplorer :-P, nimm ruhig die korrekte Form)
Dauer = 39,8 sek
Messung ganz banal über Explorer (der supertolle Windowsexplorer, aber auch Totalcommander), Robocopy und nebenher einfach mal die Stoppuhr laufen lassen.
Archiv = 2,71 GB
Übertragungsgeschwindigkeit = schwankend , im Schnitt 225 MB/sek
Dauer und Messverfahren bleiben gleich.
Muahahaha, beide Kommentare habe ich erwartet. Ihr habt ja auch Recht, es ging mir eigentlich nur um's Prinzip und nicht um die tatsächlichen Zahlen. Aber ok, nochmal und diesmal richtig:
500 Bilder, Einzelbild = 5,41 MB = 2,64 GB gesamt (unten siehst du auch, warum die Zahl aufkommt ^^)
Übertragungsgeschwindigkeit = schwankend, 70 - 100 MB/sek, im Schnitt 79,8 MB/sek (warum MB? Weil Windowsexplorer :-P, nimm ruhig die korrekte Form)
Dauer = 39,8 sek
Messung ganz banal über Explorer (der supertolle Windowsexplorer, aber auch Totalcommander), Robocopy und nebenher einfach mal die Stoppuhr laufen lassen.
Archiv = 2,71 GB
Übertragungsgeschwindigkeit = schwankend , im Schnitt 225 MB/sek
Dauer und Messverfahren bleiben gleich.
Hallo mitchell,
Du hast 500 relativ große Dateien (5MB sind groß, auch wenn heutzutage andere Größen als groß angesehen werden). Da ist der Overhead recht klein. Damit erklärt es sich, warum die Gesamtdauer insgesamt fast gleich bleibt. Denn 500 mal einige wenige Millisekunden ergeben nur ein bis 2 Sekunden und das ist "mit der Handstoppuhr" im Rahmen des Meßfehlers, insbesondere weil es beim Explorer oder Totalkcommander keinen definierten Punkt gibt, an den man "abdrücken" kann wie bei einer Ziellinie. Da gibt es also gefühlt keinen Unterschied. Versuch das Ganze mal mit 500000 Dateien die nur 5kB groß sind. Gleiche Datenmenge, aber wesentlich mehr Dateien. Die Millisekunde Overhead wirkt sich da statt 500-fach 500000-fach aus und schon hast Du 500Sekunden statt nur einer halben Sekunde Unterschied.
Der andere Punkt sind natürlich die "Meßwerte" in MB/s, die Dir Windows anzeigt. Da kommt wieder der Punkt mit dem Mist messen ins Spiel. Wie jeder von uns weiß, lügt Windows oft, oder rechnet auch oft falsch. Die Werte die da angezeigt werden sind gemittelte Werte und je nachdem, welches Verfahren die nehmen, habe ich manchmal das Gefühl, daß die total daneben liegen. Deswegen ist das einzig sichere Verfahren außer einen speziellen Meßprogramm das "Handmeßverfahren", das die Gesamtdatenmenge durch die per Hand gemessene Zeit zu dividieren um die Datenübertragungsrate zu bestimmen.
Im Endeffekt ist es so, daß die Unterschiede im "Dateikopieren" zwischen vielen kleinen Dateien und einigen Großen Dateien nur wenig von der Datenübertragungsrate des Mediums abhängig sind (HDD/SSD fast gar nicht, Ethernet ein klein wenig mehr, CIFS, noch etwas mehr), sondern von den "Wechseln" zwischen den Dateien, d.h. die "mittlere Zugriffszeit" ist das Ausschlaggebende. Bei SSDs ist die Zugriffszeit selten größer als eine Millisekunde/Block, so daß sich die (per Hand) meßbaren Unterschiede erst bei vielen tausend Dateien ergeben. Ergo hast Du bei Deiner Messung diese Grenze gar nicht erreicht. Du hast Dich nur von Windows irritieren lassen, das Dir irgendwelche Fantasiewerte zeigt.
Ich hoffe, ich habe ein klein wenig Licht in das Dunkel bringen können.
lks
PS: Wie Du siehst, bekommst Du eine deutlich bessere Antwort, wenn Du die Frage "richtig" stellst, und insbesodnere demn Punkt
- Eine kurze Beschreibung mit allen signifikanten und benötigten Informationen.
beachtest.
Zitat von @Mitchell:
Hi Lochkartenstanzer,
ich arbeite mich mal von unten nach oben:
Wenn du auf mein Profil klickst, wirst du sehen, dass ich "wie man eine Frage richtig stellt" auch schon sehr oft verlinkt habe. Und bevor wir uns daraus eine Flamerei machen...deine Antwort wäre auch ohne korrekte Zahlen gut gekommen .
Hi Lochkartenstanzer,
ich arbeite mich mal von unten nach oben:
Wenn du auf mein Profil klickst, wirst du sehen, dass ich "wie man eine Frage richtig stellt" auch schon sehr oft verlinkt habe. Und bevor wir uns daraus eine Flamerei machen...deine Antwort wäre auch ohne korrekte Zahlen gut gekommen .
Das weiß ich doch. War nur als kleine Stichelei gedacht.
Aber wie gesagt, ihr habt ja recht damit. Ich hatte nur an dem Abend einfach keine Zahlen mehr im Kopf und dachte, die Intension wäre auch so klar. Passt so
BtT:
Erstmal vielen Dank für die Erklärung, "LEIDER" sind mir die Verhältnisse klar und auch auf Windows hatte ich mich nie verlassen. Ich versuche es deshalb mal andersrum, da es mir auf keine Messergebnisse ankommt und ich das Spiel auch schon mit 10000 Dateien durch habe...gleiches Verhalten (und ich denke, das will mir nicht in den Kopf):
Wieso verhalten sich - beim Verschieben - mehrere kleine Dateien so, wie eine große Datei?
Vielleicht hilft es dir, wenn ich meine (wohl falsche) Denkweise preisgebe :
User gibt Befehl: "verschiebe Dateien von A nach B, bitte 500x"
BtT:
Erstmal vielen Dank für die Erklärung, "LEIDER" sind mir die Verhältnisse klar und auch auf Windows hatte ich mich nie verlassen. Ich versuche es deshalb mal andersrum, da es mir auf keine Messergebnisse ankommt und ich das Spiel auch schon mit 10000 Dateien durch habe...gleiches Verhalten (und ich denke, das will mir nicht in den Kopf):
Wieso verhalten sich - beim Verschieben - mehrere kleine Dateien so, wie eine große Datei?
Vielleicht hilft es dir, wenn ich meine (wohl falsche) Denkweise preisgebe :
User gibt Befehl: "verschiebe Dateien von A nach B, bitte 500x"
Auf dem gleichen Volume oder über Volumegrenzen hinweg? Auf dem gleuchen Volume ist es nur ein "umhängen der Inodes" ohne echtes bewegen der Daten. Auch vershiedenen Volumes ist es "Kopieren mit anschließendem Löschen des Originals".
Welche Variante machst Du?
PC ließt 1. Datei von A, schiebt zu B und geht weiter zur nächsten. Ganz grob ist das ein Zyklus, Lesen und Schreiben.
Dies passiert also nun 500x = "grob" 500 Zyklen.
Nun mache ich das Gleiche mit einem Archiv, welches die Dateien beinhaltet.
PC ließt Datei von A, schieb zu B und...das war's auch schon, es gibt ja nur die eine = "grob" ein Zyklus.
Dies passiert also nun 500x = "grob" 500 Zyklen.
Nun mache ich das Gleiche mit einem Archiv, welches die Dateien beinhaltet.
PC ließt Datei von A, schieb zu B und...das war's auch schon, es gibt ja nur die eine = "grob" ein Zyklus.
Wie gesagt, auf dem gleichen Volume oder über Volumegrenzen hinweg?
Wenn ich so heran gehe, ist mir die Übertragungsgeschwindigkeit wie auch die Differenz (ob sie stimmt oder nicht) völlig klar und es wäre auch logisch. Klar, die Werte sind falsch...aber prinzipiell muss eine Datei den touch-Befehl schneller handhaben können als mehrere.
Wo biege ich gedanklich falsch ab?
Wie gesagt: Ist es üebr Volumegrenzen hinweg oder innerhalb eines Volumes? Innerhalb eines Volumes müßte es "sofort" gehen, über Volumegrenzen hinweg etwas länger.
Ich versuche das mal nachzustellen und melde mich nochmal.
PS: Ein Kaffee ist dir schon mal sicher, du darfst gerne aufstocken
Danke.
Also ich habe in einer Win10-VM folgendes Setup aufgestellt:
- Zwei Volumes à 20GB erzeugt.
- Eine Datei mit 2,5GB erzeugt.
- Ein Verzeichnis mit 512 Dateien a 5MB erzeugt (auch 2,5GB)
- Ein Verzeichnis mit 512 Verzeichnissen à 1024 Dateien à 5KB erzeugt.
Zwei Tests.
- Verschieben innerhalb des Volumes
Innerhalb nicht meßbarer Zeit.
Verschieben von Volume A nach Volume B
- 2,5GB-Datei in 20Sekunden
- 5MB-Dateien in 60 Sekunden
- 5KB-Dateien haben allein zum "Vorbereiten" 4 Minuten gebraucht. Zum Verschieben meinte Windows 3 Stunden zu benötigen, und nachdem das nach 15 Minuten nicht weniger wurde, habe ich abgebrochen.
Also ich kann Deine Messungen nicht nachvollziehen.
lks
Edit: Diverse Tapp- und Kommafehler rausgemacht.
Hallo Mitchell,
Meine Theorie: Dissonanz
Da Win10 standardmäßig write-cache auf allen Laufwerken aktiviert, nutzt er es auch.
d.h. mit dem Cache dauert der transfer immer gleichlang, da es ja via Cache im RAM gemacht wird.
Die angezeigte Geschwindigkeit ist aber die echte Festplattengeschwindigkeit.
lks konnte es nicht nachstellen da die VM (vermutlich) zumwenig RAM hat und Windows einfach mal nicht cached.
Ich kenne die grenze leider nicht bei W10 ab wann und / wie / warum er den cache nutzt, bei Linux kann man sich aber austoben
Siehe Antwort hier:
https://unix.stackexchange.com/questions/30286/can-i-configure-my-linux- ...
Ohne direkt die parameter zu bearbeiten aktivieren die meisten Linux distros filesystemcaching im großen stil aktuell bei etwa 16GB RAM, davor wird nur sehr wenig gecached.
Wenn sich W10 genauso verhält, würde ich das mal testen mit einer Maschine mit sehr wenig RAM und einer mit sehr viel RAM
Schätze mal mit wenig RAM = ergebnisse wie bei lks, bei viel RAM = ergebnisse wie bei dir.
Aber das nur eine Theorie, bin bei WIndows nicht so drin im Thema Disk / File Cache bla.
MFG
N-Dude
Meine Theorie: Dissonanz
Da Win10 standardmäßig write-cache auf allen Laufwerken aktiviert, nutzt er es auch.
d.h. mit dem Cache dauert der transfer immer gleichlang, da es ja via Cache im RAM gemacht wird.
Die angezeigte Geschwindigkeit ist aber die echte Festplattengeschwindigkeit.
lks konnte es nicht nachstellen da die VM (vermutlich) zumwenig RAM hat und Windows einfach mal nicht cached.
Ich kenne die grenze leider nicht bei W10 ab wann und / wie / warum er den cache nutzt, bei Linux kann man sich aber austoben
Siehe Antwort hier:
https://unix.stackexchange.com/questions/30286/can-i-configure-my-linux- ...
Ohne direkt die parameter zu bearbeiten aktivieren die meisten Linux distros filesystemcaching im großen stil aktuell bei etwa 16GB RAM, davor wird nur sehr wenig gecached.
Wenn sich W10 genauso verhält, würde ich das mal testen mit einer Maschine mit sehr wenig RAM und einer mit sehr viel RAM
Schätze mal mit wenig RAM = ergebnisse wie bei lks, bei viel RAM = ergebnisse wie bei dir.
Aber das nur eine Theorie, bin bei WIndows nicht so drin im Thema Disk / File Cache bla.
MFG
N-Dude