Changes between Version 70 and Version 71 of QueryOptimization
- Timestamp:
- 05/17/26 14:10:12 (9 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
QueryOptimization
v70 v71 103 103 ||Execution Time: 23.621 ms|| 104 104 105 Погледот е бавен поради комплексни врски помеѓи четири табели што резултира со време од 3.2 s. Индексите на `performer_id` и `event_id` го елиминираат целосното скенирање на табелите и овозможуваат инстантно поврзување на изведувачите со нивните настани.106 107 105 ==== 5. Оптимизација и индексирање: 108 106 … … 305 303 || Timing: Generation 0.405 ms (Deform 0.071 ms), Inlining 0.000 ms, Optimization 0.595 ms, Emission 6.566 ms, Total 7.565 ms|| 306 304 ||Execution Time: 312239.424 ms|| 307 308 Времето за ажурирање од 312 s е неприфатливо за интеракција со мапа на седишта во реално време. Со поставување индекси на `seat_number` и `venue_id`, пребарувањето и промената на статусот на седиштата се извршуваат за милисекунди наместо за неколку минути.309 305 310 306 ==== 5. Оптимизација и индексирање: … … 524 520 ||Execution Time: 0.157 ms|| 525 521 526 Приказот на историјата на билети трае 251.9 s, што го блокира корисничкиот профил. Индексот на `user_id` овозможува базата веднаш да ги лоцира билетите на конкретниот корисник без да ги пребарува сите трансакции во системот.527 528 522 ==== 5. Оптимизација и индексирање: 529 523 … … 749 743 ||Execution Time: 0.218 ms|| 750 744 751 Без индекси, секое пребарување на оценките по корисник предизвикува непотребно оптоварување на меморијата преку '''Seq Scan'''. Индексирањето на `user_id` и `event_happening_id` обезбедува брза филтрација и поврзување на рејтинзите со соодветните термини на настаните.752 753 745 ==== 5. Оптимизација и индексирање: 754 746 … … 951 943 ||Planning Time: 0.136 ms|| 952 944 ||Execution Time: 0.500 ms|| 953 954 Пресметката на просечни оценки бара постојано агрегирање на податоци, што е бавно при секој нов приказ. Композитен индекс на (`event_happening_id`, `rating`) овозможува математичките операции да се вршат директно врз индексот, забрзувајќи го приказот на почетната страна.955 945 956 946 ==== 5. Оптимизација и индексирање: … … 1181 1171 ||Execution Time: 0.364 ms|| 1182 1172 1183 Овој поглед има критично време на извршување од над 5 минути поради обработка на милиони трансакции. Индексите на `ticket_id` го намалуваат времето за 99%, овозможувајќи моментален преглед на приходите и рефундациите за секој настан.1184 1185 1173 ==== 5. Оптимизација и индексирање: 1186 1174 … … 1412 1400 ||Execution Time: 0.662 ms|| 1413 1401 1414 Времето на извршување е релативно ниско, но базата троши 4.258 ms само на планирање на секој поединечен запис. Бидејќи редовите не се подредени по време, системот мора да врши постојани споредби за секој настан. Заради ова, потребен е индекс кој ќе овозможи моментално лоцирање на идните настани без пребарување на целата табела.1415 1416 1402 ==== 5. Оптимизација и индексирање: 1417 1403 … … 1645 1631 ||Execution Time: 0.393 ms|| 1646 1632 1647 За овој поглед се трошат 948.13 ms бидејќи базата мора да пребарува низ 30 милиони записи. Овој процес вклучува скапи операции со трошок од 27455.75, каде се читаат милиони непотребни записи од дискот. Заради ова, потребен е индекс кој ќе ги издвои само достапните билети и ќе го елиминира ваквото чекање.1648 1649 1633 ==== 5. Оптимизација и индексирање: 1650 1634
