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

Hybrid View

  1. #1
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Ich glaub die IBM wird sich diese Werte nicht aus den Fingern herbeigezogen haben
    Bei einem Sort wird natürlich, wenn vorhanden, ein Index benützt!

    Der Performance-Nachteil (außer bei einem Index-Only-Access) ist, dass bei einem Index für die Werte der Spalte der Baum von Oben bis Unten durchgegangen werden muss. Und wenn die DB dann den entsprechenden Wert am Ende des Baumes hat muss sowieso nochmal zusätzlich auf die entsprechende Stelle in der Tabelle zugegriffen werden um sich den ganzen Satz zu holen.
    Wenn also sowieso ein sehr großer Teil der Daten benötigt wird, kann die DB gleich die eigentliche Tabelle lesen gehen und braucht nicht ständig hin und her springen.

    Wenn man sich diesen Prozess auf Blockebene ansieht und sieht wann, was, wie, wohin gelesen werden muss ist es einfacher.
    Nebenbei: bei Oracle ist es nicht anders.

    lg Andreas

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.945
    Eins kannst Du glauben, die Schätzwerte beruhen auf Erfahrungswerten.

    Begingt durch die Baum-Struktur sind Zugriffe mit (Binary Radix Tree) Indices bei größerem Datenvolumen zu langsam.
    Der Optimizer kann jedoch für eine einzige Abfrage mehrere Indices gleichzeitig und auch sub-optimale Indices verwenden und die Ergebnisse in Bitmaps zwischenspeichern und die Bitmaps angschließend auswerten.

    Eine Sortierung ist keine Voraussetzung für die Verwendung eines Idices. Die Sortierung ist das letzte Kriterium, das bei der Optimierung herangezogen wird. Das Hauptziel ist es so schnell wie möglich an die Daten zu kommen. Da ist es manchmal geschickter Informationen in temporären Objekten zwischen zu speichern und erst am Schlusse das Zwischen-Ergebnis zu sortieren.

    IBM hat allerdings nachgearbeitet, indem sie EVIs (Encoded Vector Indicses) zur Verfügung gestellt hat, die jedoch entweder ignoriert oder als Lachnummer abgetan werden.
    Sofern die passenden EVIs vorhanden sind, können diese verwendet werden sofern zw. ca. 20 und 80% der Daten ausgewählt werden.

    ... ansonsten ist die Optimierung halt doch noch ein bisschen komplexer.

    @Baldur: Wenn der Index passt, warum nimmt Du dann nicht native I/O, der verwendet die angegebene logische Datei oder SQL Index ohne Wenn-und-Aber.

    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

Similar Threads

  1. V5R4 -> V7R1, Problem mit Trigger-Programmen
    By programmer400 in forum NEWSboard Programmierung
    Antworten: 13
    Letzter Beitrag: 03-12-13, 15:19
  2. QNTC ist leer auf neuer AS400 (V7R1)
    By mott in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 20-11-13, 15:08
  3. neue Maschine, V7R1, IFS
    By programmer400 in forum IBM i Hauptforum
    Antworten: 16
    Letzter Beitrag: 19-11-13, 12:05
  4. Euro-Zeichen und kein Ende
    By Herbert Schmidt in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 16-11-01, 01:26
  5. AS/400 Mod. 170 #2385 per Ende 3/2001 zvk!!!
    By tomski in forum NEWSboard Server & Hardware Markt
    Antworten: 1
    Letzter Beitrag: 05-03-01, 16:00

Berechtigungen

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