abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 2
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.5. 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    6.5. 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (14%)
     (16%)
    Celkem 133 hlasů
     Komentářů: 9, poslední včera 22:07
    Rozcestník

    Dotaz: MSSQL profilování

    17.2.2021 09:23 Jan Kratochvíl | skóre: 13
    MSSQL profilování
    Přečteno: 3577×
    Zdravím všechny,

    potřeboval bych poradit jak najít na MSSQL (2016 SP2) úzké místo, respektive asi nějaké blokování/zámky. Mám dost složitou proceduru, která provádí fakturaci v ERP (z objednávky vytvoří fakturu, má hromadu validací, atd.) Normálně běží od 0-0.5s což mi vyhovuje, ale občas trvá její běh násobně více (i 20s). Protože v systému pracuje mnoho uživatelů, podezřívám nějaké blokování/zamykání tabulek.

    Otázka je, zdali někdo neporadí, jak to pomocí XE Profileru odhalit? Co jsem koukal do různých tutoriálů, tak se to zaměřuje na long running queries, ale to v zásadě už vím. Potřebuji zjistit stav celého toho serveru v momentě dlouhého běhu. Neví někdo jakým směrem se vydat?

    Díky Honza

    Odpovědi

    21.2.2021 12:04 Dominika_myerp_cz
    Rozbalit Rozbalit vše Re: MSSQL profilování
    Prověřit Deadlocky

    Use Master
    SELECT
    xed.value('@timestamp', 'datetime') as Creation_Date,
    xed.query('.') AS Extend_Event
    FROM (
    SELECT CAST([target_data] AS XML) AS Target_Data
    FROM sys.dm_xe_session_targets AS xt
    INNER JOIN sys.dm_xe_sessions AS xs
    ON xs.address = xt.event_session_address
    WHERE xs.name = N'system_health'
    AND xt.target_name = N'ring_buffer'
    ) AS XML_Data
    CROSS APPLY Target_Data.nodes('RingBufferTarget/event[@name="xml_deadlock_report"]') AS XEventData(xed)
    ORDER BY Creation_Date DESC

    Zvednout Max degree of parallelism
    https://docs.microsoft.com/fr-FR/sql/database-engine/configure-windows/configure-the-max-degree-of-parallelism-server-configuration-option?view=sql-server-ver15

    Vypnout Boost SQL Server Priority
    Nechat na serveru zapnutý režim výkonu procesoru a nepodtaktovávat
    2.3.2021 18:04 j
    Rozbalit Rozbalit vše Re: MSSQL profilování
    Chovani je zavisly (dost) na tom, jak mas nastavenou databazi, trebas read committed snapshot. Jen pozor na to, ze nez neco zacnes menit, je treba si vzdy uvedomit dusledky a ne s kazdou aplikaci to lze. Tohle samo o sobe pomerne efektivne umi zabranit deadlockum.

    Velmi zjednodusene to funguje tak, ze pro transakci vytvori snapshot stavajicich dat, a tudiz dalsi query do stejnych dat neceka. Na druhou stranu to pak pochopitelne vraci starou verzi dat i v okamziku, kdyz je prave menis.

    Taky je dobry pouzivat hinty (rowlock/nolock...) opet treba vedet, co to znamena a obnasi.

    Potom taky spravny strukturovani transakci.

    To ze zjistis, ze se ti useri navzajem blokujou ti nijak zvlast nepomuze. Bydefault SQLko lock dava na page, takze ses schopen znepristupnit hromadu zaznamu i jedinym query.

    20s je jeste naprosta pohoda. A klidne se ti muzes stat, ze vysledkem tvyho zkoumani bude zjisteni, ze bez zasadni zmeny struktury databaze s tim nic neudelas.

    Jinak samotna akce je IMO spis vec na tema "kdyz je cas" ne? Jestli fakturu udelas ted nebo za hodinu je asi uplne jedno. Takze mozna je resenim i to, proste jen doklad omarkovat "k fakturaci" a vyfakturovat to nekde pres noc.

    ---

    Dete s tim guuglem dopice!

    15.7.2021 16:25 UL
    Rozbalit Rozbalit vše Re: MSSQL profilování
    Jako prvni krok doporucuju First Aid Kit on Brenta Ozara. https://www.brentozar.com/first-aid/

    CLovek dostane prvni nahled na to, kde muze byt problem. Umi to doporucit indexy, najde to nejake nesrovnalosti v konfiguraci, umi to identifikovat dlouho bezici dotazy atd. Moc dobry nastroj.

    Ohledne identifikace problemovych dotazu, ze jednou bezi 0.5s a jednou 20s. Setkal jsem se s tim taky. Jednou 3s jdenou 3 minuty. Je dost mozne, ze ta procedura ma pro urcite parametry neoptimalni exekucni plan (parametr sniffing). Tam muzes skusit pridat do procedury "WITH RECOMPILE" ci nejak potunit indexy. S identifikaci dotazu muze pomoci i Query store. Zkus ho zapnout, par dni sbirat data a pak se podivat na to co to hodi. Hledej dotazy s nejvetsi variabilitou.

    Pokud je ta procedura od dodavatele a ne in-house, reklamoval bych u dodavatele. Je velka pravdepodobnost, ze se s tim uz setkal a mozna vi jak to vyresit.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.