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

Thema: Index Advisor

Hybrid View

  1. #1
    Registriert seit
    Aug 2006
    Beiträge
    2.114

    Index Advisor

    Hallo *all,

    wir hatten ja zuletzt das Thema Navigator und Index Advisor.
    Ich schaue mir ds Teil auch regelmäßig an, habe aber jetzt festegestellt das er z.B. bei Aktiv Jobs ein idx-arusta03jn anzeigt, im Advisor aber dazu nichts sagt. Müßte das Teil dort dann nicht mit einem Vorschlag auftauchen?

    GG

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Zitat Zitat von KingofKning Beitrag anzeigen
    Hallo *all,

    wir hatten ja zuletzt das Thema Navigator und Index Advisor.
    Ich schaue mir ds Teil auch regelmäßig an, habe aber jetzt festegestellt das er z.B. bei Aktiv Jobs ein idx-arusta03jn anzeigt, im Advisor aber dazu nichts sagt. Müßte das Teil dort dann nicht mit einem Vorschlag auftauchen?

    GG
    Dem Namen nach zu urteilen ist arusta03jn ein vorhandener Index oder eine vorhandene logische Datei, die verwendet wird.

    Im Index-Advisor bzw. in der Datei SYSIXADV werden seit der Installation von Release V5R3? (oder V5R4) alle Index-Vorschläge der beiden Query Engines (CQE und SQE) gesammelt. Ebenso werden die MTI (Maintained Temporary Indexes), die von der SQE erstellt wurden in dieser Tabelle geführt.

    Die Datei SYSIXADV wird nicht automatisch bereinigt, d.h. selbst wenn Du einen vorgeschlagenen Index erstellst, wird der Eintrag nicht automatisch gelöscht. Der Anwender/Programmierer muss dies selbst vornehmen.

    Wenn Du bislang noch keine Hand an den systemweiten Index-Advisor gelegt hast, würde ich vorschlagen zunächst alle Einträge aus dieser Datei zu entfernen und neu auflaufen zu lassen. In einigen Tagen oder Wochen kannst Du dann die Einträge prüfen und die Entscheidung treffen, ob entsprechende Indices angelegt werden oder ob lediglich die Einträge aus dem Advisor entfernt werden.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  3. #3
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Hallo Birgitta,

    arusta03jn ist eine logische Datei mit einem join auf auf eine andere Datei ohne Key.

    Ich hatte alle Einträge im Advisor gelöscht, es kamen auch schon Vorschläge die ich umgesetzt habe, und anschließend fragt er ja ob er den Vorschlag löschen soll.

    Nur für diese Abfrage hat er mir bisher noch keinen Vorschlag gemacht obwohl ich den Abruf 3 oder 4mal an diesem Tag gemacht habe und er immer wieder mit idx-... im wrkactjob zu sehen war.


    Werde das Ganze mal beobachten.

    GG

  4. #4
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Hallo,

    ich bin eigentlich immer davon ausgegangen, dass im Index Advisor alle Vorschläge angezeigt werden. Jetzt ist mir aufgefallen, dass im Index Advisor nur 60 Einträge vorhanden sind, während in der Datei SYSIXADV über 17000 Sätze drin sind.
    Warum werden die nicht angezeigt?
    Kann ich die 17000 Sätze bedenkenlos löschen?

    Gruß,
    KM

  5. #5
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von KM Beitrag anzeigen
    Jetzt ist mir aufgefallen, dass im Index Advisor nur 60 Einträge vorhanden sind, während in der Datei SYSIXADV über 17000 Sätze drin sind.
    Warum werden die nicht angezeigt?
    Kann ich die 17000 Sätze bedenkenlos löschen?
    Probier mal folgendes:
    Code:
    SELECT count(*)  TABLE_SCHEMA         
    FROM SYSIXADV                         
    WHERE left (TABLE_SCHEMA, 4) <> 'QSYS'
    Der Navigator filtert Vorschläge für System-Objekte aus. (Gott sei dank!)
    Mit der oberen Abfrage solltest du wieder dem sehr nahe kommen.
    Wobei die Einträge in der SYSIXADV nur auf die Vorschläge der Datenbank für den System ASP beinhaltet.
    Die Vorschläge für eingebundene Datenbanken in aderen ASPs sind wieder wo anders.

    lg Andreas

  6. #6
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Man kann auch analysieren was der Navigator macht, indem man einfach einen DB-Monitor nebenbei mitlaufen lässt.
    Hatte noch die SYS% vergessen

    Code:
    INSERT INTO QTEMP.SYSIXADV 
    SELECT * FROM QSYS2.SYSIXADV 
    WHERE TABLE_SCHEMA NOT LIKE 'SYS%' 
    AND TABLE_SCHEMA NOT LIKE 'QSYS%'

  7. #7
    Registriert seit
    Aug 2009
    Beiträge
    121
    Wenn in der WRKACTJOB-Spalte Funktion "IDX-ARUSTA03JN" angezeigt wird, heißt das, dass der Index als Beschreibung zwar vorhanden, in seiner Struktur aber ungültig war und neu aufgebaut werden muss. Die Ursache könnte im Parameter Zugriffspfadwartung (MAINT) der logischen Datei liegen, es kann aber auch andere Gründe haben (z.B., dass die unterliegenden physischen Dateien unmittelbar vor der Operation reorganisiert oder zurückgespeichert wurden).

    Dass der Index-Advisor den Index nicht anzeigt, könnte entweder daran liegen, dass die Indexbeschreibung ja da ist, oder daran, dass auf die Datei nicht über SQL zugegriffen wird. Der Index-Advisor ist Bestandteil der SQL Query Engine und wird nicht benutzt, wenn man ohne SQL (z.B. mit READE aus RPG) auf die Daten zugreift.

    Mit freundlichen Grüßen,
    Christian Bartels.

  8. #8
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Dass der Index-Advisor den Index nicht anzeigt, könnte entweder daran liegen, dass die Indexbeschreibung ja da ist, oder daran, dass auf die Datei nicht über SQL zugegriffen wird. Der Index-Advisor ist Bestandteil der SQL Query Engine und wird nicht benutzt, wenn man ohne SQL (z.B. mit READE aus RPG) auf die Daten zugreift.
    Aber warum sind dann so viele Einträge bei uns in der Datei SYSIXADV vorhanden und werden aber nicht angezeigt?

    Gruß,
    KM

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Wenn man nicht per SQL auf eine Datei zugreift wird nur dann ein Index aufgebaut, wenn
    a) die LF mit Maintanance nicht aktuell ist
    b) eine Join-LF mit DYNSLT definiert ist (hier hilft auch kein fester Index)
    In allen anderen Fällen ist immer SQL der Verursacher.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  10. #10
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Zitat Zitat von Christian Bartels Beitrag anzeigen
    Wenn in der WRKACTJOB-Spalte Funktion "IDX-ARUSTA03JN" angezeigt wird, heißt das, dass der Index als Beschreibung zwar vorhanden, in seiner Struktur aber ungültig war und neu aufgebaut werden muss. Die Ursache könnte im Parameter Zugriffspfadwartung (MAINT) der logischen Datei liegen, es kann aber auch andere Gründe haben (z.B., dass die unterliegenden physischen Dateien unmittelbar vor der Operation reorganisiert oder zurückgespeichert wurden).

    Ich habe die Auswertung in der BI-Software 2 mal hintereinanderlaufen lassen, ohne das irgendwelche Daten verändert wurden. Eigentlich hätte er das auch aus dem Cache erledigen können müßen. Die Daten werden erst im Nachtlauf aktualisiert.

  11. #11
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Probier mal folgendes:
    Code:

    SELECT count(*) TABLE_SCHEMA
    FROM SYSIXADV
    WHERE left (TABLE_SCHEMA, 4) <> 'QSYS'

    Der Navigator filtert Vorschläge für System-Objekte aus. (Gott sei dank!)
    Mit der oberen Abfrage solltest du wieder dem sehr nahe kommen.
    Wobei die Einträge in der SYSIXADV nur auf die Vorschläge der Datenbank für den System ASP beinhaltet.
    Die Vorschläge für eingebundene Datenbanken in aderen ASPs sind wieder wo anders.
    Das hat jetzt nicht viel gebracht. In der Datei SYSIXADV bleiben immer noch über 16000 Sätze übrig. Die meisten betreffen Dateien aus dem IASP. Aber es sind auch einige aus dem System-ASP dabei. Im Index Advisor sind nur 10 Dateien aus dem IASP aufgelistet.

    Gruß,
    KM

  12. #12
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von KM Beitrag anzeigen
    Das hat jetzt nicht viel gebracht. In der Datei SYSIXADV bleiben immer noch über 16000 Sätze übrig. Die meisten betreffen Dateien aus dem IASP. Aber es sind auch einige aus dem System-ASP dabei. Im Index Advisor sind nur 10 Dateien aus dem IASP aufgelistet.
    Wenn du es ganz genau wissen willst, dann versuch es mal mit meinem 2ten Vorschlag und lass den DB Monitor einfach mitlaufen.
    Vielleicht hängt es auch von der Version des Client Access ab!?

Similar Threads

  1. index oder lf
    By jogisarge in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 24-04-09, 21:40
  2. Automatische Index Erstellung unter V6R1
    By cicero22 in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 19-01-09, 13:04
  3. INDEX Testen
    By linguin in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 19-02-08, 10:47
  4. Index absteigend
    By dino in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 03-02-08, 15:37
  5. Index statt LF-was bedeutet das?
    By deni87991 in forum IBM i Hauptforum
    Antworten: 21
    Letzter Beitrag: 07-08-06, 16:42

Berechtigungen

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