AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

DbImport hängt sich auf

Ein Thema von blondervolker · begonnen am 12. Aug 2013 · letzter Beitrag vom 14. Aug 2013
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.065 Beiträge
 
Delphi 12 Athens
 
#1

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 16:27
Noch flotter geht meiner Erfahrung nach der Ex- und dann wieder Import über CSV.
Das ist bei uns umgekehrt gewesen. Wir hatten das vorher so gemacht...
Eine Datenbank mit mehreren Millionen Einträgen dauerte so dann aber z.B. Stunden und auch kleinere dauerten relativ lange.

Dann habe ich das ganze auf FireDAC umgestellt und spreche die beiden Datenbanken nun direkt an. Der Import dauert nun statt Stunden mit riesigen temporären Dateien nur noch ca. 20 Minuten. Und unsere kleinren DBs sind innerhalb von wenigen Sekunden durch statt in Minuten.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.689 Beiträge
 
Delphi 2007 Enterprise
 
#2

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 17:47
Wenn von SQL-Dump die Rede ist, verstehe ich das Auswerfen einer SQL-Script Datei mitsamt Tabellendefinitionen und etlichen INSERT-Statements. Mit diesen läuft es bei mir um Größenordungen langsamer als über ein CSV, und das CSV sollte wie gesagt auf dem Server lokal auf der Platte liegen. Damit war ich bisher eigentlich immer schneller als mit fein säuberlich alles einzeln mit einem INSERT einzuträufeln, auch wenn ich mir mit UniDAC fix ein Migrationstöölchen selbst zusammengestrickt habe und direkt von einer DB in die andere geschaufelt.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.065 Beiträge
 
Delphi 12 Athens
 
#3

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 18:50
Damit war ich bisher eigentlich immer schneller als mit fein säuberlich alles einzeln mit einem INSERT einzuträufeln, auch wenn ich mir mit UniDAC fix ein Migrationstöölchen selbst zusammengestrickt habe und direkt von einer DB in die andere geschaufelt.
Ich mache das nicht einzeln, ich bereite immer Häppchen vor und schiebe die dann auf einmal in die DB. FireDAC hat einen entsprechenden Modus, bei dem die Inserts erst gesammelt und dann gesammelt abgeschickt werden.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.689 Beiträge
 
Delphi 2007 Enterprise
 
#4

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 21:38
Klar, das mache ich auch - von Hand - so dass sich nachher etwas ergibt wie INSERT INTO foo (field1, field2, field3) VALUES (0, 1, 2), (3, 4, 5), (6, 7, 8), ... , und das ca. so lang, wie die max-Länge es zuließ. Aber dennoch flitzt mir der CSV-Import davon. Kann ich mangels geeigneter DB bzw. Daten gerade nicht schnell mit Messungen belegen, und auf nicht schnell hab ich grad keine Lust . Fakt ist, dass ich nach Unzufriedenheit mit o.g. Methode nach Alternativen im Netz suchte, und bin dabei eben erst auf CSV gestoßen und fühlte mich glücklicher. Wenn mal Luft ist ne Test-App bauen.
(Bei mir war es übrigens meist MySQL, und ich meine auch mal ein MSSQL so sehr flott gefüttert zu haben.)
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 21:43
Wie stellst Du dann binäre Blobdaten im CSV dar? Hexcodiert?
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#6

AW: DbImport hängt sich auf

  Alt 14. Aug 2013, 11:11
Wenn von SQL-Dump die Rede ist, verstehe ich das Auswerfen einer SQL-Script Datei mitsamt Tabellendefinitionen und etlichen INSERT-Statements. Mit diesen läuft es bei mir um Größenordungen langsamer als über ein CSV, und das CSV sollte wie gesagt auf dem Server lokal auf der Platte liegen. Damit war ich bisher eigentlich immer schneller als mit fein säuberlich alles einzeln mit einem INSERT einzuträufeln, auch wenn ich mir mit UniDAC fix ein Migrationstöölchen selbst zusammengestrickt habe und direkt von einer DB in die andere geschaufelt.
Ich hatte das mal mit OpenStreetMap-Daten getestet, die ja bekanntlich riesig sind: Das Einlesen via Delphi-Code dauerte Tage, via SQL-Dump dagegen nur Stunden.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 02:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz