AWR: наколькі «экзадат» праца базы дадзеных?

Гэтым невялікім пастом хацелася б развеяць адно непаразуменне, звязанае з аналізам AWR баз дадзеных, якія працуюць на Oracle Exadata. Амаль 10 гадоў я ўвесь час сутыкаюся з пытаннем: які ўклад Exadata Software у прадукцыйнасць? Або з выкарыстаннем новаўтвораных слоў: наколькі "экзадат" праца той ці іншай базы дадзеных?

AWR: наколькі «экзадат» праца базы дадзеных?

Часта на гэтае правільнае пытанне, на мой погляд, даецца няправільны адказ са спасылкай на статыстыку AWR. У ёй прадстаўлены метад сістэмных чаканняў, які тлумачыць час водгуку як суму часу працы працэсараў (DB CPU) і часу чаканняў розных класаў.

Са з'яўленнем Exadata у статыстыцы AWR з'явіліся спецыфічныя сістэмныя чаканні, злучаныя з працай Exadata Software. Як правіла назвы такіх чаканняў пачынаюцца са слова "cell" (вочкам называецца Exadata Storage сервер), з іх часцей за ўсё сустракаюцца чаканні з размаўлялымі назвамі "cell smart table scan", "cell multiblock physical read" і "cell single block physical read".

У большасці выпадкаў дзель такіх Exadata-чаканняў у агульным часе водгуку малая, і таму яны нават не пападаюць у секцыю Top10 Foreground Events by Total Wait Time (у гэтым выпадку іх трэба шукаць у падзеле Foreground Wait Events). Мы з вялікай працай выявілі ў нашых заказчыкаў прыклад сутачнага AWR, у якім Exadata-чаканні патрапілі ў секцыю Top10 і ў суме склалі каля 5%:

падзея

Чакае

Total Wait Time (sec)

Avg Wait

% DB time

Wait Class

DB CPU

115.2K

70.4

SQL*Net more data from dblink

670,196

5471.5

8.16ms

3.3

сетка

cell single block physical read

5,661,452

3827.6

676.07us

2.3

User I/O

Sync ASM rebalance

4,350,012

3481.3

800.30us

2.1

іншае

cell multiblock physical read

759,885

2252

2.96ms

1.4

User I/O

direct path read

374,368

1811.3

4.84ms

1.1

User I/O

SQL*Net message from dblink

7,983

1725

216.08ms

1.1

сетка

cell smart table scan

1,007,520

1260.7

1.25ms

0.8

User I/O

direct path read temp

520,211

808.4

1.55ms

0.5

User I/O

enq: TM - contention

652

795.8

1220.55ms

0.5

дадатак

З падобнай AWR статыстыкі часта робяць такія высновы:

1. Уклад магіі Exadata ў прадукцыйнасць базы дадзеных не высокі - не перавышае 5%, а база дадзеных "экзадат" дрэнна.

2. Калі такую ​​базу перанесці з Exadata на класічную архітэктуру «сервер + масіў», то прадукцыйнасць зменіцца не моцна. Таму што нават калі гэты масіў апынецца ўтрая павольней сістэмы захоўвання Exadata (што ці ледзь магчыма для сучасных All Flash масіваў), то памножыўшы 5% на тры мы атрымаем павелічэнне дзелі чаканняў уводу-высновы да 15% - такое база дадзеных напэўна перажыве!

Абодва гэтых высновы недакладныя, больш за тое яны скажаюць разуменне ідэі, закладзенай у Exadata Software. Exadata не проста забяспечвае хуткі ўвод-вывад, яна працуе прынцыпова інакш у параўнанні з класічнай архітэктурай "сервер + масіў". Калі праца базы дадзеных сапраўды "экзадаціцца" - то на сістэму захоўвання пераносіцца SQL-логіка. Storage серверы дзякуючы шэрагу спецыяльных механізмаў (у першую чаргу Exadata Storage Indexes, але не толькі) самі знаходзяць патрэбныя дадзеныя і перасылаюць DB поўнач. Яны робяць гэта дастаткова эфектыўна, таму доля характэрных Exadata-чаканняў у агульным часе водгуку малая. 

Як зменіцца гэтая доля па-за Exadata? Як гэта адаб'ецца на прадукцыйнасці базы даных у цэлым? Лепш за ўсё на гэтыя пытанні адкажа тэсціраванне. Напрыклад, чаканне "cell smart table scan" па-за Exadata можа ператварыцца ў такі цяжкі Table Full Scan, што ўвод-вывад зойме ўвесь час водгуку і прадукцыйнасць пагоршыцца драматычна. Менавіта таму няправільна пры аналізе AWR лічыць сумарны працэнт чаканняў Exadata укладам яе магіі ў прадукцыйнасць і тым больш выкарыстоўваць гэты працэнт для прагназавання прадукцыйнасці па-за Exadata. Каб зразумець наколькі "экзадат" праца базы трэба вывучаць статыстыкі AWR секцыі "Instance Activity Stats" (там шмат статыстык з размаўлялымі назвамі) і параўноўваць іх паміж сабой.

А каб зразумець, як будзе сябе адчуваць база дадзеных па-за Exadata, лепш за ўсё зрабіць з бекапа клон базы на мэтавай архітэктуры і прааналізаваць прадукцыйнасць гэтага клона пад нагрузкай. Такая магчымасць у ўладальнікаў Exadata, як правіла, ёсць.

Аўтар: Аляксей Стручэнка, кіраўнік кірунку БД «Інфасістэмы Джэт»

Крыніца: habr.com

Дадаць каментар