Учебное пособие Санкт-Петербург «бхв-петербург»


SET enable_hashjoin = off



Download 1,88 Mb.
Pdf ko'rish
bet233/256
Sana21.02.2022
Hajmi1,88 Mb.
#24505
TuriУчебное пособие
1   ...   229   230   231   232   233   234   235   236   ...   256
Bog'liq
morgunov e p postgresql osnovy yazyka sql

SET enable_hashjoin = off;
Чтобы запретить планировщику использовать метод соединения слиянием, нужно
сделать так:
SET enable_mergejoin = off;
А для того чтобы запретить планировщику использовать соединение методом вло-
женного цикла, нужно сделать так:
SET enable_nestloop = off;
По умолчанию все эти параметры имеют значение on (включено).
Необходимо уточнить, что в результате выполнения вышеприведенных команд не
накладывается полного запрета на использование конкретного метода соединения
наборов строк. Методу просто назначается очень высокая стоимость, но планиров-
щик все равно сохраняет возможность маневра, и даже такой «запрещенный» метод
может быть использован. Более подробно этот вопрос рассматривается в одном из
примеров в разделе «Контрольные вопросы и задания».
305


Глава 10. Повышение производительности
Давайте запретим планировщику использовать метод соединения слиянием:
SET enable_mergejoin = off;
SET
Теперь повторим предыдущий запрос:
EXPLAIN SELECT t.ticket_no,
t.passenger_name,
tf.flight_id,
tf.amount
FROM tickets t
JOIN ticket_flights tf ON t.ticket_no = tf.ticket_no
ORDER BY t.ticket_no;
QUERY PLAN
----------------------------------------------------------------------
Sort (cost=226400.55..229014.87 rows=1045726 width=40)
Sort Key: t.ticket_no
-> Hash Join (cost=16824.49..64658.49 rows=1045726 width=40)
Hash Cond: (tf.ticket_no = t.ticket_no)
-> Seq Scan on ticket_flights tf (cost=0.00..18692.26
rows=1045726 width=24)
-> Hash (cost=9733.33..9733.33 rows=366733 width=30)
-> Seq Scan on tickets t (cost=0.00..9733.33 rows=366733
width=30)
(7 строк)
Теперь планировщик выбирает слияние хешированием. Полученные оценки стои-
мости выполнения запроса будут значительно выше, а вывод результирующих строк
начнется значительно позднее, чем при использовании метода соединения слияни-
ем. На это указывает значение параметра cost для верхнего узла дерева плана:
cost=226400.55..229014.87
В команде EXPLAIN можно указать опцию ANALYZE, что позволит выполнить запрос
и вывести на экран фактические затраты времени на выполнение запроса и число
фактически выбранных строк. При этом, хотя запрос и выполняется, сами результи-
рующие строки не выводятся.
Сначала разрешим планировщику использовать метод соединения слиянием:

Download 1,88 Mb.

Do'stlaringiz bilan baham:
1   ...   229   230   231   232   233   234   235   236   ...   256




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish