Deze pagina is automatisch vertaald. Lees het Engelse origineel. English

Optimalisatie van Firebird-queries behandelt hoe SELECT-instructies worden uitgevoerd: plannen, statistieken, toegangsmethoden, afstemmingspatronen en hoe u langzame queries kunt opsporen met MON$ en de Trace API.

Ongeveer 5-6 uur · Engels · Voor ontwikkelaars · Alle cursussen

Syllabus

  • Prestaties van SELECT-queries - hoe een query wordt uitgevoerd
    • Client-serverbenadering
    • Prepare, plangeneratie, uitvoering, fetches, buffering
  • Uitvoeringsstatistieken
    • Reads, writes, fetches, tijd
    • Databasecache, schijf, CPU
    • Hoe garbage de uitvoering beïnvloedt
    • Cachehits (Classic vs SuperServer)
  • Toegangsmethoden / datapaden
    • NATURAL-scan
    • INDEX-zoekopdracht: B-bomen, recordpointers, richting, voorbeelden
    • Geforceerd indexgebruik, bitmerge van indices
    • Tabelcardinaliteit en indexselectiviteit
    • Indices uitschakelen in WHERE
    • Index ORDER vs SORT (firebird.conf-instellingen)
    • Indices uitschakelen in ORDER BY / GROUP BY
    • Plannen in opgeslagen procedures en views
  • Query-afstemming
    • Hoe u een PLAN leest
    • Optimizer-aanpassingen
    • WHERE FIELD IN (…)
    • LIKE, CONTAINING, STARTING WITH
    • JOIN: impliciet vs expliciet, slechte 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)
  • Langzame queries opsporen met MON$ en Trace API
    • Wat MON$ en Trace zijn
    • MON$-velden die ertoe doen
    • Trace API-parameters en uitvoer
    • Tools (inclusief HQbird-monitoring)