-
SQL Performance bei Aggregatfunktion
Guten Morgen,
wir müssen vor dem Schreiben von Datensätzen eine laufende Nr. für den neuen Datensatz vergeben. Es geht nicht um eine eindeutige laufende Nr. in der Datei, sondern um eine laufende Nr. pro "Auftrag". Das haben wir mit folgendem SQL umgesetzt:
select max(sp_sparaid) into :newNr
from idmspara where sp_se_rec = 107275170;
Die Datei ist natürlich nach sp_se_rec und sp_sparaid indiziert. Tabelle und Index sind mit SQL erstellt worden.
Wir haben festgestellt, dass das Ermitteln einer neuen Nr. ziemlich lange dauert. In einem Programm haben wir das Verfahren auf nativen RPG-Zugriff umgestellt (SETGT, READPE). Das geht dramatisch schneller (ca. Faktor 100).
Wenn wir Visual Explain richtig verstehen, generiert das SQL-Statement jedesmal eine temporäre Liste (manchmal mit allen Datensätzen der Tabelle). Ich vermute mal, dass SQL mit dem Erzeugen einer Kopie der Daten die Konsistenz der Daten sicherstellen will. Das wäre in unserem Fall aber nicht nötig. Ich weiß, dass keine Sätze (unter dem Schlüssel sp_se_rec) in die Datei geschrieben werden, solange das SQL-Statement läuft. Kann ich SQL irgenwie sagen, dass es auf das Kopieren der Daten verzichten soll?
Zur Klarstellung: Wenn ich eben von langer Ausführungszeit geschrieben haben, bewegen wir uns natürlich immer noch im Millisekundenbereich. Aber da extrem viele Sätze in sehr kurzer Zeit geschrieben werden, machen auch ein paar Millisekunden große zeitliche Probleme.
Gruß,
Dieter
Similar Threads
-
By christian_lettner in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 16-11-06, 10:15
-
By mariupol1963 in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 11-08-06, 13:06
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By pwrdwnsys in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 16-08-05, 08:56
-
By itec01 in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 16-09-04, 18:38
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks