Changes between Version 6 and Version 7 of AdvancedTopics


Ignore:
Timestamp:
05/21/26 18:41:43 (5 days ago)
Author:
231105
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedTopics

    v6 v7  
    99## 1. Train Trip табела – партиционирање по `departure_time`
    1010
    11 Табелата **Train_Trip** претставува централна табела во системот, бидејќи ги содржи сите информации за железничките патувања, како што се времето на поаѓање и пристигнување, статусот на патувањето, поврзаниот воз, како и вработените кои се вклучени во неговото извршување.
    12 
    13 ---
     11Табелата **Train_Trip** претставува централна табела во системот, бидејќи ги содржи сите информации за железничките патувања, како што се времето на поаѓање и пристигнување, статусот на патувањето, поврзаниот воз, како и вработените кои учествуваат во неговото извршување.
    1412
    1513### Причини за партиционирање
    1614
    17 #### • Висока фреквенција на податоци
    18 Секојдневно се генерираат голем број нови патувања. 
    19 Со тек на време, оваа табела станува една од најголемите во целиот систем, што може да доведе до намалување на перформансите при пребарување и обработка на податоци.
     15#### Висока фреквенција на податоци
     16Секојдневно се генерираат голем број нови патувања. Со тек на време, оваа табела станува една од најголемите во системот, што може значително да ги намали перформансите при пребарување и обработка на податоци.
    2017
    21 ---
     18#### Природна временска структура
     19Секое патување има точно дефиниран атрибут `departure_time`. Овој атрибут е природно погоден за RANGE партиционирање, бидејќи податоците логички се групираат по временски интервали (месеци или години).
    2220
    23 #### • Природна временска структура
    24 Секое патување има точно дефиниран атрибут `departure_time`. 
    25 Овој атрибут е идеален за **RANGE партиционирање**, бидејќи податоците природно се групираат по временски интервали (месеци/години).
     21#### Типични прашања во системот
     22Најчестите барања во системот се од типот:
     23- Сите патувања во одреден месец
     24- Патувања во одредена година
     25- Анализа на доцнења во одреден временски период
    2626
    27 ---
    28 
    29 #### • Типични прашања во системот
    30 Во реални услови, најчестите барања за оваа табела се од типот:
    31 
    32 - „Сите патувања во одреден месец“ 
    33 - „Патувања во 2026 година“ 
    34 - „Доцнења во последната недела“ 
    35 
    36 Овие барања бараат ефикасно временско филтрирање, кое со партиционирање се извршува значително побрзо, бидејќи се пребарува само релевантната партиција, а не целата табела.
    37 
    38 ---
     27Овие операции бараат временско филтрирање, кое со партиционирање се извршува значително побрзо, бидејќи системот пристапува само до релевантната партиција.
    3928
    4029### Како помага партиционирањето
    4130
    42 Со примена на **месечни партиции**, PostgreSQL работи само со мал дел од податоците (приближно 1/12 од годишните податоци), наместо да ја скенира целата табела. Ова значително ја подобрува брзината на:
     31Со примена на месечни партиции, PostgreSQL обработува само мал дел од податоците (околу 1/12 од годишните податоци), наместо целата табела. Ова значително ги подобрува перформансите на:
    4332
    44 - `SELECT` операции 
    45 - `UPDATE` операции 
    46 - `DELETE` операции 
     33- SELECT операции 
     34- UPDATE операции 
     35- DELETE операции 
    4736
    48 ---
     37### DEFAULT партиција
    4938
    50 #### • DEFAULT партиција
    51 Дополнително, се користи и **DEFAULT партиција**, која обезбедува стабилност на системот. Таа ги прифаќа сите записи кои не спаѓаат во дефинираните временски интервали и спречува грешки при внесување на податоци.
     39Се користи и DEFAULT партиција која обезбедува стабилност на системот. Таа ги прима сите записи кои не спаѓаат во дефинираните временски опсези и спречува грешки при внесување на податоци.