| 5 | | === 1. View1 view_payment_audit === |
| | 5 | === 1. View1 view_conductor_list === |
| | 6 | |
| | 7 | -**Опис**: Погледот view_conductor_list е детален преглед наменет за кондуктерите и железничкиот персонал. Погледот ги здружува податоците за билетите, патниците, возовите и станиците, овозможувајќи брз увид во тоа кој патник на кое седиште се наоѓа, во кој вагон е и на кои релации патува. |
| | 8 | |
| | 9 | [[Image(predIndeks.png, 800px)]] |
| | 10 | |
| | 11 | Времето потребно за извршување на овој прашалник е **~2s 400ms.** Не е прифатливо. |
| | 12 | |
| | 13 | **-Explain plan:** |
| | 14 | |
| | 15 | [[Image(explain_plan.png, 800px)]] |
| | 16 | |
| | 17 | Со користење на алатката за приказ на планот за извршување, забележуваме дека главната причина за доцнењето е Full Table Scan врз табелата Ticket, па затоа правиме индекс: |
| | 18 | |
| | 19 | [[Image("Screenshot 2026-05-08 165050.png", 800px)]] |
| | 20 | |
| | 21 | [[Image(poIndeks.png, 800px)]] |
| | 22 | |
| | 23 | Сега времето на извршување е **~26ms** и е прифатливо. |
| | 24 | |
| | 25 | **-Query plan:** |
| | 26 | |
| | 27 | [[Image(QueryPlan.png, 800px)]] |
| | 28 | |
| | 29 | === 2. View2 view_user_ticket_history === |
| | 30 | |
| | 31 | -**Опис**: Погледот view_user_ticket_history е наменет за кориснички профили и историја на патувања. Тој ги сумира сите билети на еден патник, класифицирајќи ги како „претстојни“ или „минати“ патувања, притоа прикажувајќи детали за рутата, времето на поаѓање и статусот на билетот. |
| | 32 | |
| | 33 | [[Image(USERPREDIND.png, 800px)]] |
| | 34 | |
| | 35 | Времето потребно за извршување на овој прашалник е **~3s 998ms.** Не е прифатливо. |
| | 36 | |
| | 37 | **-Explain plan:** |
| | 38 | |
| | 39 | [[Image(EXPLAINUSER.png, 800px)]] |
| | 40 | |
| | 41 | Со користење на алатката за приказ на планот за извршување, забележуваме дека главната причина за доцнењето е Full Table Scan врз табелата Ticket и врз табелата Payment, па затоа правиме два индекса: |
| | 42 | |
| | 43 | [[Image(userIND.png, 800px)]] |
| | 44 | |
| | 45 | [[Image(USERpoind.png, 800px)]] |
| | 46 | |
| | 47 | Сега времето на извршување е **~139ms** и е прифатливо. |
| | 48 | |
| | 49 | **-Query plan:** |
| | 50 | |
| | 51 | [[Image(userQuery.png, 800px)]] |
| | 52 | |
| | 53 | === 3. View3 view_station_departures === |
| | 54 | |
| | 55 | -**Опис**: Погледот view_station_departures функционира како дигитален информативен табла за станиците. Тој ги прикажува сите претстојни поаѓања, вклучувајќи ги името на рутата, статусот на патувањето и информациите за евентуални доцнења, подредени хронолошки. |
| | 56 | |
| | 57 | [[Image(departure.png, 800px)]] |
| | 58 | |
| | 59 | Времето потребно за извршување на овој прашалник е **~140ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| | 60 | |
| | 61 | **-Query plan:** |
| | 62 | |
| | 63 | [[Image(depQuery.png, 800px)]] |
| | 64 | |
| | 65 | === 4. View4 view_station_arrivals === |
| | 66 | |
| | 67 | -**Опис**: Погледот view_station_arrivals служи како дигитален информатор за пристигнувања на железничките станици. Тој ги прикажува сите возови чие пристигнување се очекува во текот на денешниот ден или во иднина, вклучувајќи детали за рутата, планираното време на пристигнување и евентуални доцнења. |
| | 68 | |
| | 69 | [[Image(station.png, 800px)]] |
| | 70 | |
| | 71 | Времето потребно за извршување на овој прашалник е **~17ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| | 72 | |
| | 73 | **-Query plan:** |
| | 74 | |
| | 75 | [[Image(stationQuery.png, 800px)]] |
| | 76 | |
| | 77 | === 5. View5 vw_free_seats_per_trip=== |
| | 78 | |
| | 79 | -**Опис**: Погледот vw_free_seats_per_trip овозможува реално следење на слободните капацитети за секое патување преку автоматска пресметка на разликата помеѓу вкупниот капацитет на возот и бројот на продадени билети. |
| | 80 | |
| | 81 | [[Image(freeseats.png, 800px)]] |
| | 82 | |
| | 83 | Времето потребно за извршување на овој прашалник е **~63ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| | 84 | |
| | 85 | **-Query plan:** |
| | 86 | |
| | 87 | [[Image(freeseatsView.png, 800px)]] |
| | 88 | |
| | 89 | === 6. View6 active_delays === |
| | 90 | |
| | 91 | -**Опис**: Погледот active_delays е оперативен поглед кој овозможува следење на сите возови кои моментално се во сообраќај и се соочуваат со доцнење. Овој поглед ги филтрира само активните патувања (кои не се завршени), давајќи прецизни информации за локацијата на возот и времетраењето на неговото доцнење. |
| | 92 | |
| | 93 | [[Image(active_delays.png, 800px)]] |
| | 94 | |
| | 95 | Времето потребно за извршување на овој прашалник е **~40ms.** Времето на извршување е прифатливо и тоа може да го видиме со query планот. |
| | 96 | |
| | 97 | **-Query plan:** |
| | 98 | |
| | 99 | [[Image("query plan za active_delays.png", 800px)]] |
| | 100 | |
| | 101 | === 7. View7 view_payment_audit === |
| 138 | | |
| 139 | | === 10. View10 view_conductor_list === |
| 140 | | |
| 141 | | -**Опис**: Погледот view_conductor_list е детален преглед наменет за кондуктерите и железничкиот персонал. Погледот ги здружува податоците за билетите, патниците, возовите и станиците, овозможувајќи брз увид во тоа кој патник на кое седиште се наоѓа, во кој вагон е и на кои релации патува. |
| 142 | | |
| 143 | | [[Image(predIndeks.png, 800px)]] |
| 144 | | |
| 145 | | Времето потребно за извршување на овој прашалник е **~2s 400ms.** Не е прифатливо. |
| 146 | | |
| 147 | | **-Explain plan:** |
| 148 | | |
| 149 | | [[Image(explain_plan.png, 800px)]] |
| 150 | | |
| 151 | | Со користење на алатката за приказ на планот за извршување, забележуваме дека главната причина за доцнењето е Full Table Scan врз табелата Ticket, па затоа правиме индекс: |
| 152 | | |
| 153 | | [[Image("Screenshot 2026-05-08 165050.png", 800px)]] |
| 154 | | |
| 155 | | [[Image(poIndeks.png, 800px)]] |
| 156 | | |
| 157 | | Сега времето на извршување е **~26ms** и е прифатливо. |
| 158 | | |
| 159 | | **-Query plan:** |
| 160 | | |
| 161 | | [[Image(QueryPlan.png, 800px)]] |
| 162 | | |
| 163 | | === 11. View11 view_user_ticket_history === |
| 164 | | |
| 165 | | -**Опис**: Погледот view_user_ticket_history е наменет за кориснички профили и историја на патувања. Тој ги сумира сите билети на еден патник, класифицирајќи ги како „претстојни“ или „минати“ патувања, притоа прикажувајќи детали за рутата, времето на поаѓање и статусот на билетот. |
| 166 | | |
| 167 | | [[Image(USERPREDIND.png, 800px)]] |
| 168 | | |
| 169 | | Времето потребно за извршување на овој прашалник е **~3s 998ms.** Не е прифатливо. |
| 170 | | |
| 171 | | **-Explain plan:** |
| 172 | | |
| 173 | | [[Image(EXPLAINUSER.png, 800px)]] |
| 174 | | |
| 175 | | Со користење на алатката за приказ на планот за извршување, забележуваме дека главната причина за доцнењето е Full Table Scan врз табелата Ticket и врз табелата Payment, па затоа правиме два индекса: |
| 176 | | |
| 177 | | [[Image(userIND.png, 800px)]] |
| 178 | | |
| 179 | | [[Image(USERpoind.png, 800px)]] |
| 180 | | |
| 181 | | Сега времето на извршување е **~139ms** и е прифатливо. |
| 182 | | |
| 183 | | **-Query plan:** |
| 184 | | |
| 185 | | [[Image(userQuery.png, 800px)]] |
| 186 | | |
| 187 | | === 12. View12 view_station_departures === |
| 188 | | |
| 189 | | -**Опис**: Погледот view_station_departures функционира како дигитален информативен табла за станиците. Тој ги прикажува сите претстојни поаѓања, вклучувајќи ги името на рутата, статусот на патувањето и информациите за евентуални доцнења, подредени хронолошки. |
| 190 | | |
| 191 | | [[Image(departure.png, 800px)]] |
| 192 | | |
| 193 | | Времето потребно за извршување на овој прашалник е **~140ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| 194 | | |
| 195 | | **-Query plan:** |
| 196 | | |
| 197 | | [[Image(depQuery.png, 800px)]] |
| 198 | | |
| 199 | | === 13. View13 view_station_arrivals === |
| 200 | | |
| 201 | | -**Опис**: Погледот view_station_arrivals служи како дигитален информатор за пристигнувања на железничките станици. Тој ги прикажува сите возови чие пристигнување се очекува во текот на денешниот ден или во иднина, вклучувајќи детали за рутата, планираното време на пристигнување и евентуални доцнења. |
| 202 | | |
| 203 | | [[Image(station.png, 800px)]] |
| 204 | | |
| 205 | | Времето потребно за извршување на овој прашалник е **~17ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| 206 | | |
| 207 | | **-Query plan:** |
| 208 | | |
| 209 | | [[Image(stationQuery.png, 800px)]] |
| 210 | | |
| 211 | | === 14. View14 vw_free_seats_per_trip=== |
| 212 | | |
| 213 | | -**Опис**: Погледот vw_free_seats_per_trip овозможува реално следење на слободните капацитети за секое патување преку автоматска пресметка на разликата помеѓу вкупниот капацитет на возот и бројот на продадени билети. |
| 214 | | |
| 215 | | [[Image(freeseats.png, 800px)]] |
| 216 | | |
| 217 | | Времето потребно за извршување на овој прашалник е **~63ms.** Времето на извршување е прифатливо, заклучуваме дека не треба да го оптимизираме и тоа може да го видиме со query планот. |
| 218 | | |
| 219 | | **-Query plan:** |
| 220 | | |
| 221 | | [[Image(freeseatsView.png, 800px)]] |