AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)
Thema durchsuchen
Ansicht
Themen-Optionen

Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

Ein Thema von gee21 · begonnen am 29. Apr 2022 · letzter Beitrag vom 30. Apr 2022
Antwort Antwort
Seite 2 von 2     12   
gee21

Registriert seit: 3. Jan 2013
199 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 13:00
Zitat:
Es geht also darum, eine Alarmanlage einzubauen, die im Normalfall und im Idealfall nie einen Alarm auslösen muss, da der Zustand, der von ihr überprüft wird, im Regelbetrieb nicht vorkommen kann / darf.
Ja genau
Robert
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.051 Beiträge
 
Delphi 12 Athens
 
#12

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 14:28
NAS ...

Warum SMB?

via SSH, da kann die Berechnung des HASH auf der anderen Seite erfolgen, also für die Berechnung muß die Datei nicht erst übertragen werden, sondern nur noch der kleine HASH.


rsync sollte das darüber auch schneller/sparsamer sein
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
gee21

Registriert seit: 3. Jan 2013
199 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 15:00
NAS ...

Warum SMB?

via SSH, da kann die Berechnung des HASH auf der anderen Seite erfolgen, also für die Berechnung muß die Datei nicht erst übertragen werden, sondern nur noch der kleine HASH.


rsync sollte das darüber auch schneller/sparsamer sein

Ohh ich wusste nicht das man über SSH den HASH direkt so auslesen kann... Danke
Ich nutze SMB weil es einfach geht in kombination mit Delphi und es sowieso bereits auf allen Windows Rechnern eingerichtet (zB Netzlaufwerk T: oder S: etc).

Damit ich in Windows eine SSH Verbindung mache konnte habe ich bis jetzt immer Putty verwendet. Ich nehme mal an ich müsste also in Delphi eine SSH verbindung aufbauen anstatt auf die Netzlaufwerke zuzugreifen. Man kann nicht ein Netzlaufwerk einrichten das dann über SSH läuft anstelle von SMB, oder doch?

Hab gesehen es gibt folgende Komponente, Würde es theoretisch mit dieser gehen?

https://torry.net/pages.php?id=1578
TGPuttyLib v.1

(ich denke aber es ist eh zu hoch für mich).
Robert
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.051 Beiträge
 
Delphi 12 Athens
 
#14

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 15:09
Einfach auslesen nicht direkt (OK, einige Dateisysteme speichern optional auch direkt einen Hash, den man lesen könnte, z.B. Btrfs),
aber da wird das Hash-Berechnunsprogramm ja einfach auf dem anderen Rechner (NAS) ausgeführt, ohne die Datei erst runterladen zu müssen, und dessen Ausgabe (der Hash), kommt dann ganz schnell über Leitung zurück.


Ich weiß jetzt nicht ob wirklich rsync oder eines der anderen Programmchen, aber ich glaube rsync konnte die Dateien Blockweise hashen und nur den Hash bergleichen, anstatt jedes Byte einzeln, womit es dann schneller geht, wenn jeweils die Hashs auf den Seiten berechnet werden, auf welchen die Dateien liegen.


SSH ist ja erstmal nur die Console/Terminal ... Dateilisten und -übertragung machen dann Programme.
z.B. FTPS vs. SFTP ... das Eine ist FTP durch seinen SSL/TSL Tunnel, das Andere sieht wie FTP aus, aber es öffnet intern quasi ein Terminal, wo es dann entsprechende Befehle ausfürt.


Es selber machen (hashs berechnen lassen, vergleichen und dann die Datei übertragen oder nicht) ist wohl nicht nötig.
SCP oder RSYNC kannst du ja einfach aus Delphi heraus aufrufen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (29. Apr 2022 um 15:19 Uhr)
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#15

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 15:21

Betreffend RSYNC:
Ja es ist eben alleine mit RSYNC / FTPSync nicht möglich aus meiner Sicht. (Kann auch sein das ich was falsch überlege)

Entweder Synchronisiert RSYNC. = problem bei fake backups synchronisiert er dann einfach auch mit.
rsync hat eine checksum Option. File Date wird in dem Falle ignoriert, außerdem hat es einen Dry Run Schalter.
Gruß, Jo
  Mit Zitat antworten Zitat
gee21

Registriert seit: 3. Jan 2013
199 Beiträge
 
Delphi 10.4 Sydney
 
#16

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 15:44
OK alles klar.

Ich bedanke mich rechtherzlich bei allen
Hab wieder mal viel gelernt und denke dass ich mit all diesen Informationen eine Lösung finde.
Robert
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.050 Beiträge
 
Delphi 2009 Professional
 
#17

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 16:07
Warum vergleicht man nicht das CRC32, das bereits in den ZIP-Dateien steht, zusammen mit der Dateigröße? Das sollte hinreichend genau sein.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.597 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#18

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 18:26
Ich weiß jetzt nicht ob wirklich rsync oder eines der anderen Programmchen, aber ich glaube rsync konnte die Dateien Blockweise hashen und nur den Hash bergleichen, anstatt jedes Byte einzeln, womit es dann schneller geht, wenn jeweils die Hashs auf den Seiten berechnet werden, auf welchen die Dateien liegen.
Standardmäßig verwendet rsync zum Vergleich den Timestamp der Dateien, um festzustellen, ob sie kopiert werden muss. Erst beim Kopieren versucht es blockweise zu kopieren und Prüfsummen zu übertragen, um Bandbreite zu sparen. Es gibt aber eine Option (--checksum wenn ich mich recht erinnere), bei der der initiale Vergleich anhand einer Prüsumme geschieht. Das ist dann allerdings um Größenordnungen langsamer.

rsync selbst kann der Fragesteller allerdings gar nicht einsetzen, außer um eine Datei ggf. lokal zu kopieren, was vielleicht schneller ist als der Zugriff via SMB.

Es ist jedoch wirklich ein gutes Beispiel, wie man es machen könnte, vorausgesetzt, man kann auf dem Server (NAS) Programme via ssh ausführen.
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.597 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#19

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 29. Apr 2022, 18:28
Warum vergleicht man nicht das CRC32, das bereits in den ZIP-Dateien steht, zusammen mit der Dateigröße? Das sollte hinreichend genau sein.
Das setzt voraus, dass die Prüfsumme in der Datei nicht manipuliert ist. Aber manipulierte Dateinen scheinen ja eines der möglichen Probleme zu sein.
Thomas Mueller
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#20

AW: Grosse Dateien vergleichen. Schnell, Sicher und Einfach ;)

  Alt 30. Apr 2022, 14:56

rsync selbst kann der Fragesteller allerdings gar nicht einsetzen, außer um eine Datei ggf. lokal zu kopieren, was vielleicht schneller ist als der Zugriff via SMB.

Es ist jedoch wirklich ein gutes Beispiel, wie man es machen könnte, vorausgesetzt, man kann auf dem Server (NAS) Programme via ssh ausführen.
Warum kann man (hier) kein rsync einsetzen?

Es ist m.E. nicht nur ein gutes Beispiel, es ist auch fraglich, ob unter der ausgegebenen Herangehensweise etwas schnell, sicher und einfach neu entsteht, was es seit Jahrzehnten bewährt gibt.

Ein NAS, das kein SSH kann, wäre natürlich hinderlich, aber nicht nur für rsync. Ideal würde ein solches Programm natürlich dort laufen, wo die Dateien landen. Aber dort sind sie ja nicht festgetackert.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz