Changes between Version 15 and Version 16 of QueryOptimization


Ignore:
Timestamp:
05/07/26 21:53:30 (3 weeks ago)
Author:
231075
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • QueryOptimization

    v15 v16  
    279279[[Image(Average_Rating_Scan.png, 800px)]]
    280280
    281 '''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1 (1m 24s 217ms → 15s 519ms). Времето изминато во извршување на query-то по индексирање изнесува:
     281'''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1. Времето изминато во извршување на query-то по индексирање изнесува:
    282282
    283283[[Image(Average_Rating_per_Vendor_Execution_After_Indexing.png, 800px)]]
    284284
    285 [[Image(Average_Rating_per_Vendor_Scan_After_Indexing.png, 800px)]]
     285
     286'''6.''' Времето на извршување на операциите insert и update во табелите 'Project' и 'Client_Vendor_Contract' се променува, но не поради индекс додаден за овој поглед, туку поради индексите создадени во View1.
     287
     288----
     289
     290== View9: Вкупен буџет по клиент (vw_budget_per_client) ==
     291
     292'''1.''' Примарен филтер за погледот `vw_budget_per_client` ќе биде според неговото id (client_id на клиентот).
     293
     294'''2.''' Примарен случај на употреба ќе е преглед на вкупниот буџет потрошен по клиент низ сите проекти и договори. Овој поглед е аналитички по природа (пресметува агрегатни вредности со SUM и COUNT) и не бара директно индексирање.
     295
     296'''3.''' Иницијалното время за извршување на погледот е '''320ms'''.
     297
     298[[Image(Budget_per_Client_Execution.png, 800px)]]
     299
     300'''4.''' Најбавните операции се full scan на табелите:
     301 * `Project` - 26k cost
     302 * `Client_Vendor_Contract` - 7k cost
     303
     304[[Image(Budget_per_Client_Scan.png, 800px)]]
     305
     306'''5.''' Иако овој поглед е аналитички, беше забележано дека присуството на `idx_cvc_client_id` го влошуваше времето на извршување (320ms → 621ms). По отстранување на тој индекс, перформансите се стабилизирани со индексите `idx_project_contract_id` и `idx_cvc_vendor_id` од View1. Времето изминато во извршување на query-то по индексирање изнесува:
     307
     308[[Image(Budget_per_Client_Execution_After_Indexing.png, 800px)]]
     309
     310[[Image(Budget_per_Client_Scan_After_Indexing.png, 800px)]]
    286311
    287312'''6.''' Времето на извршување на операциите insert и update останува непроменето бидејќи не се додадени нови индекси за овој поглед.
     
    289314----
    290315
    291 == View9: Вкупен буџет по клиент (vw_budget_per_client) ==
    292 
    293 '''1.''' Примарен филтер за погледот `vw_budget_per_client` ќе биде според неговото id (client_id на клиентот).
    294 
    295 '''2.''' Примарен случај на употреба ќе е преглед на вкупниот буџет потрошен по клиент низ сите проекти и договори. Овој поглед е аналитички по природа (пресметува агрегатни вредности со SUM и COUNT) и не бара директно индексирање.
    296 
    297 '''3.''' Иницијалното время за извршување на погледот е '''320ms'''.
    298 
    299 [[Image(Budget_per_Client_Execution.png, 800px)]]
    300 
    301 '''4.''' Најбавните операции се full scan на табелите:
    302  * `Project` - 26k cost
    303  * `Client_Vendor_Contract` - 7k cost
    304 
    305 [[Image(Budget_per_Client_Scan.png, 800px)]]
    306 
    307 '''5.''' Иако овој поглед е аналитички, беше забележано дека присуството на `idx_cvc_client_id` го влошуваше времето на извршување (320ms → 621ms). По отстранување на тој индекс, перформансите се стабилизирани со индексите `idx_project_contract_id` и `idx_cvc_vendor_id` од View1. Времето изминато во извршување на query-то по индексирање изнесува:
    308 
    309 [[Image(Budget_per_Client_Execution_After_Indexing.png, 800px)]]
    310 
    311 [[Image(Budget_per_Client_Scan_After_Indexing.png, 800px)]]
     316== View10: Вкупен буџет по продавач (vw_budget_per_vendor) ==
     317
     318'''1.''' Примарен филтер за погледот `vw_budget_per_vendor` ќе биде според неговото id (vendor_id на продавачот).
     319
     320'''2.''' Примарен случај на употреба ќе е преглед на вкупниот буџет потрошен по продавач низ сите проекти и договори. Овој поглед е аналитички по природа (пресметува агрегатни вредности со SUM и COUNT) и не бара директно индексирање. Сепак, перформансите на овој поглед се подобрени поради индексирањето применето во View1.
     321
     322'''3.''' Иницијалното время за извршување на погледот е '''319ms'''.
     323
     324[[Image(Budget_per_Vendor_Execution.png, 800px)]]
     325
     326'''4.''' Најбавните операции се full scan на табелите:
     327 * `Project` - 26k cost
     328 * `Client_Vendor_Contract` - 7k cost
     329
     330[[Image(Budget_per_Vendor_Scan.png, 800px)]]
     331
     332'''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1 (319ms → 39ms). Времето изминато во извршување на query-то по индексирање изнесува:
     333
     334[[Image(Budget_per_Vendor_Execution_After_Indexing.png, 800px)]]
     335
     336[[Image(Budget_per_Vendor_Scan_After_Indexing.png, 800px)]]
    312337
    313338'''6.''' Времето на извршување на операциите insert и update останува непроменето бидејќи не се додадени нови индекси за овој поглед.
     
    315340----
    316341
    317 == View10: Вкупен буџет по продавач (vw_budget_per_vendor) ==
    318 
    319 '''1.''' Примарен филтер за погледот `vw_budget_per_vendor` ќе биде според неговото id (vendor_id на продавачот).
    320 
    321 '''2.''' Примарен случај на употреба ќе е преглед на вкупниот буџет потрошен по продавач низ сите проекти и договори. Овој поглед е аналитички по природа (пресметува агрегатни вредности со SUM и COUNT) и не бара директно индексирање. Сепак, перформансите на овој поглед се подобрени поради индексирањето применето во View1.
    322 
    323 '''3.''' Иницијалното время за извршување на погледот е '''319ms'''.
    324 
    325 [[Image(Budget_per_Vendor_Execution.png, 800px)]]
    326 
    327 '''4.''' Најбавните операции се full scan на табелите:
    328  * `Project` - 26k cost
    329  * `Client_Vendor_Contract` - 7k cost
    330 
    331 [[Image(Budget_per_Vendor_Scan.png, 800px)]]
    332 
    333 '''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1 (319ms → 39ms). Времето изминато во извршување на query-то по индексирање изнесува:
    334 
    335 [[Image(Budget_per_Vendor_Execution_After_Indexing.png, 800px)]]
    336 
    337 [[Image(Budget_per_Vendor_Scan_After_Indexing.png, 800px)]]
     342== View11: Број на проекти по статус по клиент (vw_project_count_by_status_per_client) ==
     343
     344'''1.''' Примарен филтер за погледот `vw_project_count_by_status_per_client` ќе биде според неговото id (client_id на клиентот).
     345
     346'''2.''' Примарен случај на употреба ќе е преглед на бројот на проекти групирани по статус за одреден клиент. Овој поглед е аналитички по природа (пресметува агрегатни вредности со COUNT и GROUP BY) и не бара директно индексирање.
     347
     348'''3.''' Иницијалното время за извршување на погледот е '''317ms'''.
     349
     350[[Image(Project_Count_By_Status_Per_Client_Execution.png, 800px)]]
     351
     352'''4.''' Најбавните операции се full scan на табелите:
     353 * `Project` - 26k cost
     354 * `Client_Vendor_Contract` - 7k cost
     355
     356[[Image(Project_Count_By_Status_Per_Client_Scan.png, 800px)]]
     357
     358'''5.''' Иако овој поглед е аналитички, беше забележано дека присуството на `idx_cvc_client_id` го влошуваше времето на извршување (317ms → 1s 430ms). По отстранување на тој индекс, перформансите се стабилизирани со индексите `idx_project_contract_id` и `idx_cvc_vendor_id` од View1. Времето изминато во извршување на query-то по индексирање изнесува:
     359
     360[[Image(Project_Count_by_Status_per_Client_Execution_After_Indexing.png, 800px)]]
     361
     362[[Image(Project_Count_by_Status_per_Client_Scan_After_Indexing.png, 800px)]]
    338363
    339364'''6.''' Времето на извршување на операциите insert и update останува непроменето бидејќи не се додадени нови индекси за овој поглед.
     
    341366----
    342367
    343 == View11: Број на проекти по статус по клиент (vw_project_count_by_status_per_client) ==
    344 
    345 '''1.''' Примарен филтер за погледот `vw_project_count_by_status_per_client` ќе биде според неговото id (client_id на клиентот).
    346 
    347 '''2.''' Примарен случај на употреба ќе е преглед на бројот на проекти групирани по статус за одреден клиент. Овој поглед е аналитички по природа (пресметува агрегатни вредности со COUNT и GROUP BY) и не бара директно индексирање.
     368== View12: Број на проекти по статус по продавач (vw_project_count_by_status_per_vendor) ==
     369
     370'''1.''' Примарен филтер за погледот `vw_project_count_by_status_per_vendor` ќе биде според неговото id (vendor_id на продавачот).
     371
     372'''2.''' Примарен случај на употреба ќе е преглед на бројот на проекти групирани по статус за одреден продавач. Овој поглед е аналитички по природа (пресметува агрегатни вредности со COUNT и GROUP BY) и не бара директно индексирање. Сепак, перформансите на овој поглед се подобрени поради индексирањето применето во View1.
    348373
    349374'''3.''' Иницијалното время за извршување на погледот е '''317ms'''.
    350375
    351 [[Image(Project_Count_By_Status_Per_Client_Execution.png, 800px)]]
    352 
    353 '''4.''' Најбавните операции се full scan на табелите:
    354  * `Project` - 26k cost
    355  * `Client_Vendor_Contract` - 7k cost
    356 
    357 [[Image(Project_Count_By_Status_Per_Client_Scan.png, 800px)]]
    358 
    359 '''5.''' Иако овој поглед е аналитички, беше забележано дека присуството на `idx_cvc_client_id` го влошуваше времето на извршување (317ms → 1s 430ms). По отстранување на тој индекс, перформансите се стабилизирани со индексите `idx_project_contract_id` и `idx_cvc_vendor_id` од View1. Времето изминато во извршување на query-то по индексирање изнесува:
    360 
    361 [[Image(Project_Count_by_Status_per_Client_Execution_After_Indexing.png, 800px)]]
    362 
    363 [[Image(Project_Count_by_Status_per_Client_Scan_After_Indexing.png, 800px)]]
     376[[Image(Project_Count_By_Status_Per_Vendor_Execution.png, 800px)]]
     377
     378'''4.''' Најбавните операции се full scan на табелите:
     379 * `Project` - 26k cost
     380 * `Client_Vendor_Contract` - 7k cost
     381
     382[[Image(Project_Count_By_Status_Per_Vendor_Scan.png, 800px)]]
     383
     384'''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1 (317ms → 63ms). Времето изминато во извршување на query-то по индексирање изнесува:
     385
     386[[Image(Project_Count_by_Status_per_Vendor_Execution_After_Indexing.png, 800px)]]
     387
     388[[Image(Project_Count_by_Status_per_Vendor_Scan_After_Indexing.png, 800px)]]
    364389
    365390'''6.''' Времето на извршување на операциите insert и update останува непроменето бидејќи не се додадени нови индекси за овој поглед.
    366 
    367 ----
    368 
    369 == View12: Број на проекти по статус по продавач (vw_project_count_by_status_per_vendor) ==
    370 
    371 '''1.''' Примарен филтер за погледот `vw_project_count_by_status_per_vendor` ќе биде според неговото id (vendor_id на продавачот).
    372 
    373 '''2.''' Примарен случај на употреба ќе е преглед на бројот на проекти групирани по статус за одреден продавач. Овој поглед е аналитички по природа (пресметува агрегатни вредности со COUNT и GROUP BY) и не бара директно индексирање. Сепак, перформансите на овој поглед се подобрени поради индексирањето применето во View1.
    374 
    375 '''3.''' Иницијалното время за извршување на погледот е '''317ms'''.
    376 
    377 [[Image(Project_Count_By_Status_Per_Vendor_Execution.png, 800px)]]
    378 
    379 '''4.''' Најбавните операции се full scan на табелите:
    380  * `Project` - 26k cost
    381  * `Client_Vendor_Contract` - 7k cost
    382 
    383 [[Image(Project_Count_By_Status_Per_Vendor_Scan.png, 800px)]]
    384 
    385 '''5.''' Иако овој поглед е аналитички и не бара директно индексирање, перформансите се подобрени поради индексите `idx_project_contract_id` и `idx_cvc_vendor_id` креирани во View1 (317ms → 63ms). Времето изминато во извршување на query-то по индексирање изнесува:
    386 
    387 [[Image(Project_Count_by_Status_per_Vendor_Execution_After_Indexing.png, 800px)]]
    388 
    389 [[Image(Project_Count_by_Status_per_Vendor_Scan_After_Indexing.png, 800px)]]
    390 
    391 '''6.''' Времето на извршување на операциите insert и update останува непроменето бидејќи не се додадени нови индекси за овој поглед.