Wzdrygam się, gdy widzę komentarze, że pełne skanowanie tabel jest złe, a dostęp do indeksu dobry. Pełne skanowanie tabel, skanowanie zakresu indeksów, szybkie pełne skanowanie indeksów, pętle zagnieżdżone, złącze scalające, złączenia haszujące itp. to po prostu mechanizmy dostępu, które analityk musi zrozumieć i połączyć ze znajomością struktury bazy danych i celu zapytania w aby dojść do jakiegokolwiek sensownego wniosku.
Pełne skanowanie jest po prostu najskuteczniejszym sposobem odczytywania dużej części bloków segmentu danych (tabeli lub (pod)partycji tabeli) i chociaż często może wskazywać na problem z wydajnością, to tylko w kontekście czy jest to skuteczny mechanizm do osiągnięcia celów zapytania. Mówiąc jako hurtownik danych i facet od BI, moją flagą ostrzegawczą numer jeden dotyczącą wydajności jest metoda dostępu oparta na indeksie i zagnieżdżona pętla.
Tak więc dla mechanizmu czytania planu wyjaśnień dobrym przewodnikiem jest dokumentacja Oracle:http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/ex_plan.htm#PFGRF009
Zapoznaj się również z przewodnikiem dotyczącym dostrajania wydajności.
Miej także google dla „informacji o kardynalności”, techniki, w której plan wyjaśniania może być użyty do porównania oszacowań kardynalności na różnych etapach zapytania z rzeczywistymi kardynałami doświadczanymi podczas wykonywania. Uważam, że Wolfgang Breitling jest autorem metody.
Podsumowując:zrozum mechanizmy dostępu. Zrozum bazę danych. Zrozum intencję zapytania. Unikaj praktycznych zasad.