Ushbu qisqa post bilan men Oracle Exadata-da ishlaydigan AWR ma'lumotlar bazalarini tahlil qilish bilan bog'liq bir tushunmovchilikni yo'q qilmoqchiman. Deyarli 10 yil davomida men doimo savolga duch kelaman: Exadata Software unumdorlikka qanday hissa qo'shadi? Yoki yangi yaratilgan so'zlardan foydalangan holda: ma'lum bir ma'lumotlar bazasining ishi qanchalik "mutaxassis"?
Ko'pincha bu to'g'ri savolga, mening fikrimcha, AWR statistikasiga asoslanib, noto'g'ri javob beriladi. U javob vaqtini protsessorlarning (MB CPU) ish vaqti va turli sinflarning kutish vaqti yig'indisi sifatida ko'rib chiqadigan tizimni kutish usulini taqdim etadi.
Exadata-ning paydo bo'lishi bilan AWR statistikasida Exadata Software ishlashi bilan bog'liq maxsus tizim taxminlari paydo bo'ldi. Qoidaga ko'ra, bunday kutishlarning nomlari "hujayra" so'zi bilan boshlanadi (Exadata Storage serveri hujayra deb ataladi), ulardan eng keng tarqalgani "hujayrani aqlli jadvalni skanerlash", "hujayra multiblok" o'z-o'zidan tushunarli nomlar bilan kutishdir. jismoniy o'qish" va "hujayra yagona blok jismoniy o'qish".
Ko'pgina hollarda, bunday Exadata kutishlarining umumiy javob vaqtidagi ulushi kichikdir va shuning uchun ular umumiy kutish vaqti bo'yicha eng yaxshi 10 ta oldingi voqealar bo'limiga kirmaydi (bu holda siz ularni Oldindan kutish bo'limida qidirishingiz kerak. Voqealar bo'limi). Katta qiyinchilik bilan biz mijozlarimizdan kunlik AWR misolini topdik, unda Exadata taxminlari Top10 bo'limiga kiritilgan va jami taxminan 5% ni tashkil etdi:
hodisa
Kutmoqda
Umumiy kutish vaqti (sek.)
OΚ»rtacha kutish
%DB vaqti
Kutish sinfi
DB CPU
115.2K
70.4
SQL*Dblink-dan ko'proq ma'lumot
670,196
5471.5
8.16ms
3.3
tarmoq
hujayraning yagona blokli jismoniy o'qilishi
5,661,452
3827.6
676.07 yosh
2.3
Foydalanuvchi kiritish/chiqarish
ASM balansini sinxronlashtiring
4,350,012
3481.3
800.30 yosh
2.1
boshqa
hujayra multiblokli jismoniy o'qish
759,885
2252
2.96ms
1.4
Foydalanuvchi kiritish/chiqarish
to'g'ridan-to'g'ri yo'l o'qiladi
374,368
1811.3
4.84ms
1.1
Foydalanuvchi kiritish/chiqarish
Dblink dan SQL*Net xabari
7,983
1725
216.08ms
1.1
tarmoq
uyali aqlli stolni skanerlash
1,007,520
1260.7
1.25ms
0.8
Foydalanuvchi kiritish/chiqarish
to'g'ridan-to'g'ri yo'lni o'qish harorati
520,211
808.4
1.55ms
0.5
Foydalanuvchi kiritish/chiqarish
enq: TM - qarama-qarshilik
652
795.8
1220.55ms
0.5
ariza
Ko'pincha bunday AWR statistikasidan quyidagi xulosalar chiqariladi:
1. Exadata sehrining ma'lumotlar bazasi ishlashiga qo'shgan hissasi yuqori emas - u 5% dan oshmaydi va ma'lumotlar bazasi yomon "eksadatlanadi".
2. Agar bunday ma'lumotlar bazasi Exadata'dan klassik "server + massiv" arxitekturasiga o'tkazilsa, unda ishlash unchalik o'zgarmaydi. Chunki bu massiv Exadata saqlash tizimidan uch baravar sekinroq bo'lsa ham (zamonaviy All Flash massivlari uchun bu deyarli mumkin emas), keyin 5% ni uchga ko'paytirsak, biz kiritish-chiqarish ulushini 15% gacha ko'taramiz. - ma'lumotlar bazasi bundan albatta omon qoladi!
Ushbu ikkala xulosa ham noto'g'ri, bundan tashqari, ular Exadata Software g'oyasini tushunishni buzadi. Exadata nafaqat tezkor kiritish-chiqarishni ta'minlamaydi, balki klassik server + massiv arxitekturasidan tubdan farq qiladi. Agar ma'lumotlar bazasi ishi haqiqatan ham "ekzadaptsiya qilingan" bo'lsa, SQL mantig'i saqlash tizimiga o'tkaziladi. Saqlash serverlari bir qator maxsus mexanizmlar (birinchi navbatda, Exadata Storage Indexes, lekin nafaqat) tufayli kerakli ma'lumotlarni o'zlari topadilar va ma'lumotlar bazasini serverlarga yuboradilar. Ular buni juda samarali bajaradilar, shuning uchun umumiy javob vaqtida odatdagi Exadata kutishlarining ulushi kichikdir.
Bu ulush Exadata'dan tashqari qanday o'zgaradi? Bu umuman ma'lumotlar bazasining ishlashiga qanday ta'sir qiladi? Sinov bu savollarga eng yaxshi javob beradi. Misol uchun, Exadata-dan tashqarida "hujayrani aqlli stol skanerlash" ni kutish shu qadar og'ir Jadvalni to'liq skanerlashiga aylanishi mumkinki, I/U butun javob vaqtini oladi va unumdorligi keskin pasayadi. Shuning uchun AWRni tahlil qilishda Exadata kutishlarining umumiy foizini uning sehrining ishlashga qo'shgan hissasi sifatida ko'rib chiqish va undan ham ko'proq Exadata'dan tashqarida ishlashni bashorat qilish uchun bu foizdan foydalanish noto'g'ri. Ma'lumotlar bazasi ishi qanchalik "aniq" ekanligini tushunish uchun siz "Instance Activity Stats" bo'limining AWR statistikasini o'rganishingiz kerak (o'z-o'zidan tushunarli nomlar bilan ko'plab statistik ma'lumotlar mavjud) va ularni bir-biri bilan solishtiring.
Exadata'dan tashqarida ma'lumotlar bazasi qanday his qilishini tushunish uchun maqsadli arxitekturadagi zaxiradan ma'lumotlar bazasi klonini yaratish va yuk ostida ushbu klonning ishlashini tahlil qilish yaxshidir. Exadata egalari, qoida tariqasida, bunday imkoniyatga ega.
Muallif: Aleksey Struchenko, Jet Infosystems ma'lumotlar bazasi bo'limi boshlig'i
Manba: www.habr.com