{"id":150,"date":"2006-11-08T10:29:47","date_gmt":"2006-11-08T08:29:47","guid":{"rendered":"http:\/\/soci.hu\/blog\/index.php\/2006\/11\/08\/sql-server-diszk-kezeles\/"},"modified":"2006-11-08T10:34:13","modified_gmt":"2006-11-08T08:34:13","slug":"sql-server-diszk-kezeles","status":"publish","type":"post","link":"https:\/\/soci.hu\/blog\/index.php\/2006\/11\/08\/sql-server-diszk-kezeles\/","title":{"rendered":"SQL Server diszk kezel\u00e9s"},"content":{"rendered":"<p>Az sql list\u00e1ra \u00edrtam az al\u00e1bbi sz\u00f6sszenetet, hasznos lehet m\u00e1snak is, beedit\u00e1lom h\u00e1t ide is.<\/p>\n<p>Ha a guideline-okat n\u00e9zz\u00fck sok viny\u00f3 kellene m\u00e1r egy adatb\u00e1zishoz is (k\u00fcl\u00f6n, a windowsnak, page filenak, adatnak, lognak, stb.), pedig sok c\u00e9g 5-10 adatb\u00e1zist is tart egy sql serveren.<\/p>\n<p>Az a fajta b\u0171v\u00e9szked\u00e9s, amit r\u00e9gebbi doksikban lehet olvasni, szerintem egyszer\u0171en nem m\u0171k\u00f6dik, mert nincs el\u00e9g hdd hozz\u00e1. Ha van, persze akkor ok.<\/p>\n<p>Ami legnevets\u00e9gesebb nekem, amikor 10 log file-t r\u00e1raknak egy hdd-re, vagy egy mirrorrra. Ha el\u00e9g akt\u00edvak az adatb\u00e1zisok, \u00f6ssze-vissza reszel a fej a log hddn, pont a szekvenci\u00e1lis \u00edr\u00e1sb\u00f3l sz\u00e1rmaz\u00f3 teljes\u00edtm\u00e9ny el\u0151ny veszik el.<\/p>\n<p>Sokan nem tudj\u00e1k mi\u00e9rt sokkal gyorsabb a szekvenci\u00e1lis log \u00edr\u00e1s (ha nem rontjuk el, mint az el\u0151bbi p\u00e9ld\u00e1ban.)<\/p>\n<p>Tegy\u00fck fel a hdd \u00e1tviteli sebess\u00e9ge 100MByte\/s. Az\u00e9rt ez el\u00e9g gyors hdd. Legyen az \u00e1tlagos el\u00e9r\u00e9si id\u0151 5 ms.<\/p>\n<p>Ha az sql server az adatokat mondjuk 8 kByte-os blokkokban olvassa, akkor ugye m\u00e1sodpercenk\u00e9nt 200 x 8 = 1.6Mbyte-ot tud olvasni (a 200 az 5 ms reciproka).<\/p>\n<p>Azaz a szuper 30000-en p\u00f6rg\u0151 dr\u00e1ga hdd m\u00e9g 2%-ig sincs kihaszn\u00e1lva! Mit lehet tenni? N\u00f6velni kell a blokkok m\u00e9ret\u00e9t. De az sajnos az sql server mag\u00e1n\u00fcgye, viszont szerencs\u00e9re \u0151 pr\u00f3b\u00e1lja el\u00e9g nagy harap\u00e1sokban olvasni az adatokat, \u00edgy az\u00e9rt nem annyira rossz a helyzet, de ha belegondolunk, m\u00e9g 128k-s blokkokn\u00e1l is csak 128&#215;200 25 Mbyte\/seccel olvas, azaz m\u00e9g a viny\u00f3 negyed\u00e9t se haszn\u00e1lja ki.<\/p>\n<p>Ez van teh\u00e1t az adat viny\u00f3kon. Mit lehet tenni? T\u00f6bb viny\u00f3 kell, egym\u00e1st\u00f3l f\u00fcggetlen\u00fcl mozg\u00f3 fejekkel (teh\u00e1t nem part\u00edci\u00f3k, hanem hddk). Ezeken vagy sz\u00e9t kell osztani az adatb\u00e1zist file groupokkal, vagy valamilyen \u00e9rtelmes raidbe szervezve egyben l\u00e1tni \u00e9s haszn\u00e1lni \u0151ket (1+0, pl.). Ebben az esetben ugye a raid k\u00e1rtya osztja el a terhel\u00e9st.<\/p>\n<p>A log eset\u00e9n teljesen m\u00e1s a helyzet, ha csak egy log file vagy egy hddn (vagy egy mirroron, kett\u0151t egyszerre \u00edrni ugyanolyan gyors, mint egyet), akkor elvileg ki lehet haszn\u00e1lni mind a 100 Mbyte\/secet.<\/p>\n<p>Sz\u00f3val realisztikus esetben, pl. 4 viny\u00f3 \u00e9s 5 adatb\u00e1zis eset\u00e9n nem marad m\u00e1s, mint raid 1+0-ba bek\u00f6tni \u0151ket, \u00e9s az eg\u00e9sz bag\u00e1zst, operendszert, page filet, data filokat, logokat, mident erre a raidre rakni.<\/p>\n<p>Szerintem egyszer\u0171en nincs el\u00e9g viny\u00f3 sz\u00e9tb\u0171v\u00e9szkeni a k\u00e9rd\u00e9st.<\/p>\n<p>Ha persze egy nagy teljes\u00edtm\u00e9ny\u0171 OLTP adatb\u00e1zisr\u00f3l van sz\u00f3, dedik\u00e1lt g\u00e9ppel, akkor \u00e9rdemes fil\u00f3zni a beoszt\u00e1son. A logot akkor mindenk\u00e9ppen k\u00fcl\u00f6n kell venni, a t\u00f6bbi szerintem nem kritikus, ha egy bag\u00e1zsba ker\u00fcl.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Az sql list\u00e1ra \u00edrtam az al\u00e1bbi sz\u00f6sszenetet, hasznos lehet m\u00e1snak is, beedit\u00e1lom h\u00e1t ide is. Ha a guideline-okat n\u00e9zz\u00fck sok viny\u00f3 kellene&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,4,21],"tags":[],"class_list":["post-150","post","type-post","status-publish","format-standard","hentry","category-adatbazisok","category-szakmai-elet","category-sql-server-2005"],"_links":{"self":[{"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/150","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=150"}],"version-history":[{"count":0,"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/150\/revisions"}],"wp:attachment":[{"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=150"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=150"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/soci.hu\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=150"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}