Wcześniej dzisiaj pracowałem z programistą nad zapytaniem, które miało słabą wydajność. To zapytanie było obszerne i złożone i początkowo wydawało się, że zniechęcający wysiłek, aby dowiedzieć się, gdzie leży problem z wydajnością. W przypadku planu wyjaśniania możemy czasami wykorzystać koszty, aby zawęzić problem związany z wydajnością dużego, złożonego zapytania.
Patrząc na plan wyjaśnienia tego zapytania, widzimy, że jego całkowity koszt jest dość wysoki.
Patrząc na szczegóły, widzimy, że pełne skanowanie tabeli (FTS) w tabeli DETAIL_RECORD ma wysoki koszt 51018. Zwróć uwagę, jak wysoki koszt FTS przenosi się na plan. Wszystkie operacje powyżej tego FTS wiążą się z wysokimi kosztami ze względu na wysoki koszt dostępu do jednej tabeli. Dostęp do tabeli CIMS_POLICIES_TO_PROCESS ma stosunkowo niski koszt, ale operacja HASH JOIN jest kosztowna tylko ze względu na wysoki koszt dostępu do tabeli DETAIL_RECORD.
Całkowity koszt to tylko trochę więcej niż koszt dostępu do tej tabeli. Oczywiste jest, że FTS w tej tabeli ma największy udział w problemie analizowanego zapytania.
Patrząc w ten sposób na koszty planu wyjaśniania, byliśmy w stanie bardzo szybko skoncentrować się na jednym obszarze bardzo złożonego zapytania, który powoduje największe problemy z wydajnością. Bez przeprowadzonej tutaj analizy kosztów określenie, która część poniższego zapytania powoduje problem, wymagałoby dużo pracy.