Changes between Version 4 and Version 5 of OrdersFullView


Ignore:
Timestamp:
09/16/26 01:13:24 (11 days ago)
Author:
223235
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OrdersFullView

    v4 v5  
    111111}}}
    112112
    113 == Тестирање на перформанси ==
    114 
    115 „Пред индексирање“ и „по индексирање“ ги означуваат групите наведени како „без индекси“ и „со индекси“ во евиденцијата. Точниот сет присутни индекси во секоја група не е евидентиран; „без индекси“ не потврдува отсуство на индекси од примарни и уникатни клучеви.
    116 
    117 Наведените времиња се клиентски мерења од DBeaver, а не серверските Planning Time и Execution Time од EXPLAIN ANALYZE. Нема приложени планови, типови на скенирање или податоци за баферите. Вредностите се во милисекунди (ms).
    118 
    119 === Измерен прашалник ===
    120 
    121 {{{
    122 #!sql
    123 SELECT * FROM kbnteam.v_orders_full
    124 WHERE customer_user_id = 1202947 AND order_total >= 40;
    125 }}}
    126 
    127 === Резултати пред индексирање ===
    128 
    129 ||= Метрика ||= Измерен резултат ||
    130 || Клиентско време (ms) || 2598 ||
    131 || Приказ на мерењето || Време прикажано со резултатот во DBeaver ||
    132 || Прикажани / преземени редови || 1 ||
    133 || Planning Time / Execution Time од EXPLAIN || Не се измерени ||
    134 || План, тип на скенирање и бафери || Не се приложени ||
    135 
    136 === Дополнителни и заеднички индекси ===
     113== Индексна поддршка ==
    137114
    138115Примарните клучеви ги покриваат идентификаторите, а `company_order(delivery_id)` има уникатен индекс.
    … …  
    190167}}}
    191168
    192 === Резултати по индексирање ===
     169== Тестирање на перформанси ==
    193170
    194 ||= Метрика ||= Измерен резултат ||
    195 || Клиентско време (ms) || 2591 ||
    196 || Приказ на мерењето || Време прикажано со резултатот во DBeaver ||
    197 || Прикажани / преземени редови || 1 ||
    198 || Planning Time / Execution Time од EXPLAIN || Не се измерени ||
    199 || План, тип на скенирање и бафери || Не се приложени ||
     171=== SELECT ===
    200172
    201 === Анализа на резултатите ===
    202 
    203 ||= Метрика ||= Пред ||= По ||= Промена на времето ||
    204 || Клиентско време (ms) || 2598 || 2591 || -0,3% ||
    205 
    206 Времето е пократко само за 7 ms (0,3%). Едно вакво мерење не покажува значајно практично забрзување. Измерениот услов е по клиент и минимален износ, без датумски опсег.
    207 
    208 Промената се пресметува како 100 × (време по - време пред) / време пред. Негативна вредност значи пократко време, а позитивна подолго време. Процентот ја опишува разликата меѓу прикажаните вредности.
    209 
    210 Ова се поединечни набљудувања. Не се евидентирани контролирани повторувања, исти услови за кеширање и оптоварување или точните дефиниции на присутните индекси. Затоа промената на времето не е доказ дека индексите се единствената причина. Не се приложени мерења за INSERT, UPDATE и DELETE.
    211 
    212 === Дополнително тестирање - сè уште неизмерено ===
    213 
    214 Следниот прашалник служи за ново мерење на серверскиот план со истиот филтер. Неговите резултати не се пополнети со клиентските времиња наведени погоре. За споредба се задржуваат исти податоци и поставки, се евидентираат присутните индекси, се ажурираат статистиките и се прават повеќе повторувања во двете состојби. Се споредуваат медијаната на времињата и плановите.
     173Мерењата се евидентирани во DBeaver. Времињата се во милисекунди (ms).
    215174
    216175{{{
    217176#!sql
    218 BEGIN READ ONLY;
    219 SET LOCAL statement_timeout = '60s';
    220 
    221 EXPLAIN (ANALYZE, BUFFERS, VERBOSE)
    222177SELECT * FROM kbnteam.v_orders_full
    223178WHERE customer_user_id = 1202947 AND order_total >= 40;
    224 
    225 ROLLBACK;
    226179}}}
    227180
    228 ||= Метрика за дополнителното тестирање ||= Пред ||= По ||
    229 || Planning Time (ms) || Не е измерено || Не е измерено ||
    230 || Execution Time (ms) || Не е измерено || Не е измерено ||
    231 || Тип на скенирање по табела || Не е евидентиран || Не е евидентиран ||
    232 || Shared Hit Blocks / Shared Read Blocks || Не се измерени || Не се измерени ||
     181||= Метрика ||= Пред индексирање ||= По индексирање ||
     182|| Клиентско време (ms) || 2598 || 2591 ||
     183|| Вратени редови || 1 || 1 ||
     184
     185Разликата е 7 ms, односно 0,3% пократко време. Во ова мерење нема значајна промена.
     186
     187=== INSERT и UPDATE ===
     188
     189Тестирани се по еден INSERT и еден UPDATE врз `kbnteam.customer_order`, главната табела на погледот. Се тестира додавање нарачка и поместување на времето на нарачката.
     190
     191||= Операција ||= Execute (ms) ||= Fetch (ms) ||= Вратени редови ||
     192|| INSERT || 16 || 14 || 1 ||
     193|| UPDATE || 18 || 16 || 1 ||
     194
     195Execute е времето на извршување прикажано во DBeaver. Fetch вредностите се преземени од дополнетата евиденција на тестирањето. Ова се клиентски времиња, изразени во милисекунди.
     196
     197Двете операции се успешни и враќаат по еден ред преку RETURNING. По мерењето промените се вратени со ROLLBACK.
     198
     199INSERT и UPDATE се извршуваат со прифатлива брзина. Овие мерења ја опишуваат тестираната состојба на базата и не се споредба пред и по индексирање.