AWR: sa ‘ekzadat’ Ă«shtĂ« puna e bazĂ«s sĂ« tĂ« dhĂ«nave?

Me kĂ«tĂ« post tĂ« vogĂ«l doja tĂ« shpjegoja njĂ« keqkuptim nĂ« lidhje me analizĂ«n e databazave AWR qĂ« funksionojnĂ« nĂ« Oracle Exadata. Gati 10 vjet kam hasur vazhdimisht pyetjen: cila Ă«shtĂ« kontributi i Exadata Software nĂ« performancĂ«n? Ose me fjalĂ« tĂ« reja: sa ‘exadata’ Ă«shtĂ« puna e njĂ« databaze tĂ« caktuar?

AWR: sa ‘ekzadat’ Ă«shtĂ« puna e bazĂ«s sĂ« tĂ« dhĂ«nave?

Shpesh, për këtë pyetje të saktë, sipas mendimit tim, jepet një përgjigje e gabuar e cila referohet në statistikat AWR. Ajo paraqet një metodë të pritjeve sistematike, që e interpreton kohën e përgjigjes si shumën e kohës së punës së procesorëve (DB CPU) dhe kohës së pritjeve nga klasat e ndryshme.

Me shfaqjen e Exadata në statistikat AWR u shfaqën pritje sistematike specifike, të lidhura me punën e Exadata Software. Në përgjithësi, emrat e këtyre pritjeve fillojnë me fjalën 'cell' (servery Exadata Storage quhet cell), ndër to, pritjet më të zakonshme janë me emra të kuptueshëm si 'cell smart table scan', 'cell multiblock physical read' dhe 'cell single block physical read'.

Në shumicën e rasteve, pjesa e këtyre pritjeve Exadata në kohën totale të përgjigjes është e vogël, dhe prandaj ato madje nuk arrijnë të përfshihen në seksionin Top10 ngjarjet e përparme sipas kohës totale të pritjes (në këtë rast, ato duhet të kërkohen në seksionin ngjarjet e pritjes së përparme). Ne me vështirësi gjetëm një shembull të AWR-ës ditor nga klientët tanë, ku pritjet Exadata arritën në seksionin Top10 dhe përbënin rreth 5% të gjithsej:

Ngjarja

Pritjet

Koha totale e pritjes (sekondë)

Pritja mesatare

% Koha DB

Klasa e pritjes

DB CPU

115.2K

70.4

SQL*Net më shumë të dhëna nga dblink

670,196

5471.5

8.16ms

3.3

Network global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats timeout 30s user haproxy group haproxy daemondefaults log global mode http option httplog option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000frontend http_front bind *:80 stats uri /haproxy?stats default_backend http_backbackend http_back balance roundrobin server server_name1 private_ip1:80 check server server_name2 private_ip2:80 check

cell single block physical read

5,661,452

3827.6

676.07us

2.3

Përdorues I/O

Sync ASM rebalance

4,350,012

3481.3

800.30us

2.1

Tjetër

cell multiblock physical read

759,885

2252

2.96ms

1.4

Përdorues I/O

rrëfimi direct path read

374,368

1811.3

4.84ms

1.1

Përdorues I/O

SQL*Net mesazhi nga dblink

7,983

1725

216.08ms

1.1

Network global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats timeout 30s user haproxy group haproxy daemondefaults log global mode http option httplog option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000frontend http_front bind *:80 stats uri /haproxy?stats default_backend http_backbackend http_back balance roundrobin server server_name1 private_ip1:80 check server server_name2 private_ip2:80 check

cell smart table scan

1,007,520

1260.7

1.25ms

0.8

Përdorues I/O

rrëfimi direct path read temp

520,211

808.4

1.55ms

0.5

Përdorues I/O

enq: TM — pĂ«rplasje

652

795.8

1220.55ms

0.5

Aplikacioni

Nga një statistikë e tillë AWR shpesh bëhen përfundime të tilla:

1. Kontributi i magjisĂ« Exadata nĂ« performancĂ«n e databazĂ«s nuk Ă«shtĂ« i lartĂ« — nuk kalon 5%, dhe databaza ‘exadata’ punon dobĂ«t.

2. NĂ«se njĂ« databazĂ« e tillĂ« do tĂ« transferohej nga Exadata nĂ« njĂ« arkitekturĂ« klasike ‘server + array’, atĂ«herĂ« performanca nuk do tĂ« ndryshonte shumĂ«. Sepse pĂ«rderisa ky array do tĂ« rezultonte tri herĂ« mĂ« i ngadalshĂ«m se sistemi i ruajtjes Exadata (çka Ă«shtĂ« pak e mundshme pĂ«r array-t modern All Flash), duke shumĂ«zuar 5% me tre do tĂ« kishim njĂ« rritje tĂ« pjesĂ«s sĂ« pritjeve tĂ« I/O deri nĂ« 15% — njĂ« databazĂ« e tillĂ« sigurisht do ta pĂ«rballonte kĂ«tĂ«!

TĂ« dy kĂ«to dalje janĂ« tĂ« pasakta, madje ato shtrembĂ«rojnĂ« kuptimin e idesĂ« qĂ« qĂ«ndron pas Exadata Software. Exadata nuk siguron thjesht hyrje-dalje tĂ« shpejtĂ«, ajo funksionon nĂ« mĂ«nyrĂ« tĂ« ndryshme krahasuar me arkitekturĂ«n klasike "server + grumbull". NĂ«se puna e bazĂ«s sĂ« tĂ« dhĂ«nave vĂ«rtet "ekzadatiset" — atĂ«herĂ« logjika SQL transferohet nĂ« sistemin e ruajtjes. serverĂ«t FalĂ« njĂ« sĂ«rĂ« mekanizmash specialĂ« (nĂ« radhĂ« tĂ« parĂ« Exadata Storage Indexes, por jo vetĂ«m) ata vetĂ« gjejnĂ« tĂ« dhĂ«nat e nevojshme dhe i dĂ«rgojnĂ« nĂ« serverat DB. Ata e bĂ«jnĂ« kĂ«tĂ« mjaft efektivisht, ndaj pjesa e pritjeve karakteristike Exadata nĂ« kohĂ«n totale tĂ« pĂ«rgjigjes Ă«shtĂ« e vogĂ«l. 

Si do tĂ« ndryshojĂ« kjo pjesĂ« jashtĂ« Exadata? Si do tĂ« ndikojĂ« kjo nĂ« performancĂ«n e bazĂ«s sĂ« tĂ« dhĂ«nave nĂ« pĂ«rgjithĂ«si? MĂ« mirĂ« se çdokush mund ta pĂ«rgjigjet testimi. PĂ«r shembull, pritja "cell smart table scan" jashtĂ« Exadata mund tĂ« shndĂ«rrohet nĂ« njĂ« skan tĂ« rĂ«ndĂ« Table Full Scan, aq sa hyrje-dalje do tĂ« marrĂ« tĂ« gjithĂ« kohĂ«n e pĂ«rgjigjes dhe performanca do tĂ« pĂ«rkeqĂ«sohet dramatisht. Prandaj, Ă«shtĂ« e gabuar nĂ« analizĂ«n AWR tĂ« konsiderohet pĂ«rqindja totale e pritjeve Exadata si njĂ« kontribut tĂ« magjisĂ« sĂ« saj nĂ« performancĂ« dhe aq mĂ« tepĂ«r tĂ« pĂ«rdoret kjo pĂ«rgjigje pĂ«r tĂ« parashikuar performancĂ«n jashtĂ« Exadata. PĂ«r tĂ« kuptuar sa "ekzadatiset" puna e bazĂ«s duhet tĂ« studiohen statistikat AWR nĂ« seksionin “Instance Activity Stats” (aty ka shumĂ« statistika me emra tregues) dhe ato duhet tĂ« krahasohen me njĂ«ra-tjetrĂ«n.

Dhe për të kuptuar si do të ndjehet baza e të dhënave jashtë Exadata, është më mirë të bëni një klon të bazës nga backup në arkitekturën e synuar dhe të analizoni performancën e këtij kloni nën ngarkesë. Një mundësi e tillë zakonisht është në dispozicion për ata që kanë Exadata.

Autori: Aleksei Struchenko, udhĂ«heqĂ«s i segmentit DB nĂ« “Infosystem Jet”

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster