Article View: pl.comp.bazy-danych
Article #195578Re: PostgreSQL - jak interpretować explain w celu diagnostyki?
From: Roman Tyczka
Date: Thu, 05 Apr 2018 10:37
Date: Thu, 05 Apr 2018 10:37
29 lines
2232 bytes
2232 bytes
On Wed, 4 Apr 2018 20:53:53 +0200, Marek S wrote: > Miałem właśnie przypadek dość złożonego zapytania SQL. Select pracował > ze 20 minut. Próbowałem zapuścić Explain na tym zapytaniu w PGadminie. > Powstały jakieś blokowe schemaciki zawierające dane jak koszt itp. > Szczerze mówiąc - nie mam bladego pojęcia jak z tego wyciągnąć > jakiekolwiek wnioski i ustalić przyczynę, dla której zapytanie tyle > czasu wykonywało się. Faktem jest, że rekordów było kilkaset tysięcy, > parę Joinów i innych konstrukcji multiplikujących tę ilość. > > Poddałem się z Explainem. Podzieliłem zapytanie na mniejsze fragmenty by > odszukać winowajcę. Tak namierzyłem tabelę, w której ktoś... nie założył > indeksów na klucze obce... Czas realizacji po ich założeniu: 0.5s. > > Patrzę na Explaina dla wersji z indeksami i szczerze mówiąc nie widzę > jakiś różnic a w czasie wykonywania jest ogromna. > > Czytałem instrukcję do bazy na w/w temat. Opis jest taki jakby sami > twórcy nie bardzo wiedzieli co z tym zrobić praktycznego. > > A może nie tak diagnostyka powinna wyglądać? Na 100% wynik explaina był inny przed i po indeksach. Usuń indeks, jeszcze raz zrób explain (ale z klauzulą analyze) i pokaż plan. -- pozdrawiam Roman Tyczka
Technical Details
Message-ID:
<uqkh15wtivwn.dlg@tyczka.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<pa3703$ucp$1@node2.news.atman.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail From: Roman Tyczka <noemail@because.no> Subject: Re: PostgreSQL - jak interpretować explain w celu diagnostyki? Newsgroups: pl.comp.bazy-danych User-Agent: 40tude_Dialog/2.0.15.84 MIME-Version: 1.0 Sender: romek@tyczka.no.found References: <pa3703$ucp$1@node2.news.atman.pl> Date: Thu, 5 Apr 2018 12:37:43 +0200 Message-ID: <uqkh15wtivwn.dlg@tyczka.com> Lines: 29 Organization: Telekomunikacja Polska NNTP-Posting-Host: 94.75.90.137 X-Trace: 1522924663 unt-rea-a-02.news.neostrada.pl 990 94.75.90.137:9514 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit