Wie können große Dateien effizient zwischen zwei Remote-Standorten auf demselben Server übertragen werden?

436
Duodenalsalmons

Auf einem Server befinden sich mehrere große Dateien (> 10 GB), die nach einer Überprüfung an einen anderen Speicherort auf demselben Server verschoben werden müssen.

Die Benutzer, die die Überprüfung und das Verschieben von Dateien durchführen, haben keinen RDP-Zugriff auf den Server, können jedoch auf die Dateien über UNC-Pfade zugreifen:

\\server\FilesToReview \\server\MoveToHere 

Derzeit wird Windows Explorer zum Kopieren / Einfügen der Dateien verwendet. Es ist ziemlich langsam, da ich glaube, dass die Datei lokal kopiert / zwischengespeichert und dann erneut an den neuen Speicherort auf dem Server hochgeladen wird.

Gibt es eine Möglichkeit, die Dateien auf dem Server zu verschieben, ohne das Netzwerk zweimal durchlaufen zu müssen? Hätte die Neukonfiguration der UNC-Freigaben Auswirkungen?

\\server\FilesToReview \\server\FilesToReview\MoveToHere 

Alle Ideen dankbar erhalten ...

Edits Server ist Windows Server 2012, der Client ist Windows 10 Windows 7 (danke @Daniel B); Dateien müssen kopiert und nicht verschoben werden. Dateien befinden sich auf derselben Festplatte (danke @Attie)

1
Nur neuere Versionen von SMB bieten serverseitige Kopienverschiebung. Sie haben in Ihrer Frage keine Windows-Versionen erwähnt. Daniel B vor 5 Jahren 4
Eine Option wäre, ihnen eine Aufgabe in einem Self-Service-Portal anzubieten, die sie für sie erledigen. Eine andere Option wäre, eine Aufgabe auf dem Server zu haben, die überwacht, wann die Überprüfung auf irgendeine Weise abgeschlossen ist, und darauf reagieren. Seth vor 5 Jahren 0
Müssen sie die Datei (en) "_copy_" oder "_move_" machen? Wenn letzteres, dann nicht kopieren / einfügen ...? Attie vor 5 Jahren 0
Befinden sich die beiden Freigaben auf demselben Datenträger / Dateisystem? Attie vor 5 Jahren 1
@DanielB, danke - Windows Server 2012, Client ist Windows 10 Duodenalsalmons vor 5 Jahren 0
@Attie - danke, habe der Frage mehr Details als Bearbeitung hinzugefügt Duodenalsalmons vor 5 Jahren 0
Es ist erwähnenswert, dass die Tatsache, dass Sie die Daten * kopieren *, dass neue Bits geschrieben werden müssen. Egal wie du es schneidest, das wird Zeit brauchen. Twisty Impersonator vor 5 Jahren 1

1 Antwort auf die Frage

2
Daniel B

Entsprechend den Informationen, die Sie angegeben haben, verwenden Sie bereits serverseitige Copy Offload . Laut dem Samba-Wiki ist es in den folgenden Betriebssystemen verfügbar:

  • Windows Server 2012 und höher: über Windows Explorer oder Robocopy
  • Windows 8 und höher: über Windows Explorer oder Robocopy
  • Windows Server 2008: nur über Robocopy
  • Windows 7: nur über Robocopy

Sie können dies auf der Registerkarte "Leistung" des Task-Managers leicht überprüfen. Es sieht ein bisschen so aus:

serverseitige Kopie

Wie Sie sehen, verbraucht es so gut wie keine Bandbreite, kopiert jedoch immer noch 27,7 MB / s.

Beachten Sie auch, wie ich eine Kopie einer Datei im selben Ordner erstelle und sie ist extrem langsam. So langsam sind Festplatten.

Vielen Dank. Dieser Link weist darauf hin, dass eine der Einschränkungen darin besteht, dass sich sowohl Quell- als auch Zieldateien auf derselben Samba-Freigabe befinden müssen. Ich denke, das Kopieren von \\ server \ share1 nach \\ server \ share2 würde das verletzen (dh keine serverseitige Kopie), wohingegen \\ server \ share1 nach \\ server \ share1 \ share2 nicht wäre. Duodenalsalmons vor 5 Jahren 0
Ah ja, das habe ich verpasst. Ja, es muss wahrscheinlich auf dem gleichen Anteil sein. Dies kann jedoch auch eine Einschränkung für Samba sein. Überprüfen Sie einfach mit dem Task-Manager! Daniel B vor 5 Jahren 0
Rätsel gelöst - Benutzer verwendeten eigentlich Windows 7, berichteten dies jedoch fälschlicherweise als Windows 10. Die Verwendung von Robocopy von \\ Server \ share1 bis \\ Server \ share2 beschleunigt die Arbeit mit ODX erheblich. Danke für die Hilfe! Duodenalsalmons vor 5 Jahren 0