Hallo,
die Idee mit der Datenbank finde ich super.
Leider scheint es jedoch die Suche seltsamerweise nicht zu beschleunigen sondern im Gegenteil sogar zu verlangsamen.
Hat jemand das auch schonmal getestet, erlebt?
Meine Such ist nach Dateiinhalt, SHA-1 160.
VG,
Nimrod
Datenbank verlangsamt Suche
-
- Site Admin
- Posts: 4050
- Joined: 04 Oct 2004, 18:38
- Location: Thailand
- Contact:
Re: Datenbank verlangsamt Suche
Meinen Sie damit den ersten Suchlauf, wenn die DB noch leer ist und erst erstellt werden muss oder danach, wenn die DB erstellt wurde und ein weiterer Suchlauf durchgeführt wird?
Re: Datenbank verlangsamt Suche
Die Differenz ist gigantisch. Ohne Datenbank ist es nur 8 Minuten, mit Datenbank an über 3h.
Ich lass es jetzt nochmal laufen. Aber der Unterschied spricht schon Bände.
Noch ein paar Zusatzinfos aus den Logfiles:
Ohne Datenbank:
17.10.2021 12:36:55 - AllDup 4.5
17.10.2021 12:36:55 - Suchmethode: Dateiinhalt
17.10.2021 12:36:55 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 12:36:55 - Option: Vergleiche Dateien aus allen Quellordnern
17.10.2021 12:36:59 - Dateianzahl: 102’303
17.10.2021 12:45:17 - 5’177 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 12:45:17 - 2’271 Duplikate mit insgesamt 466.14 MB in 'D:\c\Users' gefunden
17.10.2021 12:45:17 - Überprüfte Dateien: 102’327
17.10.2021 12:45:17 - Gruppen: 2’411
17.10.2021 12:45:17 - Dateivergleiche: 5’535’889
17.10.2021 12:45:17 - Prüfsummen erstellt: 77’521
17.10.2021 12:45:17 - Duplikate: 7’448 (7%) (1.47 GB)
17.10.2021 12:45:17 - Zeitaufwand: 00:08:22
Mit Datenbank: Dateianzahl schwankt leicht da anscheinend temporäre Dateien erstellt wurden
17.10.2021 12:46:20 - AllDup 4.5
17.10.2021 12:46:20 - Suchmethode: Dateiinhalt
17.10.2021 12:46:20 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 12:46:20 - Option: Datenbank verwenden
17.10.2021 12:46:21 - Dateianzahl: 102’350
17.10.2021 16:39:25 - 5’153 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 16:39:25 - 2’271 Duplikate mit insgesamt 470.14 MB in 'D:\c\Users' gefunden
17.10.2021 16:39:25 - Überprüfte Dateien: 102’329 / 102’350
17.10.2021 16:39:25 - Gruppen: 2’411
17.10.2021 16:39:25 - Dateivergleiche: 5’540’274
17.10.2021 16:39:25 - Prüfsummen erstellt: 30’517
17.10.2021 16:39:25 - Datenbank-Prüfsummen verwendet: 46’956
17.10.2021 16:39:25 - Datenbank-Prüfsummen gespeichert: 30’113
17.10.2021 16:39:25 - Datenbank-Prüfsummen aktualisiert: 404
17.10.2021 16:39:25 - Duplikate: 7’424 (7%) (1.48 GB)
17.10.2021 16:39:25 - Zeitaufwand: 03:53:05
Ich lass es jetzt nochmal laufen. Aber der Unterschied spricht schon Bände.
Noch ein paar Zusatzinfos aus den Logfiles:
Ohne Datenbank:
17.10.2021 12:36:55 - AllDup 4.5
17.10.2021 12:36:55 - Suchmethode: Dateiinhalt
17.10.2021 12:36:55 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 12:36:55 - Option: Vergleiche Dateien aus allen Quellordnern
17.10.2021 12:36:59 - Dateianzahl: 102’303
17.10.2021 12:45:17 - 5’177 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 12:45:17 - 2’271 Duplikate mit insgesamt 466.14 MB in 'D:\c\Users' gefunden
17.10.2021 12:45:17 - Überprüfte Dateien: 102’327
17.10.2021 12:45:17 - Gruppen: 2’411
17.10.2021 12:45:17 - Dateivergleiche: 5’535’889
17.10.2021 12:45:17 - Prüfsummen erstellt: 77’521
17.10.2021 12:45:17 - Duplikate: 7’448 (7%) (1.47 GB)
17.10.2021 12:45:17 - Zeitaufwand: 00:08:22
Mit Datenbank: Dateianzahl schwankt leicht da anscheinend temporäre Dateien erstellt wurden
17.10.2021 12:46:20 - AllDup 4.5
17.10.2021 12:46:20 - Suchmethode: Dateiinhalt
17.10.2021 12:46:20 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 12:46:20 - Option: Datenbank verwenden
17.10.2021 12:46:21 - Dateianzahl: 102’350
17.10.2021 16:39:25 - 5’153 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 16:39:25 - 2’271 Duplikate mit insgesamt 470.14 MB in 'D:\c\Users' gefunden
17.10.2021 16:39:25 - Überprüfte Dateien: 102’329 / 102’350
17.10.2021 16:39:25 - Gruppen: 2’411
17.10.2021 16:39:25 - Dateivergleiche: 5’540’274
17.10.2021 16:39:25 - Prüfsummen erstellt: 30’517
17.10.2021 16:39:25 - Datenbank-Prüfsummen verwendet: 46’956
17.10.2021 16:39:25 - Datenbank-Prüfsummen gespeichert: 30’113
17.10.2021 16:39:25 - Datenbank-Prüfsummen aktualisiert: 404
17.10.2021 16:39:25 - Duplikate: 7’424 (7%) (1.48 GB)
17.10.2021 16:39:25 - Zeitaufwand: 03:53:05
Re: Datenbank verlangsamt Suche
und hier ein erneuter Lauf mit Datenbank:
17.10.2021 16:44:31 - --------------------------------------------------
17.10.2021 16:44:31 - AllDup 4.5
17.10.2021 16:44:31 - Suchmethode: Dateiinhalt
17.10.2021 16:44:31 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 16:44:31 - Option: Datenbank verwenden
17.10.2021 16:44:32 - Dateianzahl: 102’198
17.10.2021 19:46:39 - 5’197 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 19:46:39 - 2’271 Duplikate mit insgesamt 470.14 MB in 'D:\c\Users' gefunden
17.10.2021 19:46:39 - Überprüfte Dateien: 102’208
17.10.2021 19:46:39 - Gruppen: 2’426
17.10.2021 19:46:39 - Dateivergleiche: 5’552’173
17.10.2021 19:46:39 - Prüfsummen erstellt: 597
17.10.2021 19:46:39 - Datenbank-Prüfsummen verwendet: 76’956
17.10.2021 19:46:39 - Datenbank-Prüfsummen gespeichert: 475
17.10.2021 19:46:39 - Datenbank-Prüfsummen aktualisiert: 122
17.10.2021 19:46:39 - Duplikate: 7’468 (7%) (1.48 GB)
17.10.2021 19:46:39 - Zeitaufwand: 03:02:08
Wieder über 3h, zwar etwas schneller als vorher aber immer noch weit langsamer als ohne Datenbank.
17.10.2021 16:44:31 - --------------------------------------------------
17.10.2021 16:44:31 - AllDup 4.5
17.10.2021 16:44:31 - Suchmethode: Dateiinhalt
17.10.2021 16:44:31 - Vergleichsmethode: SHA-1 (160-Bit)
17.10.2021 16:44:31 - Option: Datenbank verwenden
17.10.2021 16:44:32 - Dateianzahl: 102’198
17.10.2021 19:46:39 - 5’197 Duplikate mit insgesamt 1.02 GB in 'C:\Users\JJ\AppData' gefunden
17.10.2021 19:46:39 - 2’271 Duplikate mit insgesamt 470.14 MB in 'D:\c\Users' gefunden
17.10.2021 19:46:39 - Überprüfte Dateien: 102’208
17.10.2021 19:46:39 - Gruppen: 2’426
17.10.2021 19:46:39 - Dateivergleiche: 5’552’173
17.10.2021 19:46:39 - Prüfsummen erstellt: 597
17.10.2021 19:46:39 - Datenbank-Prüfsummen verwendet: 76’956
17.10.2021 19:46:39 - Datenbank-Prüfsummen gespeichert: 475
17.10.2021 19:46:39 - Datenbank-Prüfsummen aktualisiert: 122
17.10.2021 19:46:39 - Duplikate: 7’468 (7%) (1.48 GB)
17.10.2021 19:46:39 - Zeitaufwand: 03:02:08
Wieder über 3h, zwar etwas schneller als vorher aber immer noch weit langsamer als ohne Datenbank.
-
- Site Admin
- Posts: 4050
- Joined: 04 Oct 2004, 18:38
- Location: Thailand
- Contact:
Re: Datenbank verlangsamt Suche
Nach unseren bisherigen Erfahrungen ist die Performance bei der Nutzung der neuen Datenbank-Funktion leider davon abhängig welche Dateien überprüft werden.
Bei vielen "kleinen" Dateien ist die Erstellung der Prüfsumme meistens schneller, als die Prüfsumme aus der Datenbank zu ermitteln.
Aktuell kann man nur empfehlen die Datenbank nur bei relativ "großen" Dateien zu nutzen, da dort der Zeitaufwand für die Erstellung der Prüfsumme größer ist als der Zeitaufwand für die Datenbank-Abfrage.
Eine objektive Analyse hierfür ist leider schwierig, da dies immer von diversen verschiedenen Kritierien abhängig ist, wie z.B. CPU-Typ, RAM, Art des Speichermediums, Art der Formatierung des Speichermediums, Netzwerk/Lokal, usw.
Wir versuchen natürlich auch weiterhin die DB-Abfragen und das Speichern in die DB zu optimieren, mit dem Ziel, dass die Nutzung der DB in allen Szenarien vorteilhafter ist, bisher aber leider ohne nennenswerte Erfolge.
Ein komplett anderer Lösungsansatz als die Verwendung einer DB wäre das Speichern der Prüfsumme als Datenstream direkt mit der Datei.
Hierfür muss dann aber zuerst getestet werden, wie schnell dieser Datenstream gespeichert und wieder ausgelesen werden kann.
Dies wäre dann aber nur auf Partitionen möglich welche mit NTFS formatiert sind.
Außerdem können dann keine Dateien mehr aus Archiven berücksichtigt werden, was aktuell mit der DB möglich ist.
Bei vielen "kleinen" Dateien ist die Erstellung der Prüfsumme meistens schneller, als die Prüfsumme aus der Datenbank zu ermitteln.
Aktuell kann man nur empfehlen die Datenbank nur bei relativ "großen" Dateien zu nutzen, da dort der Zeitaufwand für die Erstellung der Prüfsumme größer ist als der Zeitaufwand für die Datenbank-Abfrage.
Eine objektive Analyse hierfür ist leider schwierig, da dies immer von diversen verschiedenen Kritierien abhängig ist, wie z.B. CPU-Typ, RAM, Art des Speichermediums, Art der Formatierung des Speichermediums, Netzwerk/Lokal, usw.
Wir versuchen natürlich auch weiterhin die DB-Abfragen und das Speichern in die DB zu optimieren, mit dem Ziel, dass die Nutzung der DB in allen Szenarien vorteilhafter ist, bisher aber leider ohne nennenswerte Erfolge.
Ein komplett anderer Lösungsansatz als die Verwendung einer DB wäre das Speichern der Prüfsumme als Datenstream direkt mit der Datei.
Hierfür muss dann aber zuerst getestet werden, wie schnell dieser Datenstream gespeichert und wieder ausgelesen werden kann.
Dies wäre dann aber nur auf Partitionen möglich welche mit NTFS formatiert sind.
Außerdem können dann keine Dateien mehr aus Archiven berücksichtigt werden, was aktuell mit der DB möglich ist.
-
- Site Admin
- Posts: 4050
- Joined: 04 Oct 2004, 18:38
- Location: Thailand
- Contact:
Re: Datenbank verlangsamt Suche
Nach diversen Tests und weiteren Optimierungen konnten wir endlich den Vorgang beschleunigen:
Quelle 1: C:\Program Files (x86)
Quelle 2: D:\Program Files (x86)
Quelle 1: SSD
Quelle 2: externe USB-Festplatte
Quelle1 wurde 1:1 auf D: kopiert
Suche nach Dateiinhalt mit SHA160
Dateianzahl insgesamt: 156.824
Datengröße insgesamt: 21,20 GB
1. Suchlauf ohne DB: 11m40s
2. Suchlauf mit DB (leer): 15m44s
3. Suchlauf mit DB (voll): 08m46s
Bei dem 1. Suchlauf wurde von jeder Datei eine Prüfsumme erstellt.
Bei dem 2. Suchlauf wurde von jeder Datei eine Prüfsumme erstellt und in der DB gespeichert.
Bei dem 3. Suchlauf wurden keine Prüfsummen erstellt und nur die Prüfsummen aus der DB verwendet.
Sollen wir Ihnen ein Update zum testen zukommen lassen?
Quelle 1: C:\Program Files (x86)
Quelle 2: D:\Program Files (x86)
Quelle 1: SSD
Quelle 2: externe USB-Festplatte
Quelle1 wurde 1:1 auf D: kopiert
Suche nach Dateiinhalt mit SHA160
Dateianzahl insgesamt: 156.824
Datengröße insgesamt: 21,20 GB
1. Suchlauf ohne DB: 11m40s
2. Suchlauf mit DB (leer): 15m44s
3. Suchlauf mit DB (voll): 08m46s
Bei dem 1. Suchlauf wurde von jeder Datei eine Prüfsumme erstellt.
Bei dem 2. Suchlauf wurde von jeder Datei eine Prüfsumme erstellt und in der DB gespeichert.
Bei dem 3. Suchlauf wurden keine Prüfsummen erstellt und nur die Prüfsummen aus der DB verwendet.
Sollen wir Ihnen ein Update zum testen zukommen lassen?
-
- Site Admin
- Posts: 4050
- Joined: 04 Oct 2004, 18:38
- Location: Thailand
- Contact:
Re: Datenbank verlangsamt Suche
Noch ein weiteres positives Testergebnis, diesmal mit der Suchmethode "Ähnliche Bilder":
1. Suchlauf ohne DB: 3m46s
2. Suchlauf mit DB (leer): 3m45s
3. Suchlauf mit DB (voll): 2m42s
Bei den Suchläufen wurden die gleichen Daten wie zuvor verwendet.
1. Suchlauf ohne DB: 3m46s
2. Suchlauf mit DB (leer): 3m45s
3. Suchlauf mit DB (voll): 2m42s
Bei den Suchläufen wurden die gleichen Daten wie zuvor verwendet.
Re: Datenbank verlangsamt Suche
Das klingt doch vielversprechend. Herzlichen Dank. Ist das mit Version 4.5 oder eine Beta?
Ich habe hier noch Daten mit der Beta 4.4.62
Mit Datenbank:
18.10.2021 13:19:36 - AllDup 4.4.62 [BETA]
18.10.2021 13:20:17 - Database checksums used: 1’093
18.10.2021 13:20:17 - Database checksums stored: 2
18.10.2021 13:20:17 - Duplicates: 26 (0%) (35.00 MB)
18.10.2021 13:20:17 - Elapsed time: 00:00:41
Ohne Datenbank
18.10.2021 13:20:32 - AllDup 4.4.62 [BETA]
18.10.2021 13:20:32 - Search method: File content
18.10.2021 13:20:42 - File comparison count: 1’357
18.10.2021 13:20:42 - Checksums created: 1’095
18.10.2021 13:20:42 - Duplicates: 26 (0%) (35.00 MB)
18.10.2021 13:20:42 - Elapsed time: 00:00:10
Scheint mir seltsam, dass eine Datenbankquery langsamer sein soll als die gesamte Datei zu laden und die Prüfsumme neu zu berechnen. Evtl ist mit den Datenbankschema oder Datenbankengine etwas faul...
Ich habe hier noch Daten mit der Beta 4.4.62
Mit Datenbank:
18.10.2021 13:19:36 - AllDup 4.4.62 [BETA]
18.10.2021 13:20:17 - Database checksums used: 1’093
18.10.2021 13:20:17 - Database checksums stored: 2
18.10.2021 13:20:17 - Duplicates: 26 (0%) (35.00 MB)
18.10.2021 13:20:17 - Elapsed time: 00:00:41
Ohne Datenbank
18.10.2021 13:20:32 - AllDup 4.4.62 [BETA]
18.10.2021 13:20:32 - Search method: File content
18.10.2021 13:20:42 - File comparison count: 1’357
18.10.2021 13:20:42 - Checksums created: 1’095
18.10.2021 13:20:42 - Duplicates: 26 (0%) (35.00 MB)
18.10.2021 13:20:42 - Elapsed time: 00:00:10
Scheint mir seltsam, dass eine Datenbankquery langsamer sein soll als die gesamte Datei zu laden und die Prüfsumme neu zu berechnen. Evtl ist mit den Datenbankschema oder Datenbankengine etwas faul...
Re: Datenbank verlangsamt Suche
Prima, habe 4.5.1 ausprobiert und ist sagenhaft besser.
Ohne DBS 4.5 dauerte es 8m22s
mit DBS 4.5 war es 3h53m05s (Datenbank ohne allen Prüfsummen)
mit DBS 4.5 war es 3h002m08s (Datenbank mit allen Prüfsummen)
mit DBS 4.5.1 war es 1m07s (Datenbank mit allen Prüfsummen)
d.h. 8x schneller mit DBS gegenüber ohne und sage und schreibe 163x schneller als mit V4.5
Danke!!!!
Ohne DBS 4.5 dauerte es 8m22s
mit DBS 4.5 war es 3h53m05s (Datenbank ohne allen Prüfsummen)
mit DBS 4.5 war es 3h002m08s (Datenbank mit allen Prüfsummen)
mit DBS 4.5.1 war es 1m07s (Datenbank mit allen Prüfsummen)
d.h. 8x schneller mit DBS gegenüber ohne und sage und schreibe 163x schneller als mit V4.5
Danke!!!!
-
- Site Admin
- Posts: 4050
- Joined: 04 Oct 2004, 18:38
- Location: Thailand
- Contact:
Re: Datenbank verlangsamt Suche
Danke für den Test!
Dann wird es heute noch ein offizielles Update geben damit auch alle anderen Anwender die bessere Performance genießen können.
Dann wird es heute noch ein offizielles Update geben damit auch alle anderen Anwender die bessere Performance genießen können.