Mögliches Duplizieren:
Kostenlose Möglichkeit, große Dateien über das Internet zu teilen?
Welche Möglichkeiten gibt es, um große Dateien ohne Internet zu übertragen?
Das Labor meiner Frau führt hier in den USA ein Projekt mit Mitarbeitern in Singapur durch. Sie müssen gelegentlich eine große Menge hochdimensionaler Bilddaten (~ 10 GB komprimiert) über Kontinente übertragen. Was wäre mit den aktuellen Technologien eine gute Lösung für dieses Nutzungsszenario?
Ich kann mir einige vorstellen, aber keine davon scheint ideal zu sein:
- Direkte Verbindung über das Internet: Die Übertragungsrate beträgt ca. 500 KB / s, und es fehlt auch ein Tool zur Behandlung von Fehlern / Neuübertragungen.
- Hochladen auf einen gemeinsamen Server oder Dienst wie Dropbox: Hochladen für Mitarbeiter außerhalb der USA schmerzhaft.
- Brennen von Discs oder Kopieren auf HDs und Versand über Courier: Die Latenz ist erheblich, zuzüglich der zusätzlichen Arbeit zum Erstellen einer lokalen Kopie.
Irgendwelche Vorschläge?
Update: Keine der Parteien der Zusammenarbeit sind technisch versierte Benutzer.
data-transfer
Frank
quelle
quelle
Antworten:
Ich schlage vor, Sie verwenden rsync . Rsync unterstützt den Delta-Übertragungsalgorithmus. Wenn Ihre Dateien also nur teilweise geändert werden oder wenn die vorherige Übertragung abnormal beendet wurde, ist Rsync intelligent genug, um nur das zu synchronisieren, was neu / geändert ist.
Es gibt mehrere Ports des ursprünglichen Rsync für Windows und andere nicht unix-kompatible Systeme, sowohl kostenlos als auch nicht kostenlos. Weitere Informationen finden Sie im Rsync Wikipedia-Artikel .
Rsync über SSH ist sehr verbreitet und funktioniert gut. 10 GB sind heutzutage eine relativ kleine Datenmenge, und Sie haben nicht angegeben, was "gelegentlich" bedeutet. Wöchentlich? Täglich? Stündlich? Mit einer Übertragungsrate von 500 KB / s dauert es ungefähr 6 Stunden, was nicht wirklich lange dauert. Wenn Sie die Daten häufig übertragen müssen, ist es wahrscheinlich besser, eine Cron-Task zu erstellen, um rsync automatisch zu starten.
quelle
rsync
eigenes Protokoll für Deltas, sondern ein leistungsfähiges Gegenstücksystem am anderen Ende?rsync
der Delta-Algorithmus beim Übertragen von binär komprimierten Daten (.zip
oder.jpg
)?Eine Verbindung über das Internet kann eine praktikable Option sein, und ein Programm wie bittorrent ist genau für diesen Zweck geeignet, da es die Dateien in logische Teile aufteilt, die über das Internet gesendet und am anderen Ende rekonstruiert werden sollen.
Bittorrent bietet Ihnen auch eine automatische Fehlerkorrektur, die Reparatur beschädigter Teile. Wenn mehr Personen die Dateien benötigen, können sie die Datei aus so vielen Quellen liefern, wie bereits (Teile) der Datei heruntergeladen wurden.
Zugegeben, die Leute sehen darin eine gute Möglichkeit, Filme und ähnliches herunterzuladen, aber es hat viel mehr legale Verwendungszwecke.
Viele Bittorrent-Clients haben auch integrierte Tracker, sodass Sie keinen dedizierten Server zum Hosten der Dateien benötigen.
quelle
Teilen Sie die Datei in Blöcke von z
split
. B. 50 MB auf (z . B. ). Berechnen Sie Prüfsummen für alle (zmd5sum
. B. ). Laden Sie direkt über FTP und einen fehlertoleranten FTP-Client hoch, z. B.lftp
unter Linux. Übertragen Sie alle Chunks und eine Datei mit allen Prüfsummen.Stellen Sie auf dem Remote-Standort sicher, dass alle Blöcke die gewünschte Prüfsumme haben, laden Sie die fehlgeschlagenen Blöcke erneut hoch und setzen Sie sie wieder in der Originaldatei zusammen (z
cat
. B. mithilfe von ).Standort des Servers zurücksetzen (ich habe unter der Annahme gepostet, dass der Zielstandort den Server bereitgestellt hat und Sie die Übertragung lokal starten, wenn die Dateien bereit sind) nach Bedarf. Ihr FTP-Client sollte sich nicht darum kümmern.
Ich hatte in der Vergangenheit ähnliche Probleme und die Verwendung eines fehlertoleranten FTP-Clients hat funktioniert. Es wurden nie Bits umgedreht, nur regelmäßige Verbindungsabbrüche, sodass ich das Erstellen von Chunks überspringen und einfach die Datei hochladen konnte. Für alle Fälle haben wir noch eine Prüfsumme für die gesamte Datei bereitgestellt.
quelle
lftp
eine laufende Übertragung aus irgendeinem Grund nicht abgebrochen wird . Stellen Sie sicher, dass auf dem Zielstandort immer genügend freier Speicherplatz vorhanden ist.Eine Variation der Antwort von Daniel Beck besteht darin, die Dateien in Blöcke in der Größenordnung von 50 MB bis 200 MB aufzuteilen und Paritätsdateien für den gesamten Satz zu erstellen .
Jetzt können Sie die Dateien (einschließlich der Paritätsdateien) mit FTP, SCP oder etwas anderem an den Remote-Standort übertragen und nach Eintreffen des gesamten Sets eine Überprüfung durchführen. Wenn nun Teile beschädigt sind, können diese durch die Paritätsdateien behoben werden, wenn genügend Blöcke vorhanden sind. Dies hängt mehr oder weniger davon ab, wie viele Dateien beschädigt sind und wie viele Paritätsdateien Sie erstellt haben.
Paritätsdateien werden im Usenet häufig zum Senden großer Dateien verwendet. Meistens werden sie dann als RAR-Archive aufgeteilt. Es ist nicht ungewöhnlich, auf diese Weise Daten mit bis zu 50 bis 60 GB zu senden.
Sie sollten auf jeden Fall den ersten Link überprüfen und sich auch QuickPar ansehen , ein Tool, mit dem Sie Paritätsdateien erstellen, Ihre heruntergeladenen Dateien überprüfen und mit den bereitgestellten Paritätsdateien sogar beschädigte Dateien wiederherstellen können.
quelle
Ist es eine große 10-GB-Datei? Könnte es leicht aufgeteilt werden?
Ich habe nicht so viel damit gespielt, aber es kam mir als interessantes und relativ einfaches Konzept vor, das in dieser Situation funktionieren könnte:
http://sendoid.com/
quelle
Stellen Sie die Daten über ftp / http / https / sftp / ftps zur Verfügung (Anmeldeinformationen erforderlich) und verwenden Sie einen beliebigen Download-Manager auf der Clientseite.
Download-Manager wurden speziell entwickelt, um Daten unabhängig von auftretenden Fehlern abzurufen, damit sie optimal zu Ihrer Aufgabe passen.
Für den Server ist ein FTP-Server normalerweise am einfachsten einzurichten. Sie können eine Liste bei Wikipedia konsultieren . HTTPS, SFTP und FTPS ermöglichen die Verschlüsselung (bei reinem FTP / HTTP wird das Kennwort im Klartext gesendet), SFTP / FTPS werden jedoch weniger häufig von der Client-Software unterstützt, und die Einrichtung des HTTP / HTTPS-Servers ist schwierig.
quelle