36807
Mar 25, 2008, updated at Mar 28, 2008 (UTC)
8204
7
0
Gebrauch von rsync viele Daten auf weiter Streke
Hallo zusammen,
ich habe die Aufgabe erhalten, dass c.a. 5-8 GB Daten zwischen Deutschland und Asien synchron vorhanden sein sollen. Nachdem mich der IPReplicator nicht überzeugen konnte bin ich auf rsync gestoßen. Die entfernte Maschine in Asien ist ein windows2003 FileServer auf dem der cwRsync als Client zum Linux rsync Fileserver nach Deutschland verbinden soll. Die Konfiguration bekomme ich schon hin.
Meinen Chef interessiert eher die Latenzzeit und die Verbarbeitungszeit. Ich sollte erwähnen, dass innerhalb der 5-8 GB sehr viele Unterverzeichnisse mit ca. 1,5 Millionen Daten vorhanden sind. Wie lange benötigt nun der rsync um auf eine Änderung zu reagieren. Muss der jedesmal alle Verzeichnisse/Ordner und Files abchecken? Gibt es irgendwo eine Art Index der angelegt wird? Über Antworten bin ich sehr dankbar. Die Beschreibung des rsync Algorythmus bringt mich übrigens nicht weiter, weil in dem Beispiel nur von einer Datei ausgegangen wird. http://rsync.samba.org/tech_report/node2.html
mfg
Gummistiefel
ich habe die Aufgabe erhalten, dass c.a. 5-8 GB Daten zwischen Deutschland und Asien synchron vorhanden sein sollen. Nachdem mich der IPReplicator nicht überzeugen konnte bin ich auf rsync gestoßen. Die entfernte Maschine in Asien ist ein windows2003 FileServer auf dem der cwRsync als Client zum Linux rsync Fileserver nach Deutschland verbinden soll. Die Konfiguration bekomme ich schon hin.
Meinen Chef interessiert eher die Latenzzeit und die Verbarbeitungszeit. Ich sollte erwähnen, dass innerhalb der 5-8 GB sehr viele Unterverzeichnisse mit ca. 1,5 Millionen Daten vorhanden sind. Wie lange benötigt nun der rsync um auf eine Änderung zu reagieren. Muss der jedesmal alle Verzeichnisse/Ordner und Files abchecken? Gibt es irgendwo eine Art Index der angelegt wird? Über Antworten bin ich sehr dankbar. Die Beschreibung des rsync Algorythmus bringt mich übrigens nicht weiter, weil in dem Beispiel nur von einer Datei ausgegangen wird. http://rsync.samba.org/tech_report/node2.html
mfg
Gummistiefel
Please also mark the comments that contributed to the solution of the article
Content-Key: 83901
Url: https://administrator.de/contentid/83901
Printed on: April 18, 2024 at 08:04 o'clock
7 Comments
Latest comment
Moin,
sehr interessant wäre vielleicht noch, wie schnell die Verbindung zwischen den Standorten ist. Über ISDN dürfte das ganze "etwas" länger dauern als über eine 1GBit/s Standleitung.
MfG,
VW
PS: Ich kenne mich leider nicht mit rsync aus und bin eher auf diesen Beitrag gekommen, weil ich mich gefragt habe, warum du nicht einfach DFS von Windows verwendest. Aber mit einem Linux Server geht das ja nicht.
sehr interessant wäre vielleicht noch, wie schnell die Verbindung zwischen den Standorten ist. Über ISDN dürfte das ganze "etwas" länger dauern als über eine 1GBit/s Standleitung.
MfG,
VW
PS: Ich kenne mich leider nicht mit rsync aus und bin eher auf diesen Beitrag gekommen, weil ich mich gefragt habe, warum du nicht einfach DFS von Windows verwendest. Aber mit einem Linux Server geht das ja nicht.
Hi Gummistiefel,
ich synchronisiere jede Nacht knapp 100GB bei einem Kunden zu meinem eigenen Server (Linux - Linux). Allerdings gleicht rsync bei mir "nur" ca. 160.000 Dateien ab. Das einlesen der Liste dauert (bei 384KBit Upstream) 90sek, also bei Dir ungefähr Faktor 10, was ich absolut akzeptabel finde. Der eigentliche Transfer hängt u.a. von den Parametern ab, die Du übergibst.
Ich habe aber auch die Erfahrung, dass das Ganze unter cwRsync länger dauert.
Hoffe ich konnte Dir etwas helfen,
Gruß,
Martin
ich synchronisiere jede Nacht knapp 100GB bei einem Kunden zu meinem eigenen Server (Linux - Linux). Allerdings gleicht rsync bei mir "nur" ca. 160.000 Dateien ab. Das einlesen der Liste dauert (bei 384KBit Upstream) 90sek, also bei Dir ungefähr Faktor 10, was ich absolut akzeptabel finde. Der eigentliche Transfer hängt u.a. von den Parametern ab, die Du übergibst.
Ich habe aber auch die Erfahrung, dass das Ganze unter cwRsync länger dauert.
Hoffe ich konnte Dir etwas helfen,
Gruß,
Martin
Ich glaube nicht, dass die Bandbreite hier das Problem sein dürfte, sondern die Anzahl der vielen kleinen Dateien und die Art, wie das RSync durchgeführt wird. Bei einem RSync via SSH z.B. hat man eine latente Verbindung, während bei einem RSync über einen RSync-Server für jede Datei eine neue Verbindung aufgebaut wird, was bedeutet, dass bei vielen kleinen Dateien enorm viel Zeit durch die Handshakes verloren geht. Auch das Berechnen der Checksummen dauert wesentlich länger, wenn es viele Dateien sind.
dem stimme ich zu! das hauptproblem dürfte nicht die bandbreite sein. darum kann man auch nicht wirklich vorhersagen wie lange ein "durchschnittlicher" sync-durchgang laufen wird. denn mal gibt es viel, mal wenig zu syncronisieren. und über die anzahl bzw vor allem die größe der Dateien und deren Verteilung/gewichtung haben wir ja auch nichts erfahren. also wenn du sowas wissen musst gilt: selbst testen! ich glaube nicht da es für deinen Fall eine Formel gibt.
Wie mein Vorredner schon sagte...vermutlich wird die meiste Zeit bei dir durch den Verwaltungsoverhead und das Handshaking vergehen wenn du sehr sehr viele sehr kleine dateien hast.
was gerne für verwirrung sorgt... RSYNC ist ein Protokoll UND ein Programmpaket bestehend aus Client und Server. eigentlich verbindet sich ein rsync client über das rsync protokoll mit dem rsync-server. Man kann rsync aber auch ohne das server-gegenstück nur zwischen "gemounteten" verzeichnissen einsetzen. dann dient es nur als syncrhonisationsprogramm, regelt aber nicht die logische verbindung zwischen den servern. das "könnte" evtl effektiver sein.
die verbindung zwischen den Servern könnte z.b. per SSH-Shell oder per CIFS/SMB erfolgen. also vieleicht hast du auf der linux box einen samba server laufen und willst dessen freigabe auf dem windows server mounten. dann könntest du sogar mit dem microsoft tool "robocopy" arbeiten oder mit jedem beliebigen anderen windows-sync programm. oder du machst es umgekehrt auf der linux seite und mountest die freigabe des windows servers. dann kannst du auf der linux seite mit rsync die sncronisation anwerfen bei einer festen bestehenden online-verbindung.
Wie mein Vorredner schon sagte...vermutlich wird die meiste Zeit bei dir durch den Verwaltungsoverhead und das Handshaking vergehen wenn du sehr sehr viele sehr kleine dateien hast.
was gerne für verwirrung sorgt... RSYNC ist ein Protokoll UND ein Programmpaket bestehend aus Client und Server. eigentlich verbindet sich ein rsync client über das rsync protokoll mit dem rsync-server. Man kann rsync aber auch ohne das server-gegenstück nur zwischen "gemounteten" verzeichnissen einsetzen. dann dient es nur als syncrhonisationsprogramm, regelt aber nicht die logische verbindung zwischen den servern. das "könnte" evtl effektiver sein.
die verbindung zwischen den Servern könnte z.b. per SSH-Shell oder per CIFS/SMB erfolgen. also vieleicht hast du auf der linux box einen samba server laufen und willst dessen freigabe auf dem windows server mounten. dann könntest du sogar mit dem microsoft tool "robocopy" arbeiten oder mit jedem beliebigen anderen windows-sync programm. oder du machst es umgekehrt auf der linux seite und mountest die freigabe des windows servers. dann kannst du auf der linux seite mit rsync die sncronisation anwerfen bei einer festen bestehenden online-verbindung.