wiki:AdvancedTopic

Version 4 (modified by 231184, 4 days ago) ( diff )

--

Напредна тема

Во оваа фаза е имплементирана напредна тема од бази на податоци: партиционирање на големи табели. Партиционирањето се користи за поделба на големи табели на помали логички делови, со цел полесно управување со податоците и подобрување на перформансите кај прашалници кои филтрираат по датум.

Партиционирање на големи табели

Оваа скрипта имплементира range partitioning за табелите time_slot и appointment. Табелата time_slot е партиционирана според колоната date, додека табелата appointment е партиционирана според колоната created_at.

Партициите се поделени по квартали, односно се креираат посебни партиции за различни временски периоди. На овој начин, прашалниците кои пребаруваат податоци за конкретен датум или период можат да работат само врз релевантната партиција, наместо врз целата табела.

Дополнително, во скриптата се креираат индекси врз партиционираните табели и се прават проверки на бројот на записи по партиции. На крај се користи EXPLAIN ANALYZE за анализа на извршувањето на прашалниците врз партиционираните табели.

01_table_partitioning.sql

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.