Sunteți pe pagina 1din 10

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Modelarea i performanele sistemelor de stocare


Ceea ce urmrim prin prezentul material este s oferim pe ct posibil un ghid de modelare i selecie a sistemelor de stocare funcie de necesitile aplicaiilor folosite, beneficiind de inelegerea teoriei cozilor explicat n prima parte a materialului. n final se va demonstra o analiz comparativ, prin teste, ntre dou tipuri de sisteme de stocare, rotaionale n configuraie RAID i SSD.

Teoria cozilor i utilizarea resurselor


Chiar dac teoria cozilor poate fi uneori prea academic i prea matematic, ea include un numr de reguli de baz care descriu comportarea sistemelor i a componentelor acestora la niveluri ridicate de utilizare. Una dntre principalele concluzii ale teoriei cozilor este c nu se poate ajunge la un nivel mare de utilizare a unei resurse fr ca un anumit fel de coad de ateptare s apar. Poate c nu pare evident ns acesta este un adevr. n esen o coad de cereri n ateptare este necesar pentru a ine resursa ocupat, n aa fel nct s existe ntotdeauna ceva de fcut dup ce se termin activitatea curent. Cu ct utilizarea unei resurse (procesor, sistem de stocare, memorie, reea) se apropie de 100% cu att lucrurile devin mai ngrijortoare pentru c asta nseamn n general un numr foarte mare de cereri care ateapt n diverse cozi. Efectul direct al unor cozi lungi este ateptarea din ce n ce mai ndelungat pentru rezolvarea unei cereri de calcul. Timpul total de rspuns pentru o cerere este acum egal cu durata de ateptare n coad adaugat la durata normal de procesare. Dac intr-o coad sunt n mod constant cite 5 cereri spre exemplu, timpul de rspuns pentru fiecare cerere este n fapt de 5 ori mai lung dect durata normal de procesare a unei cereri de ctre sistem. Teoria cozilor ne arat formula pentru numrul total de cereri (n coad i n curs de procesare N) relativ la gradul de utilizare al unei resurse (U):

N = U / (1 - U) Formula pentru timpul total de rspuns (R) funcie de gradul de utilizare i de timpul efectiv de prelucrare (T) este:

R = T / (1 - U) Prin urmare un grad mare de utilizare conduce la cozi lungi i la timpi mari de rspuns. Din cele de mai sus rezult c scopul urmrit n momentul modelrii unui sistem de calcul nu este timpul de tranzacionare (T) ci timpul total de rspuns pentru o tranzacie (R).

Richard Vencu, Richard Consulting SRL | Modelarea i performanele sistemelor de stocare

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Teoria cozilor vine prin urmare s confirme faptul c atunci cnd un sistem este scalat pentru a procesa mai multe date intotdeauna va apare o gtuire la o anumit component care va fi utilizat aproape de capacitatea sa maxim, componenta la care se vor forma cozi i timpul de rspuns general va crete pn la valori inacceptabile. Sarcina noastr va fi atunci s identificm i s remediem aceste gtuiri.

Figura 1 Lungimea exponenial a cozilor funcie de gradul de utilizare a unei resurse

Niveluri de utilizare a procesoarelor


Conform figurii 1 este recomandat ca utilizarea procesoarelor s fie mereu meninut sub 75%. Este adevrat ca ocazional pot aprea vrfuri de utilizare peste 75% dar este important ca ele s reprezinte numai nite excepii. Deoarece la 75% utilizare coada de ateptare are deja 3 cereri, nseamn c procesorul rezolv orice sarcin de 3 ori mai ncet dect la niveluri sczute de utilizare, iar peste 75% viteza scade n mod exponenial.

Niveluri de utilizare a discurilor


Nivelul de utilizare al discurilor devine problematic n mod exponenial dupa 85%. Acest lucru este adevrat att pentru gradul de ncrcare a spaiului pe disc ct i pentru gradul de ncrcare al interfeei de comunicaie.

Niveluri de utilizare a memoriei


Erorile de paginare (page faults) apar atunci cnd nu se pot gsi datele n memorie i ele trebuiesc recuperate de pe disc. Cum datele din memorie pot fi accesate cu viteze de 1000 de ori mai mari dect de pe disc se dorete, n consecin, creterea volumului de memorie a computerelor pentru a evita ct mai mult apariia acestor erori. Se recomand meninerea unui nivel de ncrcare sub 75%.

Sisteme de stocare, parametri i corelaii


Sistemele de stocare au cunoscut o dezvoltare spectaculoas n ultimii ani, folosind tehnologii din cele mai variate cum ar fi suporturile magnetice, optice dar i stocarea n memorii flash sau RAM cunoscute n general ca SSD. Indiferent de tehnologia n care sunt construite sistemele de stocare, ele vor prezenta mereu citeva caracteristici de baz relativ la dou componente de importan major: Lanul de interfee de conectare a mediului de stocare la computer Mediul de stocare propriu-zis (magnetic, optic, cip de memorie)

Ori de cte ori vom studia o fi tehnic a unui sistem de stocare vom descoperi diveri parametri legai de cele dou subsisteme menionate mai sus. Richard Vencu, Richard Consulting SRL | Sisteme de stocare, parametri i corelaii 2

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Se constat de cele mai multe ori c parametrii respectivi sunt extrem de variai i c suntem cel mai adesea pui n dificultate n luarea unei decizii corecte relativ la modelarea unui sistem de stocare care s ofere performana necesar la un pre acceptabil. n practic se ntilnesc citeva tipuri de aplicaii care au cerinte destul de diferite de la un sistem de stocare: Aplicaii tranzacionale Aplicaii de raportare Aplicaii media (streaming, transferuri de fiiere mari) Aplicaii de tip bibliotec sau aplicaii de arhivare

Desigur c natura aplicaiei va dicta care este cel mai important parametru al sistemului de stocare pe care urmrim s l modelm. n figura 2 sunt reprezentate gradul de distribuie al acestor tipuri de aplicaii precum i nevoia lor pentru sisteme de stocare performante.

OR MA NT A

OLTP (online) OLAP, DW, BW MEDIA

Figura 2 Tipuri de aplicaii i nevoi de performan din partea sistemelor de stocare

DE PE RF

NE VO IE

DENSITATE APLICATII

ECM, WF, COM ARHIVARE

Dac ne limitm totui la o singur aplicaie pe care o considerm critic i care folosete un volum extrem de mare de date putem s facem o analiz a fiierelor utilizate de ctre aplicaie din punctul de vedere al frecvenei de acces. Dup o astfel de analiz se poate modela cu succes un mediu de stocare format din echipamente de tipuri i cu performane diferite care s sustin aplicaia cu o performan total rezonabil i cu un cost rezonabil (vezi figura 3).

OR MA NT A

fisiere accesate foarte des (LOG...) fisiere accesate des (DB...) fisiere accesate normal fisiere accesate rar (BAK...)
3

Figura 3 Distribuia frecvenei de acces la fiiere pentru o aplicaie critic

DE PE RF NE VO IE

FISIERE ACCESATE DE APLICATIE

Richard Vencu, Richard Consulting SRL | Sisteme de stocare, parametri i corelaii

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Aplicaii tranzacionale (OLTP)


n acest sens, pentru o aplicaie tranzacional va fi n primul rnd necesar ca timpul de rspuns (R) s fie ct mai mic. Acest lucru se poate obine folosind un sistem de stocare cu o latena (T) ct mai mic i cu un grad de utilizare ct mai mic. Cum din considerente economice nu ne permitem s meninem echipamentele neutilizate, rezult c parametrul cel mai important al sistemului de stocare pentru o aplicaie tranzacional este latena (T). Latena este un parametru care depinde de nsumarea timpilor de acces la mediul de stocare i a timpilor de transfer dinspre mediul de stocare nspre interfaa de conectare. Prin urmare interfaa de conectare la computer trebuie n primul rind s aib latena mic i nu n mod neaprat o band foarte mare, deoarece n sistemele tranzacionale mrimea tranzaciilor este redus. Dac studiem fiele tehnice de la majoritatea sistemelor de stocare (SAN) constatm c acest parametru este n general trecut cu vederea i c toi producatorii se ntrec s prezinte un alt parametru care exprim capabilitatea de a susine un numr de tranzacii n unitatea de timp, notat IOPS (Input Output Per Second). Acest parametru este conectat de laten prin legea lui Little: Q = T x IOPS, unde Q este numrul de cereri care se afl n coad la un moment dat (reamintim c N = Q + numrul de cereri aflate deja n prelucrare). Atragem atenia aici c IOPS este invers proporional cu latena T i c pentru un sistem cu latena mare, pentru a obine IOPS mare trebuie n general construit o configuraie uria, care de cele mai multe ori este doar pur teoretic i nu va fi niciodat implementat datorit costurilor enorme. n concluzie trebuie urmrit mai curind parametrul laten i nu parametrul IOPS dac dorim s modelm un sistem de stocare pentru o aplicaie tranzacional. Un alt aspect important pentru o aplicaie tranzacional este proporia comenzilor de scriere fa de cele de citire. Deoarece anumite medii de stocare prezint latene diferite la scriere i la citire, este important, n anumite cazuri, de evaluat n mod distinct impactul timpilor la scriere i la citire. Nu n ultimul rnd, aplicaiile tranzacionale necesit de regul volume de stocare mai mici. Dac n mod excepional aplicaia are nevoie s tranzacioneze volume de date mari (de exemplu la baza de date nu se folosete o mrime de bloc uzual de 4K sau 8K ci de 64K sau chiar mai mare) atunci trebuie luat n considerare i parametrul MBPS care trebuie estimat dup formula aproximativ: MBPS = [DB block size] x IOPS

Aplicaii de raportare (OLAP, BW, DW)


Aplicaiile de raportare seamn cu cele tranzacionale cu excepia faptului c n majoritatea timpului au loc tranzacii de citire. O alt diferen const n faptul c volumul de stocare necesar este mult mai mare, prin urmare va trebui ales, din considerente economice, un mediu de stocare mai ieftin chiar dac asta presupune un compromis n ceea ce privete parametrul laten (T).

Richard Vencu, Richard Consulting SRL | Sisteme de stocare, parametri i corelaii

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Aplicaiile media
Cele mai mari consumatoare de band de transfer sunt aplicaiile media deoarece ele tranzacioneaza rar dar cu fiiere de mari dimensiuni. Din punctul de vedere al unui sistem de stocare cel mai important parametru aici este laimea de band oferit de interfaa de conectare a sistemului la computer. n general gsim n fiele tehnice ale produselor de stocare acest parametru notat MBPS (MB Per Second).

Aplicaii de bibliotec i de arhivare (ECM, WF, EMAIL, etc)


n ceea ce privete aplicaiile de arhivare, cel mai important parametru este preul ct mai mic per MB i stabilitatea ct mai mare a datelor pe termen lung. Aici de obicei prsim lumea discurilor magnetice pentru a discuta despre benzi i discuri optice.

Tipuri de sisteme de stocare


Sistemele de stocare folosite curent n mediul corporatist sunt denumite SAN i ofer resurse de stocare pentru mai multe servere simultan. Conectivitatea dinspre computer spre SAN este de cele mai multe ori oferit prin interfee de mare vitez, denumite Fibre Channel (FC) sau Infiniband. Chiar dac la prima vedere dou SAN-uri cu acelai numr de interfee FC de 4Gbps spre exemplu par s fie identice din punct de vedere al conectivittii, trebuie totui s oferim puin atenie mai multor componente de conectivitate ale sistemului, unele chiar necesitnd consultarea unor documente tehnice mai puin vizibile la productori: Backplane Controllere aflate ntre backplane i mediile de stocare Interfeele mediilor de stocare propriu-zise

De exemplu este inutil s populm un SAN cu mai multe interfee externe s spunem FC a cror vitez de transfer cumulat depete viteza de transfer a backplane-ului fr s avem i alte considerente dincolo de cele de performan. Funcie de mediile de stocare folosite, SAN-urile pot fi grupate n: SAN bazat pe un numr de discuri fixe n tehnologie SCSI, SAS, etc SAN compatibil cu discurile fixe dar care folosete discuri flash SSD n loc de discurile fixe SAN SSD cu memorie de tip FLASH integrat proprietar n sistem SAN SSD cu memorie de tip DDR integrat proprietar n sistem

Putem bnui de la prima vedere c att performanele ct i preul per GB crete n ordinea listei de mai sus. Cum se poate face un compromis rezonabil pre/performan? n figura 4 este prezentat o piramid a performanelor care poate fi suprapus peste piramida tipurilor de Aplicaii sau a densitii de acces la fiiere pentru o aplicaie critic. n acest fel datele cele mai accesate pot fi stocate pe un SAN foarte rapid (de exemplu RAM SSD) n timp ce datele cele mai puin folosite pot fi stocate pe sisteme rotaionale clasice. Richard Vencu, Richard Consulting SRL | Tipuri de sisteme de stocare 5

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Modelarea unei structuri piramidale cu toate etajele de performana poate deveni un factor determinant n a oferi un raport pre/calitate foarte bun tuturor tipurilor de Aplicaii rulate ntr-un centru de calcul.

RAM SSD
OR MA NT A

FLASH SSD + cache SSD FLASH SSD RAID + cache ROTATIV RAID

Figura 4 Performana sistemelor de stocare funcie de tehnologia de stocare

Testarea sistemelor de stocare


Dei fiele tehnice i ofertele comerciale ne pot face o anumit idee despre performanele unui sistem de stocare, este ntotdeauna interesant de testat un sistem de stocare nou pentru a putea evalua impactul concret al noilor performane n propriul mediu de lucru. Pentru acest lucru ne putem folosi de simplele instrumente de benchmarking care se gsesc pe internet dar care n general nu ne lasa sa intelegem prea usor ce se petrece cu sistemul respectiv i din ce cauza apar limitari sau dac exista solutii de imbunatatire a configuratiei pentru a ne atinge scopul propus. O alta abordare este sa folosim instrumente de testare bazate pe teoria cozilor. Principiul de funcionare al acestora este aplicarea unui stres pe sistemul de stocare prin crearea i meninerea constant a unei cozi de cereri de tranzacionare (scriere i citire). Un avantaj al acestor unelte este acela c prin mrirea progresiv a dimensiunii cozilor, putem s depim la un moment dat avantajul oferit de componentele de caching i s evalum comportarea sistemelor de stocare n cele mai rele condiii de lucru. Cnd ne propunem s simulm mediul de lucru existent, va trebui s rspundem la anumite ntrebri: Care este proporia de cereri de scriere din totalul tranzaciilor I/O? Care este dimensiunea medie a tranzaciilor i care este dispersia acestei dimensiuni? Care este numrul de cereri din coad pentru care sistemul nc rspunde la un timp apropiat de latena (T) aici de exemplu pentru un RAID 5 compus din 5 discuri, fiecare avnd latena 4ms, numrul optim de cereri n coad va fi 4, deoarece logica ariei de discuri va distribui cele 4 cereri n mod echitabil pe discurile fizice, tot sistemul rspunznd la un timp apropiat de 4ms.

Dup ce evalum rspunsurile trebuie s construim un model de testare cu cereri mixte i cu cozi de lungimi diferite pentru a acoperi cit mai mult situaia aflat n mediul de lucru actual. Richard Vencu, Richard Consulting SRL | Testarea sistemelor de stocare 6

PE RF

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

n continuare sunt prezentate grafice rezultate n urma testrii comparative a dou sisteme de stocare cu urmatorii parametrii:

Configurarea testului:
Baza de date cu dimensiunea de 120GB Simulare aplicaie de raportare (100% citiri) Mix de tranzacii mici (8K 1...60 tranzacii) i tranzacii mari (1M 1...12 tranzacii) Windows Server 2008 Fiierul swap nu se afl pe nici unul dntre cele dou discuri

Sistemele testate:
RAID 5, format din 5 discuri SAS 146GB, 15000rpm, controller cu 500MB cache Placa PCIe x4 cu memorii FLASH oferind un volum cu o capacitate de 450GB

Valorile de catalog ale parametrilor de baz pentru echipamentele testate: Parametru (max) Latena IOPS MBPS HDD 2 ms latena seq 3.4 ms seek time ? SAS 3.0 Gb/s = 333 MBPS (8+1 bits) RAID 5 (estimat) 2ms latena seq 3.4ms seek time ? ? FLASH 50 us latena random No seek time 120 000 / 4KB citire 50000 / 4KB scriere 700 MBPS

n graficele de mai jos, pe axa orizontal este exprimat numrul de tranzacii mici (8K) din coad n timp ce meninem numrul de tranzacii mari (1M) din coad constant, acesta fiind exprimat de titlul curbei. Spre exemplu n graficul de latena FLASH, curba roie 1 reprezint timpul de laten constatat atunci cnd meninem n coad 1 tranzacie mare de 1MB i un numr variabil ntre 1 i 60 de tranzacii mici de 8KB. Comparativ, acelai lucru este reprezentat n graficul de laten RAID. De remarcat la graficul de laten RAID este ca o coad de 4 cereri mici i este optim pentru sistemul RAID datorit logicii de paralelizare a efortului pe toate discurile. Un alt aspect interesant apare n a decide dac plafonarea curbei 0 de la graficul IOPS al discului FLASH la valoarea de 30000 apare din cauza limitrii benzii de comunicaie a interfeei sau este o limitare dat intrinsec de valoarea latenei minime a discului. n pagina urmtoare sunt prezentate rezultatele testului menionat anterior. Acest test trebuie n principiu rafinat prin configurare cu valori care s simuleze ct mai aproape comportarea mediului curent de lucru n diverse situaii: Funcionare normal Regim de backup

Richard Vencu, Richard Consulting SRL | Testarea sistemelor de stocare

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Grafice teste
FLASH laten (ms)
16,0 14,0 12,0 10,0 8,0 6,0 50,0 0 1 2 4 6 8 10 1 3 9 15 21 27 33 39 45 51 57 12 0,0 1 3 9 20,0 10,0 40,0 30,0 0 1 2 4 6 8 10 12 15 21 27 33 39 45 51 57

RAID 5 laten (ms)

4,0
2,0 0,0

FLASH (mii IOPS)


x1000 IOPS 35 30 25 20

RAID 5 (mii IOPS)


x1000 IOPS 2,5 2 1,5 1 0,5 0 1 3 9 15 21 27 33 39 45 51 57

0 1 2 4 6 8

0 1 2 4 6 8

15
10 5 0 1 3 9 15 21 27 33 39 45 51 57

10
12

10
12

FLASH (MBPS)
700 600 500 400 300 200 100 1 2 4 6 8 10 0 2 6

RAID5 (MBPS)
250 200 150 100 50 0 0 2 6 12 18 24 30 36 42 48 54 60 1 2 4 6 8 10 12

12 12 18 24 30 36 42 48 54 60

Richard Vencu, Richard Consulting SRL | Testarea sistemelor de stocare

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Mai jos sunt prezentate graficele Laten, IOPS i MBPS pentru sistemul FLASH stresat n condiii mai grele de lucru: Tranzaciile mici sunt de numai 4K (ct este block size definit la formatarea discului) S-a introdus un procent de 30% de tranzacii tip scriere pentru care fia tehnic a sistemului de stocare ofer o cifr maxim IOPS mai mic

FLASH Laten (ms)


35,00 30,00 25,00 20,00 15,00 10,00 5,00 0,00 1 2 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60

0 6 12 24

FLASH (IOPS)
45000 40000 35000 30000 25000 20000 15000 10000 5000 0 1 2 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60

0
1 2 6 12 24

FLASH (MBPS)
600 500 400 300 200 100 0 0 1 2 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 1 6 12 24

Richard Vencu, Richard Consulting SRL | Contact

23 Octombrie 2009

[MODELAREA I PERFORMANELE SISTEMELOR DE STOCARE]

Contact
Richard Consulting SRL v st la dispoziie cu servicii de analiz, testare, evaluare i modelare a sistemelor de stocare pentru aplicaiile dumneavoastra. V rugam s ne contactai n acest sens la:
Richard Consulting SRL Iancu Jianu 21, Otopeni 075100, Romania http://www.richardconsulting.ro tel. +40-21-3005550 fax +40-21-3005552 mobil: +40-722-317317

richard.vencu@richardconsulting.ro

Richard Vencu, Richard Consulting SRL | Contact

10

S-ar putea să vă placă și