Diese Seite wurde maschinell übersetzt. Lesen Sie das englische Original. English

Optimierung von Firebird-Abfragen behandelt, wie SELECT-Anweisungen ausgeführt werden: Pläne, Statistiken, Zugriffsmethoden, Tuning-Muster und wie man langsame Abfragen mit MON$ und der Trace-API erkennt.

Etwa 5-6 Stunden · Englisch · Für Entwickler · Alle Kurse

Lehrplan

  • Leistung von SELECT-Abfragen - wie eine Abfrage ausgeführt wird
    • Client-Server-Ansatz
    • Vorbereitung, Planerstellung, Ausführung, Fetches, Pufferung
  • Ausführungsstatistiken
    • Reads, Writes, Fetches, Zeit
    • Datenbank-Cache, Festplatte, CPU
    • Wie Garbage die Ausführung beeinflusst
    • Cache-Treffer (Classic vs. SuperServer)
  • Zugriffsmethoden / Datenpfade
    • NATURAL-Scan
    • INDEX-Suche: B-Bäume, Datensatzzeiger, Richtung, Beispiele
    • Erzwungene Indexnutzung, Bit-Merge von Indizes
    • Tabellenkardinalität und Index-Selektivität
    • Indizes in WHERE deaktivieren
    • Index ORDER vs. SORT (firebird.conf-Einstellungen)
    • Indizes in ORDER BY / GROUP BY deaktivieren
    • Pläne in gespeicherten Prozeduren und Views
  • Abfrage-Tuning
    • Wie man einen PLAN liest
    • Optimizer-Anpassungen
    • WHERE FIELD IN (…)
    • LIKE, CONTAINING, STARTING WITH
    • JOIN: implizit vs. explizit, schlechte Joins, LEFT/RIGHT, Self-Joins
    • UPDATE + SELECT
    • MAX, MIN, COUNT, AVG, SUM
    • IN vs. EXISTS vs. MERGE
    • WHERE (X AND Y) OR (K AND N)
  • Verfolgung langsamer Abfragen mit MON$ und der Trace-API
    • Was MON$ und Trace sind
    • MON$-Felder, die wichtig sind
    • Trace-API-Parameter und Ausgabe
    • Werkzeuge (einschließlich HQbird-Überwachung)