Руководство по созданию эффективных запросов



Download 17,08 Mb.
Pdf ko'rish
bet66/210
Sana25.06.2022
Hajmi17,08 Mb.
#704548
TuriРуководство
1   ...   62   63   64   65   66   67   68   69   ...   210
Bog'liq
OptimizZaprvPostgreSQL

83
Меньшая селективность
Помните, что чем ниже селективность, тем быстрее идет поиск, и когда мы 
оптимизируем короткие запросы, наша цель – избежать чтения большого 
количества строк на каждом шаге (даже если позже мы сможем отфильтро-
вать их). Иногда ни одно из отдельных значений столбцов не ограничивает 
достаточно выборку, и только определенная комбинация значений делает 
запрос коротким.
В примере из предыдущего раздела 12 922 рейса вылетают из аэропорта 
О’Хара и 10 530 рейсов прибывают в аэропорт Джона Кеннеди. Однако вы-
летают из аэропорта О’Хара и приземляются в аэропорту Джона Кеннеди 
всего 184 рейса.
Использование индексов для получения данных
Когда все столбцы из запроса включены в составной индекс, их можно полу-
чить без доступа к таблице. Этот метод получения данных называется 
ска-
нированием
только
индекса
.
Все планы выполнения в предыдущем разделе читают табличные записи 
после того, как эти записи найдены с помощью сканирования индекса, по-
тому что нам требовались еще и значения из столбцов, которые не были 
включены в индекс.
Создадим еще один составной индекс и включим в него еще один столбец:
CREATE INDEX flight_depart_arr_sched_dep_sched_arr
ON flight (departure_airport,
arrival_airport,
scheduled_departure,
scheduled_arrival );
План выполнения запроса тут же изменится на сканирование только ин-
декса, как показано на рис. 5.14.
Рис. 5.14 

План со сканированием только индекса
Обратите внимание, что поиск производился по первым трем столбцам 
индекса. Что, если бы условие поиска не включало первый столбец индекса? 
Например:
SELECT departure_airport,
scheduled_departure,
scheduled_arrival


84

Короткие запросы и индексы
FROM flight
WHERE arrival_airport = 'JFK'
AND scheduled_departure BETWEEN '2020-07-03' AND '2020-07-04'
План выполнения в этом случае вернулся бы к использованию нескольких 
индексов с операторами «и» и «или», как показано на рис. 5.15.

Download 17,08 Mb.

Do'stlaringiz bilan baham:
1   ...   62   63   64   65   66   67   68   69   ...   210




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