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



Download 17,08 Mb.
Pdf ko'rish
bet114/210
Sana25.06.2022
Hajmi17,08 Mb.
#704548
TuriРуководство
1   ...   110   111   112   113   114   115   116   117   ...   210
Bog'liq
OptimizZaprvPostgreSQL

Обратите
внимание:
даже если удаляемый или изменяемый столбец не участвует в ка-
ком-либо зависимом объекте, эти зависимые объекты все равно должны быть удалены 
и созданы заново.
Если обычные или материализованные представления создаются по-
верх других представлений, изменение одного столбца в одной базовой 
таблице может привести к пересозданию нескольких десятков зависимых 
объектов базы данных. Обычное представление создается быстро, но пере-
стройка нескольких зависимых материализованных представлений может 
занять значительное время, в течение которого материализованные пред-
ставления будут недоступны, даже если они допускают одновременное 
обновление.
В последующих главах обсуждаются функции и хранимые процедуры, ко-
торые могут устранить такие зависимости.
с
екЦионирование
До сих пор в этой главе обсуждались различные способы разделения запро-
сов на более мелкие части.
Секция представляет собой другой вид разделения – не кода, а данных. 
Секционированная таблица состоит из нескольких секций, каждая из кото-
рых определяется как отдельная таблица. Каждая табличная строка хранится 
в одной из секций в соответствии с правилами, указанными при создании 
секционированной таблицы.
Поддержка секций появилась в PostgreSQL относительно недавно; начиная 
с версии 10 в каждый выпуск вносятся улучшения, упрощающие использо-
вание секционированных таблиц.
Наиболее распространенный случай – секционирование по диапазонам. 
Каждая секция содержит строки, в которых значение атрибута находится 
в диапазоне, назначенном секции. Диапазоны, назначенные разным секци-
ям, не могут пересекаться, а строку, которая не попадает ни в одну секцию, 
нельзя вставить.


152

Длинные запросы: дополнительные приемы
В качестве примера создадим версию таблицы 
boarding_pass
с секциями. 
Последовательность команд показана в лис тинге 7.12.
Листинг 7.12 

Создание секционированной таблицы
-- создание таблицы
--
CREATE TABLE boarding_pass_part (
boarding_pass_id SERIAL,
passenger_id BIGINT NOT NULL,
booking_leg_id BIGINT NOT NULL,
seat TEXT,
boarding_time TIMESTAMPTZ,
precheck BOOLEAN NOT NULL,
update_ts TIMESTAMPTZ
)
Download 17,08 Mb.

Do'stlaringiz bilan baham:
1   ...   110   111   112   113   114   115   116   117   ...   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