utangulizi
Mara nyingi kuna haja ya kuripoti kwa msimamizi kwa wakati halisi kuhusu matatizo yanayohusiana na hifadhidata (database).
Makala haya yataelezea kile kinachohitaji kusanidiwa katika Zabbix ili kufuatilia hifadhidata ya Seva ya MS SQL.
Tafadhali kumbuka kuwa maelezo ya jinsi ya kusanidi hayatatolewa, hata hivyo, fomula na mapendekezo ya jumla, pamoja na maelezo ya kina ya kuongeza vipengele vya data maalum kupitia taratibu zilizohifadhiwa zitatolewa katika makala hii.
Pia, vihesabu kuu vya utendaji pekee vitajadiliwa hapa.
uamuzi
Kwanza, nitaelezea kaunta hizo zote za utendakazi (kupitia vipengele vya data katika Zabbix) tunavyohitaji:
- Disk ya mantiki
- Wastani wa Diski sekunde/Soma
Inaonyesha muda wa wastani, unaoonyeshwa kwa sekunde, wa kusoma data kutoka kwa diski. Thamani ya wastani ya kaunta ya utendaji. Sekunde ya diski/Soma haipaswi kuzidi milisekunde 10. Thamani ya juu zaidi ya kihesabu cha utendaji Wastani. Sekunde ya diski/Soma haipaswi kuzidi milisekunde 50.Zabbix: perf_counter[LogicalDisk(_Total)Avg. Disk sec/Soma], na ni muhimu pia kufuatilia diski inayotaka, kwa mfano kama hii: perf_counter[LogicalDisk(C:)Avg. Sekunde ya diski/Soma]
Anzisha mifano:
{NODE_NAME:perf_counter[LogicalDisk(_Total)Avg. Sekunde ya diski/Soma].mwisho()}>0.005, kiwango cha juu
ΠΈ
{NODE_NAME:perf_counter[LogicalDisk(_Total)Avg. Sekunde ya diski/Soma].mwisho()}>0.0025, kiwango cha wastani - Wastani wa Diski sekunde/Andika
Inaonyesha muda wa wastani, unaoonyeshwa kwa sekunde, wa kuandika data kwenye diski. Thamani ya wastani ya kaunta ya utendaji. Sekunde ya diski/Andika isizidi milisekunde 10. Thamani ya juu zaidi ya kihesabu cha utendaji Wastani. Sekunde ya diski/Andika isizidi milisekunde 50.Zabbix: perf_counter[LogicalDisk(_Total)Avg. Disk sec/Write], na ni muhimu pia kufuatilia diski inayotakiwa, kwa mfano kama hii: perf_counter[LogicalDisk(C:)Avg. Sekunde ya diski/Andika]
Anzisha mifano:
{NODE_NAME:perf_counter[LogicalDisk(_Total)Avg. Disk sec/Write].mwisho()}>0.005, kiwango cha juu
ΠΈ
{NODE_NAME:perf_counter[LogicalDisk(_Total)Avg. Sekunde ya diski/Andika].mwisho()}>0.0025, kiwango cha wastani - Wastani wa Urefu wa Foleni ya Diski
Urefu wa wastani wa foleni wa maombi kwenye diski. Huonyesha idadi ya maombi ya diski yanayosubiri kuchakatwa ndani ya muda maalum. Foleni ya si zaidi ya 2 kwa diski moja inachukuliwa kuwa ya kawaida. Ikiwa kuna maombi zaidi ya mawili kwenye foleni, basi diski inaweza kuwa imejaa na haiwezi kushughulikia maombi yanayoingia. Unaweza kujua ni shughuli gani ambazo diski haiwezi kushughulikia kwa kutumia vihesabio vya wastani. Urefu wa Foleni ya Kusoma kwa Diski na Wastani. Urefu wa Foleni ya Disk Wright (foleni ya maombi ya kuandika).
Thamani ya wastani Urefu wa Foleni ya Diski haupimwi, lakini hukokotolewa kwa kutumia sheria ya Little kutoka kwa nadharia ya hisabati ya kupanga foleni. Kwa mujibu wa sheria hii, idadi ya maombi yanayosubiri kushughulikiwa, kwa wastani, ni sawa na mzunguko wa maombi yanayozidishwa na muda wa usindikaji wa ombi. Wale. kwa upande wetu Avg. Urefu wa Foleni ya Disk = (Uhamisho wa Disk/sek) * (Wastani. Sekunde ya Disk/Uhamisho).Wastani. Urefu wa Foleni ya Diski hupewa kama moja ya vihesabio kuu vya kuamua mzigo kwenye mfumo mdogo wa diski, hata hivyo, ili kutathmini vya kutosha, ni muhimu kuwakilisha kwa usahihi muundo wa mwili wa mfumo wa uhifadhi. Kwa mfano, kwa gari moja ngumu thamani kubwa kuliko 2 inachukuliwa kuwa muhimu, na ikiwa diski iko kwenye safu ya RAID ya disks 4, basi unapaswa kuwa na wasiwasi ikiwa thamani ni kubwa kuliko 4 * 2 = 8.
Zabbix: perf_counter[LogicalDisk(_Total)Avg. Urefu wa Foleni ya Diski], na ni muhimu pia kufuatilia diski inayotaka, kwa mfano kama hii: perf_counter[LogicalDisk(C:)Avg. Urefu wa Foleni ya Diski]
- Wastani wa Diski sekunde/Soma
- Kumbukumbu
- Kurasa/sek
Inaonyesha idadi ya kurasa ambazo Seva ya SQL ilisoma kutoka kwenye diski au iliandika kwenye diski ili kutatua ufikiaji wa kurasa za kumbukumbu ambazo hazikupakiwa kwenye RAM wakati wa ufikiaji. Thamani hii ni jumla ya Ingizo la Kurasa/sekunde na Pato/sekunde za Kurasa, na pia inazingatia paging (paging/swaping) ya akiba ya mfumo kwa ajili ya kufikia faili za data ya programu. Kwa kuongeza, hii inajumuisha paging ya faili zisizo na kache ambazo zimepangwa moja kwa moja kwenye kumbukumbu. Hiki ndicho kihesabu kikuu ambacho kinapaswa kufuatiliwa ikiwa unakabiliwa na utumiaji wa kumbukumbu ya juu na kuhusishwa kwa kurasa nyingi kupita kiasi. Kaunta hii inabainisha kiasi cha ubadilishaji na thamani yake ya kawaida (sio kilele) inapaswa kuwa karibu na sifuri. Kuongezeka kwa ubadilishaji kunaonyesha hitaji la kuongeza RAM au kupunguza idadi ya programu za programu zinazoendesha kwenye seva.Zabbix: perf_counter[MemoryPages/sek] Mfano wa kuchochea:
{NODE_NAME:perf_counter[MemoryPages/sec].min(5m)}>1000, maelezo ya kiwango - Makosa ya Ukurasa/sek
Hii ndio thamani ya kaunta ya ukurasa. Hitilafu ya ukurasa hutokea wakati mchakato unarejelea ukurasa wa kumbukumbu ambao hauko katika seti ya kazi ya RAM. Kaunta hii inazingatia makosa yote ya ukurasa ambayo yanahitaji ufikiaji wa diski, na yale yanayosababishwa na ukurasa kuwa nje ya seti ya kufanya kazi katika RAM. Wachakataji wengi wanaweza kushughulikia hitilafu za ukurasa wa Aina ya XNUMX bila kuchelewa sana. Hata hivyo, kushughulikia hitilafu za ukurasa wa XNUMX zinazohitaji ufikiaji wa diski zinaweza kusababisha ucheleweshaji mkubwa.
Zabbix: perf_counter[MemoryPage Makosa/sek] Mfano wa kuchochea:
{NODE_NAME:perf_counter[MemoryPage Faults/sec].min(5m)}>1000, maelezo ya kiwango - Baiti Zinazopatikana
Hufuatilia kiasi cha kumbukumbu kinachopatikana katika baiti kwa michakato mbalimbali kuendeshwa. Usomaji mdogo unaonyesha kumbukumbu ya chini. Suluhisho ni kuongeza kumbukumbu. Mita hii katika hali nyingi inapaswa kuwa mara kwa mara juu ya 5000 kV.
Inaleta maana kuweka kizingiti cha Mbytes Zinazopatikana mwenyewe kwa sababu zifuatazo:β’ 50% ya kumbukumbu ya bure inapatikana = Bora
β’ 25% ya kumbukumbu inayopatikana = Inahitaji uangalizi
β’10% bure = Matatizo yanayoweza kutokea
β’Chini ya 5% ya kumbukumbu inayopatikana = Muhimu kwa kasi, unahitaji kuingilia kati.
Zabbix: perf_counter[MemoryAvailable Bytes]
- Kurasa/sek
- Kichakataji (Jumla): % Muda wa Kichakataji
Kaunta hii inaonyesha asilimia ya muda ambayo kichakataji kilikuwa na shughuli nyingi katika kutekeleza shughuli za nyuzi zisizo na shughuli. Thamani hii inaweza kuzingatiwa kama sehemu ya muda unaotumiwa kufanya kazi muhimu. Kila kichakataji kinaweza kupewa uzi wa kufanya kazi, ambao hutumia mizunguko ya kichakataji isiyo na tija isiyotumiwa na nyuzi zingine. Kaunta hii ina sifa ya kilele kifupi ambacho kinaweza kufikia asilimia 100. Hata hivyo, ikiwa kuna muda uliopanuliwa ambapo matumizi ya processor ni zaidi ya asilimia 80, basi mfumo utakuwa na ufanisi zaidi kwa kutumia wasindikaji zaidi.Zabbix: perf_counter[Processor(_Total)% Muda wa Kichakataji], hapa inaweza pia kuonyeshwa kwa msingi
Mfano wa kuchochea:
{NODE_NAME:perf_counter[Processor(_Jumla)% Muda wa Kichakataji].min(5m)}>80, maelezo ya kiwango - Kiolesura cha Mtandao (*): % Baiti Jumla/sekunde
Jumla ya idadi ya baiti zilizotumwa na kupokewa kwa sekunde katika violesura vyote. Huu ni kipimo data cha kiolesura (katika baiti). Ni muhimu kulinganisha thamani ya counter hii na bandwidth ya juu ya kadi ya mtandao. Kwa ujumla, kaunta hii inapaswa kuonyesha matumizi yasiyozidi 50% ya kipimo data cha adapta ya mtandao.
Zabbix: perf_counter[Muunganisho wa Mtandao(*)Baiti Zimetumwa/sekunde] - Seva ya MS SQL: Mbinu za Ufikiaji
Kipengele cha Mbinu za Ufikiaji katika Seva ya SQL hutoa vihesabio ili kusaidia kufuatilia ufikiaji wa data ya kimantiki ndani ya hifadhidata. Ufikiaji wa kimwili wa kurasa za hifadhidata kwenye diski unadhibitiwa kwa kutumia vihesabio vya kidhibiti cha bafa. Kufuatilia mbinu za kufikia data katika hifadhidata husaidia kubainisha kama utendakazi wa hoja unaweza kuboreshwa kwa kuongeza au kubadilisha faharasa, kuongeza au kuhamisha sehemu, kuongeza faili au vikundi vya faili, kugawanya faharasa, au kubadilisha maandishi ya hoja. Zaidi ya hayo, unaweza kutumia vihesabio vya kipengee cha Mbinu za Ufikiaji ili kufuatilia ukubwa wa data, faharasa, na nafasi ya bure katika hifadhidata yako, uwezo wa ufuatiliaji na ugawaji kwa kila tukio la seva. Mgawanyiko wa faharasa kupita kiasi unaweza kupunguza utendakazi kwa kiasi kikubwa.- Mgawanyiko wa Ukurasa/sek
Idadi ya migawanyo ya ukurasa kwa sekunde iliyotekelezwa kutokana na kufurika kwa ukurasa wa faharasa. Thamani ya juu ya kipimo hiki inamaanisha kuwa wakati wa kufanya shughuli za kuingiza na kusasisha kwenye data, Seva ya SQL lazima itekeleze idadi kubwa ya shughuli zinazotumia rasilimali ili kugawanya kurasa na kuhamisha sehemu ya ukurasa uliopo hadi eneo jipya. Shughuli kama hizo zinapaswa kuepukwa kila inapowezekana. Unaweza kujaribu kutatua shida kwa njia mbili:
β unda faharasa iliyounganishwa kwa safu wima zinazoongeza kiotomatiki. Katika kesi hii, rekodi mpya hazitawekwa ndani ya kurasa ambazo tayari zimechukuliwa na data, lakini zitachukua kurasa mpya mfululizo;
- jenga upya faharasa kwa kuongeza thamani ya kigezo cha Fillfactor. Chaguo hili hukuruhusu kuhifadhi nafasi ya bure katika kurasa za faharasa ambazo zitatumika kuchukua data mpya, bila hitaji la shughuli za kugawanya ukurasa.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Access MethodsPage Splits/sec",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Access MethodsPage Splits/sec",30].last()}>{NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:SQL StatisticsBatch Requests/sec",30].last()} /5, kiwango-habari - Uchanganuzi Kamili/sekunde
Idadi isiyo na kikomo ya uhakiki kamili kwa sekunde. Shughuli hizi ni pamoja na uchanganuzi wa jedwali kuu na uchanganuzi kamili wa faharasa. Ongezeko thabiti la kiashiria hiki linaweza kuonyesha uharibifu wa mfumo (ukosefu wa indexes muhimu, mgawanyiko wao mkali, kushindwa kwa optimizer kutumia indexes zilizopo, uwepo wa indexes zisizotumiwa). Hata hivyo, ni muhimu kuzingatia kwamba skanning kamili katika meza ndogo sio mbaya kila wakati, kwa sababu ikiwa unaweza kuweka meza nzima kwenye RAM, basi skanning kamili itakuwa haraka. Lakini katika hali nyingi, ongezeko thabiti la counter hii litaonyesha uharibifu wa mfumo. Yote hii inatumika tu kwa mifumo ya OLTP. Katika mifumo ya OLAP, uchunguzi kamili wa mara kwa mara ni wa kawaida.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Access MethodsFull Scans/sekunde",30]
- Mgawanyiko wa Ukurasa/sek
- Seva ya MS SQL: Kidhibiti cha Bafa
Kipengele cha Kidhibiti cha Buffer hutoa vihesabio vinavyokusaidia kufuatilia jinsi SQL Server inavyotumia rasilimali zifuatazo:
- kumbukumbu ya kuhifadhi kurasa za data;
- vihesabio vinavyofuatilia I/O halisi jinsi Seva ya SQL inavyosoma na kuandika kurasa za hifadhidata;
β upanuzi wa bwawa la bafa ili kupanua akiba ya akiba kwa kutumia kumbukumbu isiyo na tete ya haraka, kama vile viendeshi vya hali thabiti (SSD);
- Kufuatilia kumbukumbu na vihesabio vinavyotumiwa na SQL Server husaidia kupata taarifa zifuatazo;
- ikiwa kuna vikwazo vinavyosababishwa na ukosefu wa kumbukumbu ya kimwili. Ikiwa data inayopatikana mara kwa mara haiwezi kuhifadhiwa kwenye kashe, Seva ya SQL inalazimika kuisoma kutoka kwa diski;
Je, inawezekana kuboresha utendakazi wa hoja kwa kuongeza kiasi cha kumbukumbu au kutenga kumbukumbu ya ziada kwa kache data au kuhifadhi miundo ya ndani ya Seva ya SQL?
- Ni mara ngapi SQL Server inasoma data kutoka kwa diski. Ikilinganishwa na shughuli zingine kama vile ufikiaji wa kumbukumbu, I/O halisi huchukua muda mrefu kukamilika. Kupunguza I/O kunaweza kuboresha utendakazi wa hoja.- Akiba ya Buffer iligonga redio
Inaonyesha ni data ngapi ya Seva ya SQL inaweza kutoshea kwenye kache bafa. Thamani hii ya juu, ni bora zaidi, kwa sababu Ili Seva ya SQL ifikie kurasa za data kwa ufanisi, lazima ziwe kwenye akiba ya akiba, na kusiwe na shughuli zozote za kuingiza/towe (I/O). Ukiona kushuka kwa kasi kwa thamani ya wastani ya kaunta hii, unapaswa kuzingatia kuongeza RAM. Kiashiria hiki kinapaswa kuwa zaidi ya 90% kwa mifumo ya OLTP na zaidi ya 50% kwa mifumo ya OLAP.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Uwiano wa akiba wa Akiba ya BufferBuffer",30] Anzisha mifano: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Buffer ManagerBuffer hit ratio",30].last()}<70, kiwango cha juu
ΠΈ
{NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Buffer ManagerBuffer hit ratio",30].last()}<80, level-kati - Matarajio ya maisha ya ukurasa
Inaonyesha muda ambao ukurasa utabaki kwenye kumbukumbu katika hali yake ya sasa. Ikiwa thamani itaendelea kushuka, inamaanisha kuwa mfumo unatumia vibaya hifadhi ya akiba. Kwa hivyo, utendakazi wa kumbukumbu unaweza kusababisha matatizo na kusababisha utendaji duni. Inafaa kumbuka kuwa hakuna kiashirio cha ulimwengu wote hapa chini ambacho mtu anaweza kuhukumu waziwazi kuwa mfumo unatumia vibaya bwawa la buffer (kiashiria cha sekunde 300 kimepitwa na wakati tangu MS SQL Server 2012).
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Buffer ManagerUkurasa wa kuishi",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Buffer ManagerPage life expectancy",30].last()}<5, kiwango-maelezo
- Akiba ya Buffer iligonga redio
- Seva ya MS SQL: Takwimu za Jumla
Kipengee cha Takwimu za Jumla katika Seva ya SQL hutoa vihesabio vinavyokuruhusu kufuatilia shughuli za jumla za seva, kama vile idadi ya miunganisho inayotumika wakati mmoja na idadi ya watumiaji kwa sekunde wanaounganisha au kujiondoa kutoka kwa kompyuta inayoendesha mfano wa Seva ya SQL. Vipimo hivi ni muhimu katika mifumo mikubwa ya uchakataji wa miamala mtandaoni (OLTP) ambapo idadi kubwa ya wateja huunganisha kila mara na kujiondoa kwenye mfano wa Seva ya SQL.- Mchakato umezuiwa
Idadi ya michakato iliyozuiwa kwa sasa.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Taratibu za Jumla za Takwimu zimezuiwa",30] Mfano wa kuchochea: ({NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Taratibu za Jumla za Takwimu zimezuiwa",30].min(2m,0)}>=0)
na ({NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Taratibu za Jumla za Takwimu zimezuiwa",30].time(0)}>=50000)
na ({NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Taratibu za Jumla zimezuiwa",30].time(0)}<=230000), kiwango cha taarifa (hapa kuna kizuizi cha kuashiria kutoka 05:00 hadi 23:00) - Viunganisho vya Mtumiaji
Idadi ya watumiaji waliounganishwa kwa Seva ya SQL kwa sasa.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:General StatisticsUser Connections",30]
- Mchakato umezuiwa
- Seva ya MS SQL: Kufuli
Kitu cha Kufuli katika Seva ya Microsoft SQL hutoa maelezo kuhusu kufuli za Seva ya SQL zilizopatikana kwa aina za rasilimali mahususi. Kufuli hutolewa kwenye nyenzo za Seva ya SQL, kama vile safu mlalo zilizosomwa au kurekebishwa na muamala, ili kuzuia miamala mingi kutumia rasilimali kwa wakati mmoja. Kwa mfano, ikiwa kufuli ya kipekee (X) itapatikana kwa muamala kwenye safu mlalo kwenye jedwali, hakuna muamala mwingine unaoweza kubadilisha safu mlalo hiyo hadi kufuli kuachiliwe. Kupunguza matumizi ya kufuli huongeza upatanifu, jambo ambalo linaweza kuboresha utendakazi kwa ujumla. Matukio kadhaa ya kitu cha Kufuli yanaweza kufuatiliwa kwa wakati mmoja, ambayo kila moja itawakilisha kufuli kwenye aina tofauti ya rasilimali.- Muda Wastani wa Kusubiri (ms)
Muda wa wastani wa kungoja (katika milisekunde) kwa maombi yote ya kufunga ambayo yalihitaji kusubiri. Kaunta hii inaonyesha muda gani, kwa wastani, michakato ya mtumiaji inabidi kusubiri kwenye foleni ili kupata kufuli kwenye rasilimali. Thamani ya juu inayoruhusiwa ya kaunta hii inategemea kabisa kazi yako; ni vigumu kubainisha thamani yoyote ya wastani kwa programu zote. Ikiwa kaunta hii ni ya juu sana, inaweza kuonyesha matatizo ya kufunga katika hifadhidata yako.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Locks(_Jumla)Wastani wa Muda wa Kusubiri (ms)",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Locks(_Jumla)Wastani wa Muda wa Kusubiri (ms)",30].last()}>=500, maelezo ya kiwango - Muda wa Kusubiri kwa Kufuli (ms)
Jumla ya muda wa kusubiri wa kufunga (katika milisekunde) katika sekunde iliyopita.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Locks(_Total)Lock Suit Time (ms)",30] - Lock Inasubiri/sek
Idadi ya nyakati katika sekunde ya mwisho ambazo uzi ulilazimika kungoja kwa sababu ya ombi la kufuli.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Locks(_Total)Lock Waits/sec",30] - Funga Muda/sek
Idadi ya mara ambazo kufuli haiwezi kupatikana na robin ya pande zote. Thamani ya kigezo cha usanidi wa kihesabu cha SQL Server spin huamua ni mara ngapi nyuzi inaweza kusokota kabla ya kuzimwa na uzi hautumiki.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Locks(_Total)Lock Timeouts/sekunde",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Vifungo(_Jumla)Vifungio(_Jumla)Vifungio vya Muda/sekunde",30].last()}>1000, maelezo ya kiwango - Funga Maombi/sekunde
Idadi ya maombi kwa sekunde ya aina maalum ya kufuli.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Locks(_Jumla)Maombi ya Kufunga/sekunde",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Locks(_Jumla)Maombi ya Kufunga/sekunde",30].last()}>500000, maelezo ya kiwango - Lock Idadi ya Deadlocks/sek
Idadi ya maombi ya kufuli kwa sekunde ambayo husababisha kufuli. Kuwepo kwa mikwamo kunaonyesha maswali ambayo hayajaundwa vizuri ambayo yanazuia rasilimali zinazoshirikiwa.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Number of Deadlocks/sec",30] Mfano wa kuchochea: {NODE_NAME:perf_counter["MSSQL$INSTANCE_NAME:Locks(_Jumla)Idadi ya Deadlocks/sekunde",30].last()}>1, kiwango cha juu
- Muda Wastani wa Kusubiri (ms)
- Seva ya MS SQL: Meneja wa Kumbukumbu
Kipengele cha Kidhibiti Kumbukumbu katika Seva ya Microsoft SQL hutoa vihesabio vya kufuatilia matumizi ya kumbukumbu ya seva nzima. Kufuatilia matumizi ya kumbukumbu ya seva nzima ili kutathmini shughuli za mtumiaji na matumizi ya rasilimali kunaweza kusaidia kutambua vikwazo vya utendaji. Ufuatiliaji wa kumbukumbu unaotumiwa na mfano wa SQL Server unaweza kusaidia kuamua:
- iwe kuna uhaba wa kumbukumbu haitoshi kuhifadhi data inayotumika mara kwa mara kwenye kashe. Ikiwa hakuna kumbukumbu ya kutosha, Seva ya SQL lazima ichukue data kutoka kwa diski;
- Iwapo utendakazi wa hoja unaweza kuboreshwa ikiwa kumbukumbu iliongezwa au kiasi cha kumbukumbu kinachopatikana cha data ya akiba au miundo ya ndani ya Seva ya SQL iliongezwa.- Ruzuku za Kumbukumbu Bora
Huonyesha jumla ya idadi ya michakato iliyopata kumbukumbu ya nafasi ya kazi. Ikiwa kiashiria kinapungua kwa kasi, ni muhimu kuongeza RAM.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Ruzuku za Kumbukumbu za Memory Memory Zimesalia",30] - Ruzuku za Kumbukumbu Zinasubiri
Inaonyesha jumla ya idadi ya michakato inayosubiri kugawiwa kumbukumbu ya kufanya kazi. Kwa ukuaji thabiti wa kiashiria, ni muhimu kuongeza RAM.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:Ruzuku za Kumbukumbu za Memory Memory Pending",30]
- Ruzuku za Kumbukumbu Bora
- Seva ya MS SQL: Takwimu
Kipengee cha Takwimu katika Seva ya Microsoft SQL hutoa vihesabio vya kufuatilia mkusanyo na aina za hoja zinazotumwa kwa mfano wa Seva ya SQL. Kufuatilia idadi ya makusanyo na marejesho ya hoja na idadi ya bechi zilizopokelewa na mfano wa SQL Server hutoa maarifa kuhusu jinsi SQL Server inavyotekeleza maswali ya mtumiaji kwa haraka na jinsi kiboresha hoja huyachakata kwa ufanisi.- Maombi ya Kundi/sek
Idadi ya pakiti za amri za Transact-SQL zilizopokelewa kwa sekunde. Takwimu hizi huathiriwa na vikwazo vyovyote (I/O, idadi ya watumiaji, saizi ya akiba, utata wa hoja, n.k.). Idadi kubwa ya maombi ya pakiti inaonyesha upitishaji wa juu.
Zabbix: perf_counter["MSSQL$INSTANCE_NAME:SQL StatisticsBatch Requests/sec",30]
- Maombi ya Kundi/sek
Kando na yote yaliyo hapo juu, unaweza pia kusanidi vipengele vingine vya data (pamoja na kuunda vichochezi juu yake na arifa zinazofuata). Kwa mfano:
1) kiasi cha nafasi ya bure ya diski
2) saizi za faili za hifadhidata na kumbukumbu
na kadhalika.
Hata hivyo, viashiria hivi vyote havionyeshi tatizo la maswali ya wakati halisi.
Kwa kufanya hivyo, unahitaji kuunda counters yako maalum.
Kwa sababu za usiri, sitatoa mifano ya vihesabio kama hivyo. Kwa kuongeza, zimeundwa kipekee kwa kila mfumo. Lakini ninakumbuka kuwa kwa mifumo kama 1C, NAV na CRM, kaunta maalum zinaweza kuundwa pamoja na wasanidi husika.
Nitatoa mfano wa kuunda kiashirio cha jumla ambacho kinaonyesha ni maombi mangapi yanaendeshwa na ni maombi mangapi yanasubiri (kusimamishwa au kuzuiwa) katika kila hatua kwa wakati.
Ili kufanya hivyo, unahitaji kuunda utaratibu uliohifadhiwa:
Kanuni
USE [ΠΠΠ―_ΠΠΠΠ«_ΠΠΠΠΠ«Π₯]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [nav].[ZabbixGetCountRequestStatus]
@Status nvarchar(255)
AS
BEGIN
/*
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»-Π²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΡΠ°ΡΡΡΠΎΠΌ
*/
SET NOCOUNT ON;
select count(*) as [Count]
from sys.dm_exec_requests ER with(readuncommitted)
where [status]=@Status
END
Ifuatayo, unahitaji kwenda kwenye folda ambayo Zabbix iko (zabbixconfuserparams.d) na uunda faili 2 na kiendelezi cha ps1 (PowerShell) na uandike nambari zifuatazo katika kila moja yao:
Msimbo wa kuendesha maswali
$SQLServer = "ΠΠΠΠΠΠΠΠ_ΠΠΠΠΠΠΠΠ―Π Π";
$uid = "ΠΠΠΠΠ";
$pwd = "ΠΠΠ ΠΠΠ¬";
$Status="running";
$connectionString = "Server = $SQLServer; Database=ΠΠΠΠΠΠΠΠ_ΠΠ; Integrated Security = False; User ID = $uid; Password = $pwd;";
$connection = New-Object System.Data.SqlClient.SqlConnection;
$connection.ConnectionString = $connectionString;
#Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π·Π°ΠΏΡΠΎΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ MSSQL / Create a request directly to MSSQL
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand;
$SqlCmd.CommandType = [System.Data.CommandType]::StoredProcedure;
$SqlCmd.CommandText = "nav.ZabbixGetCountRequestStatus";
$SqlCmd.Connection = $Connection;
$paramStatus=$SqlCmd.Parameters.Add("@Status" , [System.Data.SqlDbType]::VarChar);
$paramStatus.Value = $Status;
$connection.Open();
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter;
$SqlAdapter.SelectCommand = $SqlCmd;
$DataSet = New-Object System.Data.DataSet;
$SqlAdapter.Fill($DataSet) > $null;
$connection.Close();
$result = $DataSet.Tables[0].Rows[0]["Count"];
write-host $result;
Msimbo wa maombi yanayosubiri
$SQLServer = "ΠΠΠΠΠΠΠΠ_ΠΠΠΠΠΠΠΠ―Π Π";
$uid = "ΠΠΠΠΠ";
$pwd = "ΠΠΠ ΠΠΠ¬";
$Status="suspended";
$connectionString = "Server = $SQLServer; Database=ΠΠΠΠΠΠΠΠ_ΠΠ; Integrated Security = False; User ID = $uid; Password = $pwd;";
$connection = New-Object System.Data.SqlClient.SqlConnection;
$connection.ConnectionString = $connectionString;
#Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π·Π°ΠΏΡΠΎΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ MSSQL / Create a request directly to MSSQL
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand;
$SqlCmd.CommandType = [System.Data.CommandType]::StoredProcedure;
$SqlCmd.CommandText = "nav.ZabbixGetCountRequestStatus";
$SqlCmd.Connection = $Connection;
$paramStatus=$SqlCmd.Parameters.Add("@Status" , [System.Data.SqlDbType]::VarChar);
$paramStatus.Value = $Status;
$connection.Open();
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter;
$SqlAdapter.SelectCommand = $SqlCmd;
$DataSet = New-Object System.Data.DataSet;
$SqlAdapter.Fill($DataSet) > $null;
$connection.Close();
$result = $DataSet.Tables[0].Rows[0]["Count"];
write-host $result;
Sasa unahitaji kuunda faili yenye vigezo vya mtumiaji na kiendelezi cha .conf (au ongeza mistari kwenye faili iliyopo ya mtumiaji kama hiyo, ikiwa moja iliundwa mapema) na uingize mistari ifuatayo:
UserParameta=PARAMETER_NAME_NUMBER_of_QUERIES EXECUTED,powershell -NoProfile -ExecutionPolicy Bypass -Faili FULL_PATHzabbixconfuserparams.dFILE_NAME_FOR_EXECUTED_QUERYES.ps1
UserParameter=PARAMETER_NAME_NUMBER_WAITING_REQUESTS,powershell -NoProfile -ExecutionPolicy Bypass -Faili FULL_PATHzabbixconfuserparams.dFILE_NAME_FOR_WAITING_REQUESTS.ps1
Baada ya hayo, hifadhi faili ya .conf na uanze upya wakala wa Zabbix.
Baada ya hayo, tunaongeza vitu viwili vipya kwa Zabbix (katika kesi hii, majina na ufunguo ni sawa):
PARAMETER_NAME_NUMBER YA_REQUEST IMEFANYIKA
PARAMETER_NAME_NUMBER OF_WAITING_REQUESTS
Sasa unaweza kuunda grafu na vichochezi vya vipengee maalum vya data vilivyoundwa.
Ikiwa idadi ya maombi yanayosubiri inaongezeka kwa kasi, basi swala lifuatalo linaweza kuonyesha maombi yote yanayoendelea na yanayosubiri kwa wakati fulani na maelezo kutoka kwa wapi na chini ya ombi gani linatekelezwa, maandishi na mpango wa hoja, pamoja na maelezo mengine:
Kanuni
/*ΠΠΊΡΠΈΠ²Π½ΡΠ΅, Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅, ΡΡΠΎ ΡΠ²Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π°Π½ΡΡ*/
with tbl0 as (
select ES.[session_id]
,ER.[blocking_session_id]
,ER.[request_id]
,ER.[start_time]
,ER.[status]
,ES.[status] as [status_session]
,ER.[command]
,ER.[percent_complete]
,DB_Name(coalesce(ER.[database_id], ES.[database_id])) as [DBName]
,(select top(1) [text] from sys.dm_exec_sql_text(ER.[sql_handle])) as [TSQL]
,(select top(1) [objectid] from sys.dm_exec_sql_text(ER.[sql_handle])) as [objectid]
,(select top(1) [query_plan] from sys.dm_exec_query_plan(ER.[plan_handle])) as [QueryPlan]
,ER.[wait_type]
,ES.[login_time]
,ES.[host_name]
,ES.[program_name]
,ER.[wait_time]
,ER.[last_wait_type]
,ER.[wait_resource]
,ER.[open_transaction_count]
,ER.[open_resultset_count]
,ER.[transaction_id]
,ER.[context_info]
,ER.[estimated_completion_time]
,ER.[cpu_time]
,ER.[total_elapsed_time]
,ER.[scheduler_id]
,ER.[task_address]
,ER.[reads]
,ER.[writes]
,ER.[logical_reads]
,ER.[text_size]
,ER.[language]
,ER.[date_format]
,ER.[date_first]
,ER.[quoted_identifier]
,ER.[arithabort]
,ER.[ansi_null_dflt_on]
,ER.[ansi_defaults]
,ER.[ansi_warnings]
,ER.[ansi_padding]
,ER.[ansi_nulls]
,ER.[concat_null_yields_null]
,ER.[transaction_isolation_level]
,ER.[lock_timeout]
,ER.[deadlock_priority]
,ER.[row_count]
,ER.[prev_error]
,ER.[nest_level]
,ER.[granted_query_memory]
,ER.[executing_managed_code]
,ER.[group_id]
,ER.[query_hash]
,ER.[query_plan_hash]
,EC.[most_recent_session_id]
,EC.[connect_time]
,EC.[net_transport]
,EC.[protocol_type]
,EC.[protocol_version]
,EC.[endpoint_id]
,EC.[encrypt_option]
,EC.[auth_scheme]
,EC.[node_affinity]
,EC.[num_reads]
,EC.[num_writes]
,EC.[last_read]
,EC.[last_write]
,EC.[net_packet_size]
,EC.[client_net_address]
,EC.[client_tcp_port]
,EC.[local_net_address]
,EC.[local_tcp_port]
,EC.[parent_connection_id]
,EC.[most_recent_sql_handle]
,ES.[host_process_id]
,ES.[client_version]
,ES.[client_interface_name]
,ES.[security_id]
,ES.[login_name]
,ES.[nt_domain]
,ES.[nt_user_name]
,ES.[memory_usage]
,ES.[total_scheduled_time]
,ES.[last_request_start_time]
,ES.[last_request_end_time]
,ES.[is_user_process]
,ES.[original_security_id]
,ES.[original_login_name]
,ES.[last_successful_logon]
,ES.[last_unsuccessful_logon]
,ES.[unsuccessful_logons]
,ES.[authenticating_database_id]
,ER.[sql_handle]
,ER.[statement_start_offset]
,ER.[statement_end_offset]
,ER.[plan_handle]
,ER.[dop]
,coalesce(ER.[database_id], ES.[database_id]) as [database_id]
,ER.[user_id]
,ER.[connection_id]
from sys.dm_exec_requests ER with(readuncommitted)
right join sys.dm_exec_sessions ES with(readuncommitted)
on ES.session_id = ER.session_id
left join sys.dm_exec_connections EC with(readuncommitted)
on EC.session_id = ES.session_id
)
, tbl as (
select [session_id]
,[blocking_session_id]
,[request_id]
,[start_time]
,[status]
,[status_session]
,[command]
,[percent_complete]
,[DBName]
,OBJECT_name([objectid], [database_id]) as [object]
,[TSQL]
,[QueryPlan]
,[wait_type]
,[login_time]
,[host_name]
,[program_name]
,[wait_time]
,[last_wait_type]
,[wait_resource]
,[open_transaction_count]
,[open_resultset_count]
,[transaction_id]
,[context_info]
,[estimated_completion_time]
,[cpu_time]
,[total_elapsed_time]
,[scheduler_id]
,[task_address]
,[reads]
,[writes]
,[logical_reads]
,[text_size]
,[language]
,[date_format]
,[date_first]
,[quoted_identifier]
,[arithabort]
,[ansi_null_dflt_on]
,[ansi_defaults]
,[ansi_warnings]
,[ansi_padding]
,[ansi_nulls]
,[concat_null_yields_null]
,[transaction_isolation_level]
,[lock_timeout]
,[deadlock_priority]
,[row_count]
,[prev_error]
,[nest_level]
,[granted_query_memory]
,[executing_managed_code]
,[group_id]
,[query_hash]
,[query_plan_hash]
,[most_recent_session_id]
,[connect_time]
,[net_transport]
,[protocol_type]
,[protocol_version]
,[endpoint_id]
,[encrypt_option]
,[auth_scheme]
,[node_affinity]
,[num_reads]
,[num_writes]
,[last_read]
,[last_write]
,[net_packet_size]
,[client_net_address]
,[client_tcp_port]
,[local_net_address]
,[local_tcp_port]
,[parent_connection_id]
,[most_recent_sql_handle]
,[host_process_id]
,[client_version]
,[client_interface_name]
,[security_id]
,[login_name]
,[nt_domain]
,[nt_user_name]
,[memory_usage]
,[total_scheduled_time]
,[last_request_start_time]
,[last_request_end_time]
,[is_user_process]
,[original_security_id]
,[original_login_name]
,[last_successful_logon]
,[last_unsuccessful_logon]
,[unsuccessful_logons]
,[authenticating_database_id]
,[sql_handle]
,[statement_start_offset]
,[statement_end_offset]
,[plan_handle]
,[dop]
,[database_id]
,[user_id]
,[connection_id]
from tbl0
where [status] in ('suspended', 'running', 'runnable')
)
, tbl_group as (
select [blocking_session_id]
from tbl
where [blocking_session_id]<>0
group by [blocking_session_id]
)
, tbl_res_rec as (
select [session_id]
,[blocking_session_id]
,[request_id]
,[start_time]
,[status]
,[status_session]
,[command]
,[percent_complete]
,[DBName]
,[object]
,[TSQL]
,[QueryPlan]
,[wait_type]
,[login_time]
,[host_name]
,[program_name]
,[wait_time]
,[last_wait_type]
,[wait_resource]
,[open_transaction_count]
,[open_resultset_count]
,[transaction_id]
,[context_info]
,[estimated_completion_time]
,[cpu_time]
,[total_elapsed_time]
,[scheduler_id]
,[task_address]
,[reads]
,[writes]
,[logical_reads]
,[text_size]
,[language]
,[date_format]
,[date_first]
,[quoted_identifier]
,[arithabort]
,[ansi_null_dflt_on]
,[ansi_defaults]
,[ansi_warnings]
,[ansi_padding]
,[ansi_nulls]
,[concat_null_yields_null]
,[transaction_isolation_level]
,[lock_timeout]
,[deadlock_priority]
,[row_count]
,[prev_error]
,[nest_level]
,[granted_query_memory]
,[executing_managed_code]
,[group_id]
,[query_hash]
,[query_plan_hash]
,[most_recent_session_id]
,[connect_time]
,[net_transport]
,[protocol_type]
,[protocol_version]
,[endpoint_id]
,[encrypt_option]
,[auth_scheme]
,[node_affinity]
,[num_reads]
,[num_writes]
,[last_read]
,[last_write]
,[net_packet_size]
,[client_net_address]
,[client_tcp_port]
,[local_net_address]
,[local_tcp_port]
,[parent_connection_id]
,[most_recent_sql_handle]
,[host_process_id]
,[client_version]
,[client_interface_name]
,[security_id]
,[login_name]
,[nt_domain]
,[nt_user_name]
,[memory_usage]
,[total_scheduled_time]
,[last_request_start_time]
,[last_request_end_time]
,[is_user_process]
,[original_security_id]
,[original_login_name]
,[last_successful_logon]
,[last_unsuccessful_logon]
,[unsuccessful_logons]
,[authenticating_database_id]
,[sql_handle]
,[statement_start_offset]
,[statement_end_offset]
,[plan_handle]
,[dop]
,[database_id]
,[user_id]
,[connection_id]
, 0 as [is_blocking_other_session]
from tbl
union all
select tbl0.[session_id]
,tbl0.[blocking_session_id]
,tbl0.[request_id]
,tbl0.[start_time]
,tbl0.[status]
,tbl0.[status_session]
,tbl0.[command]
,tbl0.[percent_complete]
,tbl0.[DBName]
,OBJECT_name(tbl0.[objectid], tbl0.[database_id]) as [object]
,tbl0.[TSQL]
,tbl0.[QueryPlan]
,tbl0.[wait_type]
,tbl0.[login_time]
,tbl0.[host_name]
,tbl0.[program_name]
,tbl0.[wait_time]
,tbl0.[last_wait_type]
,tbl0.[wait_resource]
,tbl0.[open_transaction_count]
,tbl0.[open_resultset_count]
,tbl0.[transaction_id]
,tbl0.[context_info]
,tbl0.[estimated_completion_time]
,tbl0.[cpu_time]
,tbl0.[total_elapsed_time]
,tbl0.[scheduler_id]
,tbl0.[task_address]
,tbl0.[reads]
,tbl0.[writes]
,tbl0.[logical_reads]
,tbl0.[text_size]
,tbl0.[language]
,tbl0.[date_format]
,tbl0.[date_first]
,tbl0.[quoted_identifier]
,tbl0.[arithabort]
,tbl0.[ansi_null_dflt_on]
,tbl0.[ansi_defaults]
,tbl0.[ansi_warnings]
,tbl0.[ansi_padding]
,tbl0.[ansi_nulls]
,tbl0.[concat_null_yields_null]
,tbl0.[transaction_isolation_level]
,tbl0.[lock_timeout]
,tbl0.[deadlock_priority]
,tbl0.[row_count]
,tbl0.[prev_error]
,tbl0.[nest_level]
,tbl0.[granted_query_memory]
,tbl0.[executing_managed_code]
,tbl0.[group_id]
,tbl0.[query_hash]
,tbl0.[query_plan_hash]
,tbl0.[most_recent_session_id]
,tbl0.[connect_time]
,tbl0.[net_transport]
,tbl0.[protocol_type]
,tbl0.[protocol_version]
,tbl0.[endpoint_id]
,tbl0.[encrypt_option]
,tbl0.[auth_scheme]
,tbl0.[node_affinity]
,tbl0.[num_reads]
,tbl0.[num_writes]
,tbl0.[last_read]
,tbl0.[last_write]
,tbl0.[net_packet_size]
,tbl0.[client_net_address]
,tbl0.[client_tcp_port]
,tbl0.[local_net_address]
,tbl0.[local_tcp_port]
,tbl0.[parent_connection_id]
,tbl0.[most_recent_sql_handle]
,tbl0.[host_process_id]
,tbl0.[client_version]
,tbl0.[client_interface_name]
,tbl0.[security_id]
,tbl0.[login_name]
,tbl0.[nt_domain]
,tbl0.[nt_user_name]
,tbl0.[memory_usage]
,tbl0.[total_scheduled_time]
,tbl0.[last_request_start_time]
,tbl0.[last_request_end_time]
,tbl0.[is_user_process]
,tbl0.[original_security_id]
,tbl0.[original_login_name]
,tbl0.[last_successful_logon]
,tbl0.[last_unsuccessful_logon]
,tbl0.[unsuccessful_logons]
,tbl0.[authenticating_database_id]
,tbl0.[sql_handle]
,tbl0.[statement_start_offset]
,tbl0.[statement_end_offset]
,tbl0.[plan_handle]
,tbl0.[dop]
,tbl0.[database_id]
,tbl0.[user_id]
,tbl0.[connection_id]
, 1 as [is_blocking_other_session]
from tbl_group as tg
inner join tbl0 on tg.blocking_session_id=tbl0.session_id
)
,tbl_res_rec_g as (
select [plan_handle],
[sql_handle],
cast([start_time] as date) as [start_time]
from tbl_res_rec
group by [plan_handle],
[sql_handle],
cast([start_time] as date)
)
,tbl_rec_stat_g as (
select qs.[plan_handle]
,qs.[sql_handle]
--,cast(qs.[last_execution_time] as date) as [last_execution_time]
,min(qs.[creation_time]) as [creation_time]
,max(qs.[execution_count]) as [execution_count]
,max(qs.[total_worker_time]) as [total_worker_time]
,min(qs.[last_worker_time]) as [min_last_worker_time]
,max(qs.[last_worker_time]) as [max_last_worker_time]
,min(qs.[min_worker_time]) as [min_worker_time]
,max(qs.[max_worker_time]) as [max_worker_time]
,max(qs.[total_physical_reads]) as [total_physical_reads]
,min(qs.[last_physical_reads]) as [min_last_physical_reads]
,max(qs.[last_physical_reads]) as [max_last_physical_reads]
,min(qs.[min_physical_reads]) as [min_physical_reads]
,max(qs.[max_physical_reads]) as [max_physical_reads]
,max(qs.[total_logical_writes]) as [total_logical_writes]
,min(qs.[last_logical_writes]) as [min_last_logical_writes]
,max(qs.[last_logical_writes]) as [max_last_logical_writes]
,min(qs.[min_logical_writes]) as [min_logical_writes]
,max(qs.[max_logical_writes]) as [max_logical_writes]
,max(qs.[total_logical_reads]) as [total_logical_reads]
,min(qs.[last_logical_reads]) as [min_last_logical_reads]
,max(qs.[last_logical_reads]) as [max_last_logical_reads]
,min(qs.[min_logical_reads]) as [min_logical_reads]
,max(qs.[max_logical_reads]) as [max_logical_reads]
,max(qs.[total_clr_time]) as [total_clr_time]
,min(qs.[last_clr_time]) as [min_last_clr_time]
,max(qs.[last_clr_time]) as [max_last_clr_time]
,min(qs.[min_clr_time]) as [min_clr_time]
,max(qs.[max_clr_time]) as [max_clr_time]
,max(qs.[total_elapsed_time]) as [total_elapsed_time]
,min(qs.[last_elapsed_time]) as [min_last_elapsed_time]
,max(qs.[last_elapsed_time]) as [max_last_elapsed_time]
,min(qs.[min_elapsed_time]) as [min_elapsed_time]
,max(qs.[max_elapsed_time]) as [max_elapsed_time]
,max(qs.[total_rows]) as [total_rows]
,min(qs.[last_rows]) as [min_last_rows]
,max(qs.[last_rows]) as [max_last_rows]
,min(qs.[min_rows]) as [min_rows]
,max(qs.[max_rows]) as [max_rows]
,max(qs.[total_dop]) as [total_dop]
,min(qs.[last_dop]) as [min_last_dop]
,max(qs.[last_dop]) as [max_last_dop]
,min(qs.[min_dop]) as [min_dop]
,max(qs.[max_dop]) as [max_dop]
,max(qs.[total_grant_kb]) as [total_grant_kb]
,min(qs.[last_grant_kb]) as [min_last_grant_kb]
,max(qs.[last_grant_kb]) as [max_last_grant_kb]
,min(qs.[min_grant_kb]) as [min_grant_kb]
,max(qs.[max_grant_kb]) as [max_grant_kb]
,max(qs.[total_used_grant_kb]) as [total_used_grant_kb]
,min(qs.[last_used_grant_kb]) as [min_last_used_grant_kb]
,max(qs.[last_used_grant_kb]) as [max_last_used_grant_kb]
,min(qs.[min_used_grant_kb]) as [min_used_grant_kb]
,max(qs.[max_used_grant_kb]) as [max_used_grant_kb]
,max(qs.[total_ideal_grant_kb]) as [total_ideal_grant_kb]
,min(qs.[last_ideal_grant_kb]) as [min_last_ideal_grant_kb]
,max(qs.[last_ideal_grant_kb]) as [max_last_ideal_grant_kb]
,min(qs.[min_ideal_grant_kb]) as [min_ideal_grant_kb]
,max(qs.[max_ideal_grant_kb]) as [max_ideal_grant_kb]
,max(qs.[total_reserved_threads]) as [total_reserved_threads]
,min(qs.[last_reserved_threads]) as [min_last_reserved_threads]
,max(qs.[last_reserved_threads]) as [max_last_reserved_threads]
,min(qs.[min_reserved_threads]) as [min_reserved_threads]
,max(qs.[max_reserved_threads]) as [max_reserved_threads]
,max(qs.[total_used_threads]) as [total_used_threads]
,min(qs.[last_used_threads]) as [min_last_used_threads]
,max(qs.[last_used_threads]) as [max_last_used_threads]
,min(qs.[min_used_threads]) as [min_used_threads]
,max(qs.[max_used_threads]) as [max_used_threads]
from tbl_res_rec_g as t
inner join sys.dm_exec_query_stats as qs with(readuncommitted) on t.[plan_handle]=qs.[plan_handle]
and t.[sql_handle]=qs.[sql_handle]
and t.[start_time]=cast(qs.[last_execution_time] as date)
group by qs.[plan_handle]
,qs.[sql_handle]
--,qs.[last_execution_time]
)
select t.[session_id] --Π‘Π΅ΡΡΠΈΡ
,t.[blocking_session_id] --Π‘Π΅ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ΅ΡΡΠΈΡ [session_id]
,t.[request_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠ°. Π£Π½ΠΈΠΊΠ°Π»Π΅Π½ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΡΠ΅Π°Π½ΡΠ°
,t.[start_time] --ΠΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°
,DateDiff(second, t.[start_time], GetDate()) as [date_diffSec] --Π‘ΠΊΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΠΊ ΠΏΡΠΎΡΠ»ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°
,t.[status] --Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ°
,t.[status_session] --Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ΅ΡΡΠΈΠΈ
,t.[command] --Π’ΠΈΠΏ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
, COALESCE(
CAST(NULLIF(t.[total_elapsed_time] / 1000, 0) as BIGINT)
,CASE WHEN (t.[status_session] <> 'running' and isnull(t.[status], '') <> 'running')
THEN DATEDIFF(ss,0,getdate() - nullif(t.[last_request_end_time], '1900-01-01T00:00:00.000'))
END
) as [total_time, sec] --ΠΡΠ΅ΠΌΡ Π²ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ Π·Π°ΠΏΡΠΎΡΠ° Π² ΡΠ΅ΠΊ
, CAST(NULLIF((CAST(t.[total_elapsed_time] as BIGINT) - CAST(t.[wait_time] AS BIGINT)) / 1000, 0 ) as bigint) as [work_time, sec] --ΠΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Π·Π°ΠΏΡΠΎΡΠ° Π² ΡΠ΅ΠΊ Π±Π΅Π· ΡΡΠ΅ΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΉ
, CASE WHEN (t.[status_session] <> 'running' AND ISNULL(t.[status],'') <> 'running')
THEN DATEDIFF(ss,0,getdate() - nullif(t.[last_request_end_time], '1900-01-01T00:00:00.000'))
END as [sleep_time, sec] --ΠΡΠ΅ΠΌΡ ΡΠ½Π° Π² ΡΠ΅ΠΊ
, NULLIF( CAST((t.[logical_reads] + t.[writes]) * 8 / 1024 as numeric(38,2)), 0) as [IO, MB] --ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π² ΠΠ
, CASE t.transaction_isolation_level
WHEN 0 THEN 'Unspecified'
WHEN 1 THEN 'ReadUncommited'
WHEN 2 THEN 'ReadCommited'
WHEN 3 THEN 'Repetable'
WHEN 4 THEN 'Serializable'
WHEN 5 THEN 'Snapshot'
END as [transaction_isolation_level_desc] --ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ (ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΠΊΠ°)
,t.[percent_complete] --ΠΡΠΎΡΠ΅Π½Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
ΠΊΠΎΠΌΠ°Π½Π΄
,t.[DBName] --ΠΠ
,t.[object] --ΠΠ±ΡΠ΅ΠΊΡ
, SUBSTRING(
t.[TSQL]
, t.[statement_start_offset]/2+1
, (
CASE WHEN ((t.[statement_start_offset]<0) OR (t.[statement_end_offset]<0))
THEN DATALENGTH (t.[TSQL])
ELSE t.[statement_end_offset]
END
- t.[statement_start_offset]
)/2 +1
) as [CURRENT_REQUEST] --Π’Π΅ΠΊΡΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ Π·Π°ΠΏΡΠΎΡ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅
,t.[TSQL] --ΠΠ°ΠΏΡΠΎΡ Π²ΡΠ΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°
,t.[QueryPlan] --ΠΠ»Π°Π½ Π²ΡΠ΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°
,t.[wait_type] --ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½, Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΡΠΈΠΏ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ (sys.dm_os_wait_stats)
,t.[login_time] --ΠΡΠ΅ΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π½ΡΠ°
,t.[host_name] --ΠΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² ΡΠ΅Π°Π½ΡΠ΅. ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[program_name] --ΠΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°Π»Π° ΡΠ΅Π°Π½Ρ. ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,cast(t.[wait_time]/1000 as decimal(18,3)) as [wait_timeSec] --ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½, Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ (Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[wait_time] --ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½, Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ (Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[last_wait_type] --ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π±ΡΠ» Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ ΡΠ°Π½Π΅Π΅, Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΡΠΈΠΏ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ
,t.[wait_resource] --ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½, Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΊΠ°Π·Π°Π½ ΡΠ΅ΡΡΡΡ, ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ
,t.[open_transaction_count] --Π§ΠΈΡΠ»ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΎΡΠΊΡΡΡΡΡ
Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[open_resultset_count] --Π§ΠΈΡΠ»ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΡ
Π½Π°Π±ΠΎΡΠΎΠ², ΠΎΡΠΊΡΡΡΡΡ
Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[transaction_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ
,t.[context_info] --ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ CONTEXT_INFO ΡΠ΅Π°Π½ΡΠ°
,cast(t.[estimated_completion_time]/1000 as decimal(18,3)) as [estimated_completion_timeSec] --Π’ΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL
,t.[estimated_completion_time] --Π’ΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL
,cast(t.[cpu_time]/1000 as decimal(18,3)) as [cpu_timeSec] --ΠΡΠ΅ΠΌΡ Π¦Π (Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
), Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ°
,t.[cpu_time] --ΠΡΠ΅ΠΌΡ Π¦Π (Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
), Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ°
,cast(t.[total_elapsed_time]/1000 as decimal(18,3)) as [total_elapsed_timeSec] --ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, ΠΈΡΡΠ΅ΠΊΡΠ΅Π΅ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° (Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[total_elapsed_time] --ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, ΠΈΡΡΠ΅ΠΊΡΠ΅Π΅ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° (Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[scheduler_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ
,t.[task_address] --ΠΠ΄ΡΠ΅Ρ Π±Π»ΠΎΠΊΠ° ΠΏΠ°ΠΌΡΡΠΈ, Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ Π·Π°Π΄Π°ΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ ΡΡΠΈΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ
,t.[reads] --Π§ΠΈΡΠ»ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ
,t.[writes] --Π§ΠΈΡΠ»ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ
,t.[logical_reads] --Π§ΠΈΡΠ»ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ
,t.[text_size] --Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° TEXTSIZE Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[language] --Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ·ΡΠΊΠ° Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[date_format] --Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° DATEFORMAT Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[date_first] --Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° DATEFIRST Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[quoted_identifier] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ QUOTED_IDENTIFIER Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[arithabort] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ARITHABORT Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[ansi_null_dflt_on] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ANSI_NULL_DFLT_ON Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[ansi_defaults] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ANSI_DEFAULTS Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[ansi_warnings] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ANSI_WARNINGS Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[ansi_padding] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ANSI_PADDING Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON)
,t.[ansi_nulls] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ANSI_NULLS Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[concat_null_yields_null] --1 = ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ CONCAT_NULL_YIELDS_NULL Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ (ON). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β 0
,t.[transaction_isolation_level] --Π£ΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠΎΠ·Π΄Π°Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,cast(t.[lock_timeout]/1000 as decimal(18,3)) as [lock_timeoutSec] --ΠΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[lock_timeout] --ΠΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
)
,t.[deadlock_priority] --ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° DEADLOCK_PRIORITY Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[row_count] --Π§ΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ
ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡ Π·Π°ΠΏΡΠΎΡΡ
,t.[prev_error] --ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΎΡΠΈΠ±ΠΊΠ°, ΠΏΡΠΎΠΈΡΡΠ΅Π΄ΡΠ°Ρ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ°
,t.[nest_level] --Π’Π΅ΠΊΡΡΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
,t.[granted_query_memory] --Π§ΠΈΡΠ»ΠΎ ΡΡΡΠ°Π½ΠΈΡ, Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ
Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΡΠΏΠΈΠ²ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (1 ΡΡΡΠ°Π½ΠΈΡΠ°-ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 8 ΠΠ)
,t.[executing_managed_code] --Π£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π»ΠΈ Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠ΄ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΡΠ΅Π΄Ρ CLR (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ, ΡΠΈΠΏΠ° ΠΈΠ»ΠΈ ΡΡΠΈΠ³Π³Π΅ΡΠ°).
--ΠΡΠΎΡ ΡΠ»Π°Π³ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠ΅Π΄Ρ CLR Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ΅ΠΊΠ΅, Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° ΠΈΠ· ΡΡΠ΅Π΄Ρ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ΄ Transact-SQL
,t.[group_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π³ΡΡΠΏΠΏΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ
,t.[query_hash] --ΠΠ²ΠΎΠΈΡΠ½ΠΎΠ΅ Ρ
ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ.
--ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ
ΡΡ Π·Π°ΠΏΡΠΎΡΠ° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ Π»ΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ
,t.[query_plan_hash] --ΠΠ²ΠΎΠΈΡΠ½ΠΎΠ΅ Ρ
ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ Π΄Π»Ρ ΠΏΠ»Π°Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ
ΠΏΠ»Π°Π½ΠΎΠ² Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
--ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ
ΡΡ ΠΏΠ»Π°Π½Π° Π·Π°ΠΏΡΠΎΡΠ° Π΄Π»Ρ Π½Π°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΠΎ ΡΡ
ΠΎΠΆΠΈΠΌΠΈ ΠΏΠ»Π°Π½Π°ΠΌΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
,t.[most_recent_session_id] --ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅Π°Π½ΡΠ° ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ Ρ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ
,t.[connect_time] --ΠΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
,t.[net_transport] --Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ
,t.[protocol_type] --Π£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΈΠΏ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
,t.[protocol_version] --ΠΠ΅ΡΡΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ Ρ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ
,t.[endpoint_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΠΈΠΏ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΡΠΎΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ endpoint_id ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ sys.endpoints
,t.[encrypt_option] --ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠ΅Π΅, ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π»ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
,t.[auth_scheme] --Π£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡ
Π΅ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ (SQL Server ΠΈΠ»ΠΈ Windows), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Ρ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ
,t.[node_affinity] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΡΠ·Π΅Π» ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅
,t.[num_reads] --Π§ΠΈΡΠ»ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΡΠΈΠ½ΡΡΡΡ
ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
,t.[num_writes] --Π§ΠΈΡΠ»ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΡ
ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
,t.[last_read] --ΠΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ
,t.[last_write] --ΠΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ
,t.[net_packet_size] --Π Π°Π·ΠΌΠ΅Ρ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ
,t.[client_net_address] --Π‘Π΅ΡΠ΅Π²ΠΎΠΉ Π°Π΄ΡΠ΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°
,t.[client_tcp_port] --ΠΠΎΠΌΠ΅Ρ ΠΏΠΎΡΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
,t.[local_net_address] --IP-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ° Π΄Π°Π½Π½ΡΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» TCP
,t.[local_tcp_port] --TCP-ΠΏΠΎΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π΅ΡΠ»ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» TCP
,t.[parent_connection_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π² ΡΠ΅Π°Π½ΡΠ΅ MARS
,t.[most_recent_sql_handle] --ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° SQL, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΎΠ»Π±ΡΠΎΠΌ most_recent_sql_handle ΠΈ ΡΡΠΎΠ»Π±ΡΠΎΠΌ most_recent_session_id
,t.[host_process_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°Π»Π° ΡΠ΅Π°Π½Ρ. ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[client_version] --ΠΠ΅ΡΡΠΈΡ TDS-ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[client_interface_name] --ΠΠΌΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈΠ»ΠΈ Π΄ΡΠ°ΠΉΠ²Π΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ. ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[security_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Microsoft Windows, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Ρ
ΠΎΠ΄Π°
,t.[login_name] --SQL Server ΠΠΌΡ Π²Ρ
ΠΎΠ΄Π°, ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ΅Π°Π½Ρ.
--Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ Π²Ρ
ΠΎΠ΄Π°, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ ΡΠ΅Π°Π½Ρ, ΡΠΌ. ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ original_login_name.
--ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ SQL Server ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ ΠΈΠΌΠ΅Π½ΠΈ Π²Ρ
ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠΌΠ΅Π½Π°, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ Windows
,t.[nt_domain] --ΠΠΎΠΌΠ΅Π½ Windows Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π΅ΡΠ»ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π°Π½ΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ Windows ΠΈΠ»ΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
--ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ
ΡΠ΅Π°Π½ΡΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΡ
ΠΊ Π΄ΠΎΠΌΠ΅Π½Ρ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[nt_user_name] --ΠΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Windows Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π΅ΡΠ»ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π°Π½ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ Windows ΠΈΠ»ΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
--ΠΠ»Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ
ΡΠ΅Π°Π½ΡΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΡ
ΠΊ Π΄ΠΎΠΌΠ΅Π½Ρ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ NULL
,t.[memory_usage] --ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ 8-ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΡ
ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π΄Π°Π½Π½ΡΠΌ ΡΠ΅Π°Π½ΡΠΎΠΌ
,t.[total_scheduled_time] --ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π΄Π°Π½Π½ΠΎΠΌΡ ΡΠ΅Π°Π½ΡΡ (Π²ΠΊΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ) Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
,t.[last_request_start_time] --ΠΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΡΠ°Π»ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π·Π°ΠΏΡΠΎΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π°Π½ΡΠ°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΠΎΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ
,t.[last_request_end_time] --ΠΡΠ΅ΠΌΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π² ΡΠ°ΠΌΠΊΠ°Ρ
Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π°Π½ΡΠ°
,t.[is_user_process] --0, Π΅ΡΠ»ΠΈ ΡΠ΅Π°Π½Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ 1
,t.[original_security_id] --Microsoft ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Windows, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ original_login_name
,t.[original_login_name] --SQL Server ΠΠΌΡ Π²Ρ
ΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π» Π΄Π°Π½Π½ΡΠΉ ΡΠ΅Π°Π½Ρ.
--ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠΌΡ Π²Ρ
ΠΎΠ΄Π° SQL Server, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ, ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠΌΠ΅Π½Π° Windows,
--ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
.
--ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅Π°Π½ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡΠ²Π½ΡΡ
ΠΈΠ»ΠΈ ΡΠ²Π½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°.
--ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΅ΡΠ»ΠΈ EXECUTE AS ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ
,t.[last_successful_logon] --ΠΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²Ρ
ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ original_login_name Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ°
,t.[last_unsuccessful_logon] --ΠΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π½Π΅ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²Ρ
ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ original_login_name Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ΅Π°Π½ΡΠ°
,t.[unsuccessful_logons] --Π§ΠΈΡΠ»ΠΎ Π½Π΅ΡΡΠΏΠ΅ΡΠ½ΡΡ
ΠΏΠΎΠΏΡΡΠΎΠΊ Π²Ρ
ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ original_login_name ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ last_successful_logon ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ login_time
,t.[authenticating_database_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°.
--ΠΠ»Ρ ΠΈΠΌΠ΅Π½ Π²Ρ
ΠΎΠ΄Π° ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0.
--ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
,t.[sql_handle] --Π₯ΡΡ-ΠΊΠ°ΡΡΠ° ΡΠ΅ΠΊΡΡΠ° SQL-Π·Π°ΠΏΡΠΎΡΠ°
,t.[statement_start_offset] --ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΌ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΠΈΠ»ΠΈ Ρ
ΡΠ°Π½ΠΈΠΌΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΠΏΡΡΠ΅Π½Π° ΡΠ΅ΠΊΡΡΠ°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ.
--ΠΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ sql_handle, statement_end_offset ΠΈ sys.dm_exec_sql_text
--Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ
,t.[statement_end_offset] --ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΌ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΠΈΠ»ΠΈ Ρ
ΡΠ°Π½ΠΈΠΌΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°Π²Π΅ΡΡΠΈΠ»Π°ΡΡ ΡΠ΅ΠΊΡΡΠ°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ.
--ΠΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ sql_handle, statement_end_offset ΠΈ sys.dm_exec_sql_text
--Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π² Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ
,t.[plan_handle] --Π₯ΡΡ-ΠΊΠ°ΡΡΠ° ΠΏΠ»Π°Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ SQL
,t.[database_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ
,t.[user_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΎΡΠΏΡΠ°Π²ΠΈΠ²ΡΠ΅Π³ΠΎ Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ
,t.[connection_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΠΎΡΡΡΠΏΠΈΠ» Π·Π°ΠΏΡΠΎΡ
,t.[is_blocking_other_session] --1-ΡΠ΅ΡΡΠΈΡ ΡΠ²Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΡΠΈΠΈ, 0-ΡΠ΅ΡΡΠΈΡ ΡΠ²Π½ΠΎ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΡΠΈΠΈ
,coalesce(t.[dop], mg.[dop]) as [dop] --Π‘ΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° Π·Π°ΠΏΡΠΎΡΠ°
,mg.[request_time] --ΠΠ°ΡΠ° ΠΈ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ
,mg.[grant_time] --ΠΠ°ΡΠ° ΠΈ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΠΎΡΡ Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° ΠΏΠ°ΠΌΡΡΡ. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°
,mg.[requested_memory_kb] --ΠΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
,mg.[granted_memory_kb] --ΠΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
.
--ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°.
--ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ Ρ requested_memory_kb.
--ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ,
--ΠΎΠ±ΡΠ΅ΠΌ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΡ
ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ°ΠΌΠΊΠΈ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ
,mg.[required_memory_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
(ΠΠ), Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠΉ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ requested_memory_kb ΡΠ°Π²Π½ΠΎ ΡΡΠΎΠΌΡ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π΅Π³ΠΎ
,mg.[used_memory_kb] --ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΎΠ±ΡΠ΅ΠΌ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ (Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
)
,mg.[max_used_memory_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π΄ΠΎ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
,mg.[query_cost] --ΠΠΆΠΈΠ΄Π°Π΅ΠΌΠ°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°
,mg.[timeout_sec] --ΠΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
Π΄ΠΎ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ
,mg.[resource_semaphore_id] --ΠΠ΅ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅ΠΌΠ°ΡΠΎΡΠ° ΡΠ΅ΡΡΡΡΠ°, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ
,mg.[queue_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΎΠΆΠΈΠ΄Π°ΡΡΠ΅ΠΉ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ ΡΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°
,mg.[wait_order] --ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ queue_id.
--ΠΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π΅ΡΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΎΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΅Π΅.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ ΡΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°
,mg.[is_next_candidate] --Π―Π²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠΌ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ (1 = Π΄Π°, 0 = Π½Π΅Ρ, NULL = ΠΏΠ°ΠΌΡΡΡ ΡΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°)
,mg.[wait_time_ms] --ΠΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ ΡΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π°
,mg.[pool_id] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠ»Π° ΡΠ΅ΡΡΡΡΠΎΠ², ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π΄Π°Π½Π½Π°Ρ Π³ΡΡΠΏΠΏΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ
,mg.[is_small] --ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 1 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠ°Π»ΡΠΉ ΡΠ΅ΠΌΠ°ΡΠΎΡ ΡΠ΅ΡΡΡΡΠ°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ°ΡΠΎΡΠ°
,mg.[ideal_memory_kb] --ΠΠ±ΡΠ΅ΠΌ, Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ
(ΠΠ), ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ
Π΄Π°Π½Π½ΡΡ
Π² ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
--ΠΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΎΡΠ΅Π½ΠΊΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
,mg.[reserved_worker_count] --Π§ΠΈΡΠ»ΠΎ ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π²ΡΠ΅ΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ
,mg.[used_worker_count] --Π§ΠΈΡΠ»ΠΎ ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ²
,mg.[max_used_worker_count] --???
,mg.[reserved_node_bitmap] --???
,pl.[bucketid] --ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° Ρ
ΡΡΠ°, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ 0 Π΄ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Ρ
ΡΡ-ΡΠ°Π±Π»ΠΈΡΡ Π΄Π»Ρ ΡΠΈΠΏΠ° ΠΊΡΡΠ°.
--ΠΠ»Ρ ΠΊΡΡΠ΅ΠΉ SQL Plans ΠΈ Object Plans ΡΠ°Π·ΠΌΠ΅Ρ Ρ
ΡΡ-ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠΈΠ³Π°ΡΡ 10007 Π½Π° 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
Π²Π΅ΡΡΠΈΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΈ 40009 β Π½Π° 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
.
--ΠΠ»Ρ ΠΊΡΡΠ° Bound Trees ΡΠ°Π·ΠΌΠ΅Ρ Ρ
ΡΡ-ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠΈΠ³Π°ΡΡ 1009 Π½Π° 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
Π²Π΅ΡΡΠΈΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΈ 4001 Π½Π° 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
.
--ΠΠ»Ρ ΠΊΡΡΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ
Ρ
ΡΠ°Π½ΠΈΠΌΡΡ
ΠΏΡΠΎΡΠ΅Π΄ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Ρ
ΡΡ-ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠΈΠ³Π°ΡΡ 127 Π½Π° 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
ΠΈ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ
Π²Π΅ΡΡΠΈΡΡ
ΡΠΈΡΡΠ΅ΠΌ
,pl.[refcounts] --Π§ΠΈΡΠ»ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΊΡΡΠ°, ΡΡΡΠ»Π°ΡΡΠΈΡ
ΡΡ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΡΡΠ°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ refcounts Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½Π΅ ΠΌΠ΅Π½ΡΡΠ΅ 1, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΊΡΡΠ΅
,pl.[usecounts] --ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ ΠΏΠΎΠΈΡΠΊΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΡΡΠ°.
--ΠΡΡΠ°Π΅ΡΡΡ Π±Π΅Π· ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠ»Π°Π½ Π² ΠΊΡΡΠ΅.
--ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ showplan
,pl.[size_in_bytes] --Π§ΠΈΡΠ»ΠΎ Π±Π°ΠΉΡΠΎΠ², Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΠΊΡΡΠ°
,pl.[memory_object_address] --ΠΠ΄ΡΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ.
--ΠΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ sys.dm_os_memory_objects,
--ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°,
--ΠΈ Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ sys.dm_os_memory_cache_entries Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π·Π°ΡΡΠ°Ρ Π½Π° ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠΈ
,pl.[cacheobjtype] --Π’ΠΈΠΏ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² ΠΊΡΡΠ΅. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
,pl.[objtype] --Π’ΠΈΠΏ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
,pl.[parent_plan_handle] --Π ΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΏΠ»Π°Π½
--Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· sys.dm_exec_query_stats Π±ΡΠ°Π»ΠΈΡΡ Π·Π° ΡΡΡΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ
Π±ΡΠ»Π° ΠΏΠ°ΡΠ° (Π·Π°ΠΏΡΠΎΡ, ΠΏΠ»Π°Π½)
,qs.[creation_time] --ΠΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΠ»Π°Π½Π°
,qs.[execution_count] --ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
,qs.[total_worker_time] --ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π¦Π, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[min_last_worker_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π¦Π, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[max_last_worker_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π¦Π, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[min_worker_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π¦Π, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[max_worker_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π¦Π, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[total_physical_reads] --ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_last_physical_reads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_last_physical_reads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_physical_reads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_physical_reads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[total_logical_writes] --ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_last_logical_writes] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ°Π½ΠΈΡ Π² Π±ΡΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠ»Π΅, Π·Π°Π³ΡΡΠ·Π½Π΅Π½Π½ΡΡ
Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Β«Π³ΡΡΠ·Π½ΠΎΠΉΒ» (Ρ. Π΅. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ), ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ Π½Π΅ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_last_logical_writes] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ°Π½ΠΈΡ Π² Π±ΡΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠ»Π΅, Π·Π°Π³ΡΡΠ·Π½Π΅Π½Π½ΡΡ
Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Β«Π³ΡΡΠ·Π½ΠΎΠΉΒ» (Ρ. Π΅. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ), ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ Π½Π΅ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_logical_writes] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_logical_writes] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[total_logical_reads] --ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_last_logical_reads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_last_logical_reads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_logical_reads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_logical_reads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π·Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0 ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[total_clr_time] --ΠΡΠ΅ΠΌΡ, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ),
--Π²Π½ΡΡΡΠΈ Microsoft .NET Framework ΠΎΠ±ΡΠ΅ΡΠ·ΡΠΊΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (CLR) ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΡΠΈΠ³Π³Π΅ΡΠ°ΠΌΠΈ, ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
,qs.[min_last_clr_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ),
--Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π²Π½ΡΡΡΠΈ .NET Framework ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΡΠΈΠ³Π³Π΅ΡΠ°ΠΌΠΈ, ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
,qs.[max_last_clr_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ),
--Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π²Π½ΡΡΡΠΈ .NET Framework ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΡΠΈΠ³Π³Π΅ΡΠ°ΠΌΠΈ, ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
,qs.[min_clr_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π° Π²Π½ΡΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² .NET Framework ΡΡΠ΅Π΄Ρ CLR,
--Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ).
--ΠΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΡΠΈΠ³Π³Π΅ΡΠ°ΠΌΠΈ, ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
,qs.[max_clr_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π° Π²Π½ΡΡΡΠΈ ΡΡΠ΅Π΄Ρ CLR .NET Framework,
--Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ).
--ΠΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ CLR ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΡΠΈΠ³Π³Π΅ΡΠ°ΠΌΠΈ, ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
--,qs.[total_elapsed_time] --ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[min_last_elapsed_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[max_last_elapsed_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[min_elapsed_time] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[max_elapsed_time] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½Π°, Π² ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
(Π½ΠΎ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Ρ)
,qs.[total_rows] --ΠΠ±ΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠΌ. ΠΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0, Π΅ΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ
ΡΠ°Π½ΠΈΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_last_rows] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ
ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0, Π΅ΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ
ΡΠ°Π½ΠΈΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_last_rows] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ
ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null.
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0, Π΅ΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ
ΡΠ°Π½ΠΈΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[min_rows] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ
ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0, Π΅ΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ
ΡΠ°Π½ΠΈΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[max_rows] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ
ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½
--ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π½ΠΎ 0, Π΅ΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ
ΡΠ°Π½ΠΈΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ
,qs.[total_dop] --ΠΠ±ΡΡΡ ΡΡΠΌΠΌΡ ΠΏΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΏΠ»Π°Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_dop] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_dop] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_dop] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_dop] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[total_grant_kb] --ΠΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎΡ ΠΏΠ»Π°Π½, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ
Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π² ΠΠ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π² ΠΠ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ Π² Ρ
ΠΎΠ΄Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ Π² Ρ
ΠΎΠ΄Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[total_used_grant_kb] --ΠΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎΡ ΠΏΠ»Π°Π½, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_used_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_used_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_used_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_used_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[total_ideal_grant_kb] --ΠΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΌΡΡΡ Π² ΠΠ, ΠΎΡΠ΅Π½ΠΊΠ° ΠΏΠ»Π°Π½Π° Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_ideal_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π² ΠΠ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_ideal_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π² ΠΠ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_ideal_grant_kb] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΎΡΠ΅Π½ΠΊΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΠ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_ideal_grant_kb] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΎΡΠ΅Π½ΠΊΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΠ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[total_reserved_threads] --ΠΠ±ΡΠ°Ρ ΡΡΠΌΠΌΠ° ΠΏΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠ΅Π³ΠΎΡΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_reserved_threads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_reserved_threads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_reserved_threads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_reserved_threads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ² Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[total_used_threads] --ΠΠ±ΡΠ°Ρ ΡΡΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ² ΡΡΠΎΡ ΠΏΠ»Π°Π½ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠ΅Π³ΠΎΡΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_last_used_threads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_last_used_threads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ»Π°Π½Π°.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[min_used_threads] --ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
,qs.[max_used_threads] --ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ.
--ΠΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 0 Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ
from tbl_res_rec as t
left outer join sys.dm_exec_query_memory_grants as mg on t.[plan_handle]=mg.[plan_handle] and t.[sql_handle]=mg.[sql_handle]
left outer join sys.dm_exec_cached_plans as pl on t.[plan_handle]=pl.[plan_handle]
left outer join tbl_rec_stat_g as qs on t.[plan_handle]=qs.[plan_handle] and t.[sql_handle]=qs.[sql_handle] --and qs.[last_execution_time]=cast(t.[start_time] as date);
Acha nikukumbushe pia kwamba kulingana na takwimu zilizokusanywa unaweza kupata maswali magumu zaidi:
Kanuni
/*
creation_time - ΠΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΠΎΡ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠΈ ΡΡΠ°ΡΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΊΡΡ ΠΏΡΡΡΠΎΠΉ, Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠ΅Π³Π΄Π° Π±ΠΎΠ»ΡΡΠ΅ Π»ΠΈΠ±ΠΎ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠ°. ΠΡΠ»ΠΈ Π²ΡΠ΅ΠΌΡ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² ΡΡΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ ΠΏΠΎΠ·ΠΆΠ΅, ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΠΎΠ΅ (ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ), ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎ ΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π±ΡΠ» ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½.
last_execution_time - ΠΠΎΠΌΠ΅Π½Ρ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°.
execution_count - Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π·Π°ΠΏΡΠΎΡ Π±ΡΠ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΉΡΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ Π² Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°Ρ
- ΡΠ°ΡΡΠΎ Π² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ
Π·Π°ΠΏΡΠΎΡΠ°Ρ
ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π²Π½ΡΡΡΠΈ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΡΠΈΠΊΠ»ΠΎΠ² ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°ΠΌΠΈΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, Π½Π΅ ΠΌΠ΅Π½ΡΡΡΠΈΡ
ΡΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π°.
CPU - Π‘ΡΠΌΠΌΠ°ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
. ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ, ΡΠΎ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π²ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΌΠΌΠΈΡΡΠ΅ΡΡΡ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠ΄ΡΠΎΠΌ. ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° ΡΠ΄ΡΠ°, Π² Π½Π΅Π΅ Π½Π΅ Π²Ρ
ΠΎΠ΄ΡΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ².
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΡΠ²Π»ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΠ»ΡΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ°ΡΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ.
AvgCPUTime - Π‘ΡΠ΅Π΄Π½ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π½Π° ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΡΠΎΡ.
TotDuration - ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°, Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
.
ΠΠ°Π½Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅Ρ
Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΏΡΠΈΡΠΈΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ "Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π΄ΠΎΠ»Π³ΠΎ". ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π½ΠΈΠΆΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ CPU (Ρ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΎΠΉ Π½Π° ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌ) - ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π±ΡΠ»ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ². Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°ΠΌΠΈ, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΡΡΡ.
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠΎΠ² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ sys.dm_os_wait_stats.
AvgDur - Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
.
Reads - ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΎ ΠΏΠΎΠΆΠ°Π»ΡΠΉ Π»ΡΡΡΠΈΠΉ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π²ΡΡΠ²ΠΈΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π½Π°Π³ΡΡΠΆΠ°ΡΡΠΈΠ΅ ΡΠ΅ΡΠ²Π΅Ρ Π·Π°ΠΏΡΠΎΡΡ.
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅ - ΡΡΠΎ ΡΠ°Π·ΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΡΡ
, ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ΅Π½ΠΈΡ Π½Π΅ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ.
Π ΡΠ°ΠΌΠΊΠ°Ρ
Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡΡ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ΅.
Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ
ΡΡΠ΅Π½ΠΈΠΉ, ΠΏΠ°ΠΌΡΡΠΈ ΠΈ, Π΅ΡΠ»ΠΈ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΡ
ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡΡ
, Π±ΠΎΠ»ΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ.
Writes - ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
.
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΠ΅Ρ ΡΠΎ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΠΎΡ "Π½Π°Π³ΡΡΠΆΠ°Π΅Ρ" Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ Π·Π°ΠΏΠΈΡΠΈ.
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ 0 Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ΅Ρ
Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²Π½ΠΎ ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈ Ρ ΡΠ΅Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² tempdb.
AggIO - ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° (ΡΡΠΌΠΌΠ°ΡΠ½ΠΎ)
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΠΎΡΡΠ΄ΠΊΠΈ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠΎΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ Π² ΡΠ΅Π΄ΠΊΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
.
AvgIO - Π‘ΡΠ΅Π΄Π½Π΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ
Π΄ΠΈΡΠΊΠΎΠ²ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π° ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ°.
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ:
ΠΠ΄Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ
- ΡΡΠΎ 8192 Π±Π°ΠΉΡΠ°. ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Π½Π΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°ΠΉΡ Π΄Π°Π½Π½ΡΡ
, "ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΡ
" Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄Π°Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ (ΡΡΠΌΠΌΠ°ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ
Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ°Ρ
), ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ ΠΏΠ»ΠΎΡ
ΠΎΠΉ ΠΏΠ»Π°Π½ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π°Π½ΡΡΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
Π― Π²ΡΡΡΠ΅ΡΠ°Π» ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΡΠΎΡ Π΄Π΅Π»Π°Π» ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ, ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΡ
ΠΎΠ±ΡΠ΅ΠΌΡ Π² 5Π’Π±, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ
Π² ΡΡΠΎ ΠΠ Π±ΡΠ» 300ΠΠ±, Π° ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ
Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ
, Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Π½ΡΡ
Π² Π·Π°ΠΏΡΠΎΡΠ΅ Π½Π΅ ΠΏΡΠ΅Π²ΡΡΠ°Π» 10ΠΠ±.
Π ΠΎΠ±ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΎΠ΄Π½Ρ ΠΏΡΠΈΡΠΈΠ½Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° - Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ.
ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΡΠ΅Π½ΠΈΠΉ Π² ΡΠ°Π·Ρ ΠΏΡΠ΅Π²ΠΎΡΡ
ΠΎΠ΄ΠΈΡ ΠΎΠ±ΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ
, ΡΠΎ ΡΡΠΎ Π²ΡΠ·Π²Π°Π½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡΠΌ ΠΊ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ Π΄Π°Π½Π½ΡΡ
. ΠΠΎΠΌΠΈΠΌΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΠΊ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΡΠ΅ΡΠ²Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠ»ΡΡΠ°ΡΡ
, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ ΠΏΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ Π½Π΅ΠΌΡ, Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ
Π»Π΅ΠΆΠ°Ρ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ Π±ΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ - Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΅ΡΠ²Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ°Π»ΡΡ Π±Ρ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΡΡ
ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎΠΌΡ ΡΠ°ΡΡΠΎ ΠΌΠ΅ΡΠ°ΡΡ... ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠ»ΠΈ ΡΠΈΠΏ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½.
ΠΠ±ΡΠ°ΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ - Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΡΡΡΠ°ΡΠ΅Π»Π° ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΈ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ Π½Π΅ΡΠ΄Π°ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
query_text - Π’Π΅ΠΊΡΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
database_name - ΠΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, Π² Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ. NULL Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
ΠΏΡΠΎΡΠ΅Π΄ΡΡ
object_name - ΠΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ), ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡ.
*/
with s as (
select creation_time,
last_execution_time,
execution_count,
total_worker_time/1000 as CPU,
convert(money, (total_worker_time))/(execution_count*1000)as [AvgCPUTime],
qs.total_elapsed_time/1000 as TotDuration,
convert(money, (qs.total_elapsed_time))/(execution_count*1000)as [AvgDur],
total_logical_reads as [Reads],
total_logical_writes as [Writes],
total_logical_reads+total_logical_writes as [AggIO],
convert(money, (total_logical_reads+total_logical_writes)/(execution_count + 0.0))as [AvgIO],
[sql_handle],
plan_handle,
statement_start_offset,
statement_end_offset
from sys.dm_exec_query_stats as qs with(readuncommitted)
where convert(money, (qs.total_elapsed_time))/(execution_count*1000)>=100 --Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 100 ΠΌΡ
)
select
s.creation_time,
s.last_execution_time,
s.execution_count,
s.CPU,
s.[AvgCPUTime],
s.TotDuration,
s.[AvgDur],
s.[Reads],
s.[Writes],
s.[AggIO],
s.[AvgIO],
--st.text as query_text,
case
when sql_handle IS NULL then ' '
else(substring(st.text,(s.statement_start_offset+2)/2,(
case
when s.statement_end_offset =-1 then len(convert(nvarchar(MAX),st.text))*2
else s.statement_end_offset
end - s.statement_start_offset)/2 ))
end as query_text,
db_name(st.dbid) as database_name,
object_schema_name(st.objectid, st.dbid)+'.'+object_name(st.objectid, st.dbid) as [object_name],
sp.[query_plan],
s.[sql_handle],
s.plan_handle
from s
cross apply sys.dm_exec_sql_text(s.[sql_handle]) as st
cross apply sys.dm_exec_query_plan(s.[plan_handle]) as sp
Unaweza pia kuandika kwa MySQL. Ili kufanya hivyo unahitaji kufunga
Msimbo wa maombi yanayosubiri
#ΠΠ°Π΄Π°Π΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ MySQL ΠΈ ΡΠ°ΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
[string]$sMySQLUserName = 'UserName'
[string]$sMySQLPW = 'UserPassword'
[string]$sMySQLDB = 'db'
[string]$sMySQLHost = 'IP-address'
[void][System.Reflection.Assembly]::LoadWithPartialName("MySql.Data");
[string]$sConnectionString = "server="+$sMySQLHost+";port=3306;uid=" + $sMySQLUserName + ";pwd="+"'" + $sMySQLPW +"'"+ ";database="+$sMySQLDB;
#Open a Database connection
$oConnection = New-Object MySql.Data.MySqlClient.MySqlConnection($sConnectionString)
$Error.Clear()
try
{
$oConnection.Open()
}
catch
{
write-warning ("Could not open a connection to Database $sMySQLDB on Host $sMySQLHost. Error: "+$Error[0].ToString())
}
#The first query
# Get an instance of all objects need for a SELECT query. The Command object
$oMYSQLCommand = New-Object MySql.Data.MySqlClient.MySqlCommand;
# DataAdapter Object
$oMYSQLDataAdapter = New-Object MySql.Data.MySqlClient.MySqlDataAdapter;
# And the DataSet Object
$oMYSQLDataSet = New-Object System.Data.DataSet;
# Assign the established MySQL connection
$oMYSQLCommand.Connection=$oConnection;
# Define a SELECT query
$oMYSQLCommand.CommandText='query';
$oMYSQLDataAdapter.SelectCommand=$oMYSQLCommand;
# Execute the query
$count=$oMYSQLDataAdapter.Fill($oMYSQLDataSet, "data");
$result = $oMYSQLDataSet.Tables[0].Rows[0]["Count"];
write-host $result;
Matokeo
Makala haya yaliangalia mfano wa vihesabio vya utendaji (vitu vya data) katika Zabbix. Mbinu hii inaruhusu wasimamizi kuarifiwa kuhusu matatizo mbalimbali katika muda halisi au baada ya muda fulani mahususi. Kwa hivyo, mbinu hii inatuwezesha kupunguza tukio la tatizo muhimu katika siku zijazo na kuacha uendeshaji wa DBMS na seva, ambayo inalinda uzalishaji kutokana na kuacha michakato ya kazi.
Makala iliyopita:
Vyanzo:
Β»
Β»
Β»
Β»
Β»
Β»
Β»
Β»
Β»
Β»
Chanzo: mapenzi.com