Changes between Version 2 and Version 3 of QueryOptimization


Ignore:
Timestamp:
06/15/26 04:14:36 (5 days ago)
Author:
231102
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • QueryOptimization

    v2 v3  
    4444'''Примарен филтер:''' `indeks` на студентот (се користи и според име и презиме).
    4545
    46 '''Случај на употреба:''' пресметка на кредитно-пондериран просек, освоени кредити и број на положени/паднати испити за еден студент, по систем на оценување. Ова е еден од најчесто користените прегледи (студентски сервиси, уверенија), па перформансите се критични.
     46'''Случај на употреба:''' пресметка на просек, освоени кредити и број на положени/паднати испити за еден студент, по систем на оценување. Ова е еден од најчесто користените прегледи (студентски сервиси, уверенија), па перформансите се критични.
    4747
    4848=== Дефиниција ===
     
    253253=== Дефиниција (по преуредување) ===
    254254
    255 Дефиницијата ги подредува JOIN-овите така што студентскиот синџир е прв (види оптимизација подолу):
     255Дефиницијата ги подредува JOIN-овите така што студентскиот синџир е прв:
    256256
    257257{{{
     
    334334}}}
    335335
    336 По само индексирањето времето изнесуваше '''7s 755ms''' — подобрено, но сè уште неприфатливо. Анализата покажа дека погледот има '''11 JOIN-а''', што го надминува `join_collapse_limit = 8` на PostgreSQL, па оптимизаторот не можеше да го разгледа редоследот кој тргнува од студентот. '''Затоа го преуредивме прашалникот''' — JOIN-овите во дефиницијата се подредени така што студентскиот синџир е прв (види дефиниција погоре).
     336По само индексирањето времето изнесуваше '''7s 755ms''' — подобрено, но сè уште неприфатливо. Анализата покажа дека погледот има '''11 JOIN-а''', што го надминува `join_collapse_limit = 8` на PostgreSQL, па оптимизаторот не можеше да го разгледа редоследот кој тргнува од студентот. '''Затоа го преуредивме прашалникот''' — JOIN-овите во дефиницијата се подредени така што студентскиот синџир е прв.
    337337
    338338=== По индексирање + преуредување — 2.2ms ===