Minu arvates võiks alustada sellest, et õppida kirjutama mitte-ebaefektiivseid päringuid (lihtsustamata tingimused, üleliigsete tabelite lugemine, samade andmete mitmekordne lugemine jne). Selleks, et detektiivina lausete aeglase täitmise põhjuste jälgi ajada, tuleb aru saada täitmisplaanis kasutatavatest operatsioonidest.
Päringute optimeerimisest üldiselt kirjutatakse SIIN.
Ebaefektiivsetest päringutest kirjutatakse SIIN (materjal "Andmebaasid I" kodulehel - kasutajanimi SIS2 ja parool SIS2).
PostgreSQL füüsilistes täitmisplaanides kajastuvad operatsioonid (lihtsad ja lühikesed seletused):
- https://www.vertabelo.com/blog/technical-articles/understanding-execution-plans-in-postgresql
- Erinevat tüüpi operatsioonid täitmisplaanides:
- https://pganalyze.com/docs/explain/scan-nodes
- https://pganalyze.com/docs/explain/join-nodes
- https://pganalyze.com/docs/explain/other-nodes
- https://use-the-index-luke.com/sql/explain-plan/postgresql/operations
- https://www.cybertec-postgresql.com/en/join-strategies-and-performance-in-postgresql/
Veel märkmeid: https://gist.github.com/hgmnz/883144
Võimalikud vahendid tekstiliselt esitatud täitmisplaanide paremaks struktureerimiseks ja visualiseerimiseks:
- See vahend soovib sisendiks saada päringu täitmisplaani JSON formaadis. Seda saab andmebaasisüsteemilt küsida nii: EXPLAIN (FORMAT JSON) SELECT ...;
Hinda postitust:
Keskmine hinne : Pole veel hinnanguid!