Domino 9 und frühere Versionen > Entwicklung
Größere Datenimport
ata:
... Ich hätte einen ähnlichen Ansatz wie Doc Torte, mit zwei Arrays...
... im ersten Array wird die Kontonummer erfasst, im zweiten die dazugehörige DocID. Mit ArraygetIndex prüfe ich, ob in Array 1 die Kontonummer vorhanden ist, wenn ja erhalte ich den Index. Mit diesem Index hole ich aus Array 2 die DocID...
ata
wflamme:
Vorsortierung ist sicher empfehlenswert.
Habe auch feststellen müssen, daß die Erweiterung des physikalischen Files beim Import viel Zeit kostet. Notes scheint immer einen Chunk an Platz für neue Docs zu reservieren (dauert lange), der eigentliche Import geht dann recht flott.
Hatte mir mal in einer frühen R5-Version (vor R5.0.2c) so beholfen, daß ich ein Doc mit *Riesenattachment* anlegte, nur um es gleich darauf wieder rauszuwerfen und den auf einen Ruck gewonenen physikalischen Platz dann mit tausenden einfacher Records zu füllen. Das dauerte trotz des Overheads weniger als halb so lange wie das kontinuierliche Schreiben.
Einen Versuch ist's jedenfalls wert.
Rob Green:
:o
WOW
!!! danke für die vielen genialen Tips !!! :) :) :)
*grins* ist ja wie im Schlaraffenland...
Das was ich letzten Endes erreichen will, daß das Notes angesteuerte Importsystem auf Basis 12 vorhandener CSV Dateien die Daten userfreundlich und zügig einliest. Die Trennung in 12 CSV Dateien wird auf lange Sicht bleiben, auch der Aufbau. In jeder CSV Datei sind die Kontonummern aufsteigend sortiert, wobei pro Kontonummer in einem CSV Datensatz ca. 1-6 Datensätze gleicher KtoNr. untereinander stehen. Daher werde ich wohl dem Vorschlag von DocTorte und ata wählen, der mir in diesem Falle am effizientesten bzgl. meiner Ausgangslage erscheint und zusätzlich wflammes "vorbereitendes" Megadoc.
Doc Torte:
... ist doch schön, wenn man helfen konnte...
Performance:
- ich kann nur empfehlen bei Import von Datensätzen die über 50k gehen ein C-API Programm im batch ablaufen zu lassen - das ist wirklich die effektivste Lösung.
Ich habe auch vorher mit Skript imports gemacht von 100k Sätzen mit update und suchen und speichern usw. - der Agent lief nachts trotzdem 4 Stunden --> dann habe ich alles in C-API gemacht und das Resultat waren 20 Minuten.
Performance ist nicht alles aber ohne Performance ist alles nichst.
;D ;D ;D
cu
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln