Changes between Version 4 and Version 5 of ReviewsFullView
- Timestamp:
- 09/16/26 01:13:58 (12 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ReviewsFullView
v4 v5 113 113 }}} 114 114 115 == Тестирање на перформанси == 116 117 „Пред индексирање“ и „по индексирање“ ги означуваат групите наведени како „без индекси“ и „со индекси“ во евиденцијата. Точниот сет присутни индекси во секоја група не е евидентиран; „без индекси“ не потврдува отсуство на индекси од примарни и уникатни клучеви. 118 119 Наведените времиња се клиентски мерења од DBeaver, а не серверските Planning Time и Execution Time од EXPLAIN ANALYZE. Нема приложени планови, типови на скенирање или податоци за баферите. Вредностите се во милисекунди (ms). 120 121 === Измерен прашалник === 122 123 {{{ 124 #!sql 125 SELECT * FROM kbnteam.v_reviews_full 126 WHERE customer_user_id = 500000; 127 }}} 128 129 === Резултати пред индексирање === 130 131 ||= Метрика ||= Измерен резултат || 132 || Клиентско време (ms) || 544 || 133 || Приказ на мерењето || Време прикажано со резултатот во DBeaver || 134 || Прикажани / преземени редови || 1 || 135 || Planning Time / Execution Time од EXPLAIN || Не се измерени || 136 || План, тип на скенирање и бафери || Не се приложени || 137 138 === Дополнителни и заеднички индекси === 115 == Индексна поддршка == 139 116 140 117 `order_review(review_id)`, `order_review(order_id)`, `delivery_review(review_id)` и `delivery_review(delivery_id)` имаат уникатни индекси. `company_order(delivery_id)` исто така е уникатен. Останатите потребни индекси се споделени со нарачките и доставите. … … 177 154 }}} 178 155 179 == = Резултати по индексирање ===156 == Тестирање на перформанси == 180 157 181 ||= Метрика ||= Измерен резултат || 182 || Клиентско време (ms) || 55 || 183 || Приказ на мерењето || Време прикажано со резултатот во DBeaver || 184 || Прикажани / преземени редови || 1 || 185 || Planning Time / Execution Time од EXPLAIN || Не се измерени || 186 || План, тип на скенирање и бафери || Не се приложени || 158 === SELECT === 187 159 188 === Анализа на резултатите === 160 Времето на извршување на SELECT прашалникот е прифатливо за редовното користење на погледот. Постоечката индексна поддршка е доволна за тестираните прашалници. 189 161 190 ||= Метрика ||= Пред ||= По ||= Промена на времето || 191 || Клиентско време (ms) || 544 || 55 || -89,9% || 162 === INSERT и UPDATE === 192 163 193 Времето е пократко за 489 ms (89,9%), приближно 9,9 пати. Ова е забележан резултат за конкретниот клиент. Без план на извршување не може да се утврди кој индекс придонел за разликата. Користена е точната прикажана вредност 544 ms.164 Тестирани се по еден INSERT и еден UPDATE врз `kbnteam.review`, главната табела на погледот. Се тестира додавање рецензија и промена на оценката и коментарот. 194 165 195 Промената се пресметува како 100 × (време по - време пред) / време пред. Негативна вредност значи пократко време, а позитивна подолго време. Процентот ја опишува разликата меѓу прикажаните вредности. 166 ||= Операција ||= Execute (ms) ||= Fetch (ms) ||= Вратени редови || 167 || INSERT || 15 || 18 || 1 || 168 || UPDATE || 16 || 15 || 1 || 196 169 197 Ова се поединечни набљудувања. Не се евидентирани контролирани повторувања, исти услови за кеширање и оптоварување или точните дефиниции на присутните индекси. Затоа промената на времето не е доказ дека индексите се единствената причина. Не се приложени мерења за INSERT, UPDATE и DELETE.170 Execute е времето на извршување прикажано во DBeaver. Fetch вредностите се преземени од дополнетата евиденција на тестирањето. Ова се клиентски времиња, изразени во милисекунди. 198 171 199 === Дополнително тестирање - сè уште неизмерено === 172 Двете операции се успешни и враќаат по еден ред преку RETURNING. По мерењето промените се вратени со ROLLBACK. 200 173 201 Следниот прашалник служи за ново мерење на серверскиот план со истиот филтер. Неговите резултати не се пополнети со клиентските времиња наведени погоре. За споредба се задржуваат исти податоци и поставки, се евидентираат присутните индекси, се ажурираат статистиките и се прават повеќе повторувања во двете состојби. Се споредуваат медијаната на времињата и плановите.174 Тестот се однесува на табелата `review`. За приказ во погледот, рецензијата треба да биде поврзана со нарачка или достава. 202 175 203 {{{ 204 #!sql 205 BEGIN READ ONLY; 206 SET LOCAL statement_timeout = '60s'; 207 208 EXPLAIN (ANALYZE, BUFFERS, VERBOSE) 209 SELECT * FROM kbnteam.v_reviews_full 210 WHERE customer_user_id = 500000; 211 212 ROLLBACK; 213 }}} 214 215 ||= Метрика за дополнителното тестирање ||= Пред ||= По || 216 || Planning Time (ms) || Не е измерено || Не е измерено || 217 || Execution Time (ms) || Не е измерено || Не е измерено || 218 || Тип на скенирање по табела || Не е евидентиран || Не е евидентиран || 219 || Shared Hit Blocks / Shared Read Blocks || Не се измерени || Не се измерени || 176 INSERT и UPDATE се извршуваат со прифатлива брзина. Овие мерења ја опишуваат тестираната состојба на базата и не се споредба пред и по индексирање.
