Fórum Root.cz

Hlavní témata => Hardware => Téma založeno: PanKapitanRUM 24. 03. 2013, 13:18:39

Název: Provoz databáze na SSD
Přispěvatel: PanKapitanRUM 24. 03. 2013, 13:18:39
K napsání tohoto postu mě "donutil" jeden z našich předních rootovských odborníků na HW ::)

Tedy: Mám se u SSD bát přepisů?
To je hodně záludná otázka, existují dva typy SSD z toho SLC ukládají do jedné buňky 1 informaci MLC více.
Databáze se lépe ve FIREMNÍM prostředí hodí na SAS SSD typu SLC.
Doma si ovšem vystačíme i s levným SSD typu MLC.

Základem honění si DB na SSD je použít dobrou databázi, MySQL Like je například Percona: http://www.percona.com/

Citace
Percona XtraDB is an enhanced version of the InnoDB storage engine for MySQL and MariaDB. It has much faster performance than InnoDB and better scalability on modern hardware. XtraDB has more features than InnoDB; these are useful in high-load environments. It is backwards-compatible with InnoDB, so you can use it as a drop-in replacement.

Percona podle různých tvrzení svých tvůrců počítá s provozem na SSD a řadu operací provádí v paměti, tj. celá transakce se zapíše z paměti na disk až po dokončení, atd. atd.

Faktem zůstává, že víc než SSD urychlí DB víc paměti, resp. vhodné nastavení SQL tak, aby měla k dispozici alespoň řekněme 2 giga jen pro sebe.

Vše je to dále rozebíráno například:
http://forum.root.cz/index.php?topic=6141.0
http://forum.root.cz/index.php?topic=5968.0

Není SSD jako SSD, menší SSD je obvykle složeno z méně chipů, tedy 30GB SSD má jednak 1/4 velikost oproti 120GB SSD, jednak jen 1/4  chipů, jednak skutečná kapacita je 30vs32GB a 120vs128GB tedy má i 1/4 kapacitu "volných buněk" vyhrazenou pro opotřebení a jednak se samozřejmě opotřebí (při stejném datovém toku) za 1/4 času.

Co to znamená?
Pokud chci mít SSD dlouho zdravé, určitě se vyplatí pořídit vyšší kapacitu, protože vyšší kapacita = více čipů, na které se rozkládá zápis.

Jak se rozbíjí SSD: http://diit.cz/clanek/ssd-deep-in-hell
Na to se vážně podívejte, to SSD vydrží neuvěřitelné věci!


Koukněme se na jedno SSD v intenzivním domácím provozu:
Na SSD byla databáze!

Citace
Model Number:   OCZ-VERTEX3                             
Serial Number:   OCZ-AACRZ----------
WWN:      -----------------------

 ID ATTRIBUTE                            STATUS   VALUE   WORST   THRESHOLD   TYPE   UPDATED   RAW
  1 Raw Read Error Rate                  0x000f   120   120   050   Pre-fail    Always     0/0
  5 Retired Block Count                  0x0033   100   100   003   Pre-fail    Always     0
  9 Power-On Hours                       0x0032   097   097   000   Old age     Always     2864h+50m+56.020s
 12 Device Power Cycle Count             0x0032   100   100   000   Old age     Always     0
171 Program Fail Count                   0x0032   000   000   000   Old age     Always     0
172 Erase_Fail Count                     0x0032   000   000   000   Old age     Always     0
174 Unexpected Power Loss                0x0030   000   000   000   Old age     Offline    40
177 Wear Range Delta                     0x0000   000   000   000   Old age     Offline    0
181 Program Fail Count                   0x0032   000   000   000   Old age     Always     0
182 Erase Fail Count                     0x0032   000   000   000   Old age     Always     0
187 Reported Uncorrectable               0x0032   100   100   000   Old age     Always     0
194 Temperature Celsius                  0x0022   030   030   000   Old age     Always     30 (Min/Max 30/30)
195 ECC On-the-Fly Error Count           0x001c   100   100   000   Old age     Offline    0/0
196 Reallocation Event Count             0x0033   100   100   003   Pre-fail    Always     0
201 Uncorrectable Soft Read Error Rate   0x001c   100   100   000   Old age     Offline    0/0
204 Soft ECC Correction Rate             0x001c   100   100   000   Old age     Offline    0/0
230 Life Curve Status                    0x0013   100   100   000   Pre-fail    Always     100
231 SSD Life Left                        0x0013   100   100   010   Pre-fail    Always     0
241 Lifetime Writes from Host            0x0032   000   000   000   Old age     Always     1079
242 Lifetime Reads to Host               0x0032   000   000   000   Old age     Always     1857

A teď porovnání s fungl novým SSD:

Citace
Model Number:   OCZ-VERTEX3 MI                         
Serial Number:   OCZ-L92997---------------
WWN:      ---------------------

 ID ATTRIBUTE                            STATUS   VALUE   WORST   THRESHOLD   TYPE   UPDATED   RAW
  1 Raw Read Error Rate                  0x000f   100   100   050   Pre-fail    Always     0/3224844
  5 Retired Block Count                  0x0033   100   100   003   Pre-fail    Always     0
  9 Power-On Hours                       0x0032   100   100   000   Old age     Always     181h+22m+27.760s
 12 Device Power Cycle Count             0x0032   100   100   000   Old age     Always     34
171 Program Fail Count                   0x0032   000   000   000   Old age     Always     0
172 Erase_Fail Count                     0x0032   000   000   000   Old age     Always     0
174 Unexpected Power Loss                0x0030   000   000   000   Old age     Offline    6
177 Wear Range Delta                     0x0000   000   000   000   Old age     Offline    0
181 Program Fail Count                   0x0032   000   000   000   Old age     Always     0
182 Erase Fail Count                     0x0032   000   000   000   Old age     Always     0
187 Reported Uncorrectable               0x0032   100   100   000   Old age     Always     0
194 Temperature Celsius                  0x0022   030   030   000   Old age     Always     30 (Min/Max 30/30)
195 ECC On-the-Fly Error Count           0x001c   120   120   000   Old age     Offline    0/3224844
196 Reallocation Event Count             0x0033   100   100   003   Pre-fail    Always     0
201 Uncorrectable Soft Read Error Rate   0x001c   120   120   000   Old age     Offline    0/3224844
204 Soft ECC Correction Rate             0x001c   120   120   000   Old age     Offline    0/3224844
230 Life Curve Status                    0x0013   100   100   000   Pre-fail    Always     100
231 SSD Life Left                        0x0013   100   100   010   Pre-fail    Always     0
241 Lifetime Writes from Host            0x0032   000   000   000   Old age     Always     107
242 Lifetime Reads to Host               0x0032   000   000   000   Old age     Always     125

A teď najdi 10 rozdílů  ::)

Zkusím stáhnout data ze smartů u podstatně více vytížených systémů.
Nicméně i po těch 2864-ti hodinách tj. cca 120-ti dnech permanence se netváří, že by mu něco vadilo  ::)

Na domácím serveru samozřejmě uvážíme, jaký bude poměr zápisů VS čtení, pokud je zápisů vlastně málo, není důvod nepoužít SSD!
Pokud si chceme být jistí, použijeme ze 120GB kapacity jen 100GB, pak i při úplném zaplnění disku bude vždy místo pro rozložení zátěže.
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: PanKapitanRUM 24. 03. 2013, 13:27:16
Situaci velice krásně vystihl to_je_jedno

Do SERVERU pochopitelne nelze tlacit konzumni SSD. Ale do "domaci athlonek kterymu rikam server a na muj blogisek mi pisnou komentar 2 holky za den" je to naprosto v pohode. Prave protoze tam nebude zadny velky load, ale chce slusny odezvy je SSD idealni volba. A zrovna Samsung 840PRO je na tohle pouziti "kousek vic nez notebook na fejs ale furt to jeste neni registr vozidel" jak delany (stejne jako predtim intel 320).

Já používám všude OCZ, neb máme super ceny, ale velmi věřím tomu, že ten Samsung bude v naprosté pohodě.
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: PanKapitanRUM 24. 03. 2013, 13:30:37
Jen pro info, 2 mechanické disky vytočí při provozu 24/7 2x10W =  70,- Kč měsíčně, to je 840,- Kč ročně!

Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: to_je_jedno 24. 03. 2013, 14:32:25
ja jsem zaujatej, me OCZ nesmi domu po tom co provedli s vyklestenim Vertex2, pak ne tak zcela povedeny Vertex3(ackoliv ty problemy byly primarne u SF)
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: Ivan 24. 03. 2013, 15:24:45
Zrovna zvažujeme obměnu starého serveru DELL PowerEdge 850 na kterém běží MySql. Teď tam jsou SCSI disky což si myslím je zbytečný nadstandard. Jaké disky byste mi navrhli pro tuto zátěž, viz screenshot?  Plotny nebo SSL? Bude se měnit celý server, takže nemusí být kompatibilní s původním DELLem. A není to kritická aplikace, je to web kde jsou denní zálohy a to po případ havárie stačí. http://dl.dropbox.com/u/951343/zatez-mysql.gif
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: PanKapitanRUM 24. 03. 2013, 16:06:25
2 Ivan: low-endové SSD bych do FIREMNÍHO serveru asi nedával ::)

Něco jiného je "domácí chroustalka", na které honíš nějaké fórum a občas něco vyvíjíš a opravdový firemní server.
Dej tam klasický disk a hodně paměti, výsledek dopadne hodně podobně.

V každém případě si nech udělat návrh serveru komplet třeba od Delláků.
SAS SSD se v serveru hodí, hlavně pokud tam honíš třeba virtuály, ale výrobce serveru má určitě svoje "oblíbené" a "odzkoušené" železo.
Nemá smysl jít proti nim.

Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: mca 24. 03. 2013, 16:08:31
Jenze Intel320 neni consumer SSD, ale enterprise SSD a pouzivaji se do serveru napr.: Thomas Krenn AG. Jsou levne, odolne a maji velkou Spare Area. Consumer disk ti pod mix. workloadem spadne hodne rychle.
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: Ivan 24. 03. 2013, 21:27:09
@PanKapitanRUM: Díky, myslel jsem si to také tak, ale řekl jsem si, že za zeptání nic nedám :) Přeci jen o SSD v podstatě nic nevím, všude je milion protichůdných informací a já jsem spíše přes přes SW než přes HW.
Název: Re:Provoz databáze na SSD
Přispěvatel: Rax 24. 03. 2013, 22:36:40
K napsání tohoto postu mě "donutil" jeden z našich předních rootovských odborníků na HW ::)

A je to pořád stejně špatně, nikdo ze zdejších včetně RUMa evidentně nikdy v praxi neprovozoval DB na SSD a jen se tak plká.
Abychom se posunuli vpřed, potřebujeme sehnat někoho kdo v reálném provozu provozuje průměrnou DB na SSD tak dva roky a myslí se prostá náhrada SSD za HDD, žádné enterprise cacheování vybraných dat na SSD.

Do té doby navrhuji věnovat se spíše konzumaci tuzemáku ;)
Název: Re:Provoz databáze na SSD
Přispěvatel: PanKapitanRUM 24. 03. 2013, 23:27:33

Odborník asi nejsi, ale jako komik jsi super ;D
http://www.youtube.com/watch?v=jBupII3LH_Q
Název: Re:Provoz databáze na SSD
Přispěvatel: Bla 25. 03. 2013, 10:46:52
Databáze na SSD lítá jako z praku!
Pokud do databáze nezapíšete víc než pár giga za den, musí vydržet 5 let, je to i ve specifikaci JEDEC!
Název: Re:Provoz databáze na SSD
Přispěvatel: Ivan 25. 03. 2013, 10:54:00
@Bla: O tom není pochyb. Otázka je, na jakém SSD. Už se tu někde objevil odkaz na 800 GB disk za 5400 Ł, tak do něj fakt nejdu, na to si ten web rozhodně nevydělá ;)
Název: Re:Provoz databáze na SSD
Přispěvatel: Tomas 25. 03. 2013, 11:07:02
Nechcem nikoho kritizovat, ale info v tomto vlakne je uplne mimo.

a) najdolezitejsie je pouzit enterprise level SSD a je v zasade jedno ci SLC alebo MLC,

b) je potrebne zvazit data motion (toto sa da vo vela pripadoch aj prepocitat pomerne presne),

c) dimenzovat kapacitu SSD nie "akurat" ale aspon "krat tri - styri",

d) pri SSD na databazach je dolezity jitter response time pri zatazi pod viacerymi vlaknami / procesmi, v pripade ak lieta latencia, vykon DB prakticky nestupne,

e) dolezite je nastavenie DB ako takej tak, aby sa toho co mozno najviac vykonavalo v operacnej pamati. A samozrejme optimalizovat veci typu Query cache, pozriet sa obcas do slow query logu, navysit limity na otvorene handles + max open tables ci ako sa to vola atd atd. je to celkom veda + nezabudnut vyhodnocovat az "po nejakej dobe" tzv. warm up time.


Pre zvedavcov, skuste dat do googlu MySQL & SSD Intel 520 benchmark.

AK zvazujete kupu, minuly rok v 4Q Intel uvolnil SSD DC 3700 (100 - 800 GB verzie). Cenovo su pomerne dostupne, je to MLC s "konstantnou" latenciou. Mam odskusane zatial iba 2 mesiace nad MySQL. Bezi vyrazne kludnejsie ako consumer 520tky (tie vazcsie, 180GB verzie - ono su totiz ine nez tie male).

+ pozrite si MySQL Performance blog. TI chalpci napisali knihu, zivia sa konzultaciami a po dvoch rokoch som sa od nich aspon nieco naucil :) aj ked uprimne, su fakt dobri...
Název: Re:Provoz databáze na SSD
Přispěvatel: tadeas 25. 03. 2013, 11:18:07
Abychom se posunuli vpřed, potřebujeme sehnat někoho kdo v reálném provozu provozuje průměrnou DB na SSD tak dva roky a myslí se prostá náhrada SSD za HDD, žádné enterprise cacheování vybraných dat na SSD.
Tady :) . Všechny mastery jsou celé na SSD a funguje to dobře a rychle :) . Největší problém je master-slave replikace na slave bez SSD, jinak master-master kde je obojí na SSD taky funguje jak má. Jedná se o Perconu, cca 100 tabulek jak InnoDB tak MyISAM (ty velké vesměs spíš InnoDB) a cca 60 GB dat.
Název: Re:Provoz databáze na SSD
Přispěvatel: dbart 25. 03. 2013, 14:21:39
pozrite si aj ako prezbrojovali na Anandtechu: http://www.anandtech.com/show/6824/inside-anandtech-2013-allssd-architecture (http://www.anandtech.com/show/6824/inside-anandtech-2013-allssd-architecture)
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: j 25. 03. 2013, 16:58:32
Zrovna zvažujeme obměnu starého serveru DELL PowerEdge 850 na kterém běží MySql. Teď tam jsou SCSI disky což si myslím je zbytečný nadstandard. Jaké disky byste mi navrhli pro tuto zátěž, viz screenshot?  Plotny nebo SSL? Bude se měnit celý server, takže nemusí být kompatibilní s původním DELLem. A není to kritická aplikace, je to web kde jsou denní zálohy a to po případ havárie stačí. http://dl.dropbox.com/u/951343/zatez-mysql.gif

Dneska se vsude (pokud se bavime o serverech) pouziva prakticky vyhradne SAS, to je samo kompatabilni se SATA diskama. SCSI je uz pase, a ma to smysl resit spis jako muzealni kousky ;D.

Ta zatez kterou generujes je celkem smesna, nejakych 100Q/s ve spicce. Presne jak pise RUM, pro DB je daleko dulezitejsi RAMet. V idealnim pripade se ti cela do ty RAMky vejde ;D. V mene idealnim pripade, se ti do ni vejde alespon ta cast dat, se kterou se pravidelne pracuje. Minimalne je dobry aby se do pameti vesly indexy, coz muze hodit klidne 50% i vic celkovyho objemu databaze. Ovsem je to zavisly na zpusobu vyuziti ... pomeru zapisy/cteni ... mam tu DB, ktere je celkem cca 300GB velka a bezi mi na stroji co ma 64GB RAMky ... uspesnost nalezeni dat v RAMce je pres 98% => pri cteni se prakticky vubec neleze na disk.

Jinak pocitej s tim, ze pokud ten server koupis komplet, vcetne uloziste, vyjde te to vyrazne levnejs nez kdyz si to budes postupne skladat - 1U, 2x4 + 128GB nekde kolem 150kKc (bez disku, jen se dvema CFkama v zrcadle na boot - je to virtual, a je k nemu pripojeny pole)

BTW: RAXe neber vazne, ten vzivote SSD nevidel. Ja videl zcela in natura SSD chcipnout, a nevidim v tom zadnej rozdil proti tomu, kdyz mi chcipne HDD. Proste vemu a vymenim. Zato na to, abych vygeneroval tech cca 3k IO, ktery potrebuju pro databazisku, potrebuju nejakych 20 15k disku (tak tak) vs 2 SSD s prstem v nose. Takze se pohybujeme (velmi zhruba) v cenovy relaci 50k za SSD vs 1/2M za pole (pomijim takovy srandy jako FC switche a dalsi bizuterii).
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: PanKapitanRUM 25. 03. 2013, 18:06:34

Jo je vidět, že se snadno dostaneš k drahému HW a máš s tím své zkušenosti.
Já se k drahému HW dostanu jen občas, trochu ti závidím ;D
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: j 25. 03. 2013, 19:41:27

Jo je vidět, že se snadno dostaneš k drahému HW a máš s tím své zkušenosti.
Já se k drahému HW dostanu jen občas, trochu ti závidím ;D

Mno drahy ... jak se to veme ... znam lidi kteri se pohybuji o rady vejs, a HW nepocitaj na jednotlivy stroje ale na desitky racku ;D. Kazdopadne sem nekolikrat poucen v tom ohledu, ze vylozene setrit se moc nevyplaci, ale na druhou stranu, ze cena s kvalitou zbozi absolutne vubec nesouvisi.
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: Rax 26. 03. 2013, 06:27:34

Nemá smysl takhle plkat, ukažte mi člověka který provozuje v reálném serverovém provozu průměrně zatíženou DB MS SQL nebo Oracle nebo PostgreSQL ze 100 % na SSD a to po dobu dvou let a řekne nám svoje zkušenosti a já se pod to podepíšu.
Nikdo ze zdejšího osazenstva to evidentně není.
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: Ivan 26. 03. 2013, 11:16:15
Nemá smysl takhle plkat, ukažte mi člověka který provozuje v reálném serverovém provozu průměrně zatíženou DB MS SQL nebo Oracle nebo PostgreSQL ze 100 % na SSD a to po dobu dvou let a řekne nám svoje zkušenosti a já se pod to podepíšu.
Nikdo ze zdejšího osazenstva to evidentně není.
Co se ti nezdá na příspěvku od tadease?
Název: Re:SSD s Databází (Provoz Databáze na SSD)
Přispěvatel: PanKapitanRUM 26. 03. 2013, 11:19:27
Co se ti nezdá na příspěvku od tadease?

Myslím že především to, že se mu příspěvek od tadease nehodí do krámu  ;D
Název: Re:Provoz databáze na SSD
Přispěvatel: tadeas 26. 03. 2013, 13:19:19
Rax píše o MS SQL, Oracle nebo Postgres. Já mám zkušenosti akorát s MySQL, resp. Perconou. Což je určitě obrovskej rozdíl:-)
Název: Re:Provoz databáze na SSD
Přispěvatel: j 26. 03. 2013, 16:15:33
Rax píše o MS SQL, Oracle nebo Postgres. Já mám zkušenosti akorát s MySQL, resp. Perconou. Což je určitě obrovskej rozdíl:-)

Rozdil to ponekud je, MySQL se bezne na "kriticky" aplikace nepouziva (a samo neumi spoustu veci), ale z hlediska diskovyho provozu, je to celkem sumak.
Název: Re:Provoz databáze na SSD
Přispěvatel: drunkez 27. 03. 2013, 11:58:30
takze...na iodrive2 u nas bezia orakle s AAA databazami, co su z principu u telko operatora intenzivne vyuzivane DBky, po cirka pol roku monitoring nepovedal absolutne nic. tie iodrajvy si ako nove, imo firmware robi svoje. DBaci su s performance nenormalne spokojny.
D out