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



Download 1,88 Mb.
Pdf ko'rish
bet228/256
Sana21.02.2022
Hajmi1,88 Mb.
#24505
TuriУчебное пособие
1   ...   224   225   226   227   228   229   230   231   ...   256
Bog'liq
morgunov e p postgresql osnovy yazyka sql

EXPLAIN SELECT *
FROM bookings
ORDER BY book_ref;
QUERY PLAN
----------------------------------------------------------------
Index Scan using bookings_pkey on bookings (cost=0.42..8511.24
rows=262788 width=21)
(1 строка)
Поскольку выводимые строки плана в утилите psql могут быть очень длинными, мы
будем вносить небольшие изменения в форматирование вывода при переносе плана
в текст пособия.
Обратите внимание, что первая оценка стоимости в плане — не нулевая. Это объяс-
няется тем, что, хотя индекс уже упорядочен, и дополнительная сортировка не требу-
ется, но для того, чтобы найти в индексе первую строку в соответствии с требуемым
порядком, тоже нужно некоторое время.
Если к сортировке добавить еще и условие отбора строк, то это отразится в дополни-
тельной строке верхнего (и единственного) узла плана.
EXPLAIN SELECT *
FROM bookings
WHERE book_ref > '0000FF' AND book_ref < '000FFF'
ORDER BY book_ref;
299


Глава 10. Повышение производительности
QUERY PLAN
---------------------------------------------------------------------
Index Scan using bookings_pkey on bookings (cost=0.42..9.50 rows=54
width=21)
Index Cond: ((book_ref > '0000FF'::bpchar) AND (book_ref <
'000FFF'::bpchar))
(2 строки)
Обратите внимание, что поскольку столбец, по которому производится отбор строк,
является индексируемым, то их отбор реализуется не через Filter, а через Index
Cond.
Теперь проиллюстрируем метод сканирования на основе битовой карты на при-
мере таблицы «Места».
EXPLAIN SELECT *
FROM seats
WHERE aircraft_code = 'SU9';
QUERY PLAN
------------------------------------------------------------------------
Bitmap Heap Scan on seats (cost=5.03..14.24 rows=97 width=15)
Recheck Cond: (aircraft_code = 'SU9'::bpchar)
-> Bitmap Index Scan on seats_pkey (cost=0.00..5.00 rows=97 width=0)
Index Cond: (aircraft_code = 'SU9'::bpchar)
(4 строки)
В этом плане в нижнем узле строится битовая карта, а в верхнем узле с помощью
этой карты сканируются страницы таблицы seats. Здесь также для отбора строк в со-
ответствии с предложением WHERE используется индекс — Index Cond. Обратите
внимание, что значение параметра width при создании битовой карты равно нулю,
поскольку сами строки на этом этапе еще не выбираются.
Если нам будет нужно выбрать только номера бронирований в каком-то диапазоне,
то обращения к таблице не потребуется: достаточно сканирования исключительно

Download 1,88 Mb.

Do'stlaringiz bilan baham:
1   ...   224   225   226   227   228   229   230   231   ...   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