Scanări prin index
Prietenul tău locuiește în Hawaii, unde smogul vulcanic îi agravează astmul. Îl ajuți să identifice noi locuri de trai, folosind datele privind calitatea aerului la nivel de județ de la Agenția pentru Protecția Mediului. Ai decis că noua lui locuință trebuie să aibă o calitate bună a aerului cel puțin 90% din zile.
Știi că există foarte multe județe în SUA și că tabelul cu calitatea aerului este mare. Prima ta interogare (care nu este afișată) a efectuat o scanare secvențială și a durat mult timp.
Decizi să adaugi un index pe coloana care urmărește numărul de zile cu calitate bună a aerului. Analizează planul de interogare și observă tipul de scanare utilizat.
Acest exercițiu face parte din cursul
Îmbunătățirea performanței interogărilor în PostgreSQL
Instrucțiuni pentru exercițiu
- Creează un index pentru tabelul
annual_aqifolosind coloanagood. - Include doar rezultatele cu calitate
gooda aerului cel puțin 90% din an. - Concentrează-te pe anii recenți, limitând
aqi_yearla 2017 și 2018.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
CREATE INDEX good_index
ON ___(___);
EXPLAIN
SELECT state_name, county_name, aqi_year, good
FROM annual_aqi
WHERE ___ > 327 -- 90% of the year
AND ___ IN (___,___);