[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte

Hybrid View

  1. #1
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Man(n) müsste sich den Zugriffsplan anschauen den die DB derzeit verwendet.
    Du kannst dir im Navigator mit Rechts-Klick auf "Datenbanken" den Job anschauen der die Abfrage durchführt --> dann Details --> und auf Visual Explain.

    Dann könntest du vielleicht erkennen warum er diese Reihenfolge vorschlägt.

    Alles was > ein paar Sekunden und überhaupt bei über 1 Stunde braucht, liegt das Problem entweder an der Abfrage selbst.
    Oder an gewissen Datenbankeinstellungen (SRTSEQ=*HEX?, QAQQINI, Logische File im FROM statt Phyische usw.)

    Und was MQTs betrifft ist es so wie Obv gesagt hat.
    Nur dass es derzeit auf der IBM i noch nicht möglich ist ein automatisches Refresh zu machen. Das gibt es nur bei DB2 LUW.
    MQTs sind optimal, wenn die benötigten Daten auch ein paar Stunden oder Minuten alt sein dürfen.
    Du kannst sie sowohl über eine als auch mehrere Tabellen anlegen.
    Damit verlagerst du die Zeit für das Sammeln der Daten auf einen eigenen JOB der je nach Interval die Vorselektion startet.

  2. #2
    Registriert seit
    Jul 2011
    Beiträge
    14
    Nur dass es derzeit auf der IBM i noch nicht möglich ist ein automatisches Refresh zu machen.
    REFRESH IMMEDIATE funktioniert nicht?

  3. #3
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Ok,
    die Leitung zum Kunden war eben weg, das Statement ist abgebrochen.

    also hab ich es in eine Source kopiert,
    create table davor, with data dahinter und einen runsqlstm submittet.
    nach 4 Minuten hatte ich eine richtig gefüllte datei!!!

    also strsql
    select ... group ...

    Nix geht, aber auch gar nix .
    Ich verstehe das nicht.

    Die analyse mit v.expl. werd ich versuchen (einmal hab ich das ja schon für ein anderes prob. gemacht ... )

    @Dieter
    die geforderten indices kann (darf) ich nicht 'mal eben' anlegen.
    Der Grund warum er die existierenden Pfade nicht nimmt ist lt Joblog: dauer zu lange
    Order by werd ich versuchen, dachte das macht sql automatisch intern bei group by. die key1, 2, 3 Felder sind übrigens nicht die group Felder)
    @glaskugel
    ja das kenn ich, meine ist auch dauern defekt.

    danke und Gruß
    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  4. #4
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Wenn es im Batch schneller läuft, schau dir die Einstellungen im STRSQL an.
    Sortierfolge . . . . . . . . . *HEX
    Datenkopie zulässig . . . . . *YES

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Zitat Zitat von andreaspr@aon.at Beitrag anzeigen
    Wenn es im Batch schneller läuft, schau dir die Einstellungen im STRSQL an.
    Sortierfolge . . . . . . . . . *HEX
    Datenkopie zulässig . . . . . *YES
    Steht beides so, das ist es also nicht.
    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  6. #6
    Registriert seit
    Jul 2011
    Beiträge
    14
    versuch es doch so

    Code:
    CREATE TABLE MQT2          
    AS (
    select statement
    ) DATA INITIALLY IMMEDIATE  REFRESH DEFERRED  
    ENABLE QUERY OPTIMIZATION MAINTAINED BY USER
    
    ...
     
     
     refresh table MQT2
    
    ...
    
    SELECT Sp1, ... FROM  MQT2 WHERE ... GROUP BY Sp1 ...

  7. #7
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von Obv Beitrag anzeigen
    Code:
    CREATE TABLE MQT2          AS (
    select statement
    ) DATA INITIALLY IMMEDIATE  REFRESH DEFERRED  ENABLE QUERY OPTIMIZATION MAINTAINED BY USER
    Das DATA INITIALLY IMMEDIATE führt quasi gleich nach dem CREATE TABLE auch gleich das REFRESH TABLE aus.

  8. #8
    Registriert seit
    Jul 2011
    Beiträge
    14
    ich war jetzt komplett bei deferred
    das refresh table nachher ist also hinfällig.

  9. #9
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von Robi Beitrag anzeigen
    Steht beides so, das ist es also nicht.
    Du musst die beiden Umgebungen komplett miteinander vergleichen. Irgendeinen Unterschied gibt es sicher.

    lg Andreas

  10. #10
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Hi,
    wie vergleiche ich das den?
    Interaktiv ist klar, F13 und 1,
    Aber batch?

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  11. #11
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    DB Monitor und dann Visual Explain (bei beiden Varianten).
    Dort siehst du auch noch mehr als im Debug oder beim STRSQL F13.
    Oder
    Du kannst dir im Navigator mit Rechts-Klick auf "Datenbanken" den Job anschauen der die Abfrage durchführt --> dann Details --> und auf Visual Explain.

  12. #12
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    und was ich dann sehe, ist das, was bei

    sbmjob cmd(runsqlstm ...) verwendet wird ?

    ok, ich versuchs

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

Similar Threads

  1. zu viele Indices bei ODBC zugriff
    By ILEMax in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 20-03-12, 10:24
  2. Query mit Eingangsfolge
    By Frank Ziegler in forum IBM i Hauptforum
    Antworten: 14
    Letzter Beitrag: 10-12-06, 10:21
  3. Index statt LF-was bedeutet das?
    By deni87991 in forum IBM i Hauptforum
    Antworten: 21
    Letzter Beitrag: 07-08-06, 16:42
  4. SQL-View Systemname
    By HPKahn in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 17-05-06, 20:22
  5. Ferne SQL Analyse / Performance
    By pwrdwnsys in forum IBM i Hauptforum
    Antworten: 10
    Letzter Beitrag: 16-08-05, 08:56

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •