Unity xotirasida FAST VP: u qanday ishlaydi

Bugun biz Unity / Unity XT saqlash tizimida amalga oshirilgan qiziqarli texnologiya - FAST VP haqida gaplashamiz. Agar siz Unity haqida birinchi marta eshitgan bo'lsangiz, maqolaning oxiridagi havola tizimning xususiyatlari bilan tanishish uchun ishlatilishi mumkin. Men Dell EMC dizayn jamoasida FAST VP da bir yildan ortiq ishladim. Bugun men ushbu texnologiya haqida batafsilroq gaplashmoqchiman va uni amalga oshirishning ba'zi tafsilotlarini ochib bermoqchiman. Albatta, faqat oshkor etilishiga ruxsat berilganlargina. Agar siz ma'lumotlarni samarali saqlash masalalari bilan qiziqsangiz yoki hujjatlarni to'liq tushunmagan bo'lsangiz, unda ushbu maqola albatta foydali va qiziqarli bo'ladi.

Unity xotirasida FAST VP: u qanday ishlaydi

Men sizga materialda nima bo'lmasligini darhol aytaman. Raqobatchilarni izlash va ular bilan taqqoslash bo'lmaydi. Men ochiq manbadan shunga o'xshash texnologiyalar haqida gapirishni rejalashtirmayman, chunki qiziquvchan o'quvchi ular haqida allaqachon biladi. Va, albatta, men hech narsani reklama qilmoqchi emasman.

saqlash darajasi. FAST VPning maqsad va vazifalari

FAST VP virtual hovuz uchun to'liq avtomatlashtirilgan saqlash darajasini bildiradi. Bu qiyinmi? Hech narsa, biz buni aniqlaymiz. Tiering - bu ma'lumotlarni saqlashni tashkil qilish usuli bo'lib, unda ushbu ma'lumotlar saqlanadigan bir necha darajalar (darajalar) mavjud. Ularning har biri o'ziga xos xususiyatlarga ega. Eng muhimi: ma'lumot birligini saqlash samaradorligi, hajmi va narxi. Albatta, ular o'rtasida munosabatlar mavjud.

Darajaning muhim xususiyati shundaki, ma'lumotlarga kirish hozirda qaysi saqlash darajasida bo'lishidan qat'i nazar, bir xilda ta'minlanadi va hovuz hajmi unga kiritilgan resurslarning o'lchamlari yig'indisiga teng. Keshdan farq shu erda: kesh hajmi resursning umumiy miqdoriga qo'shilmaydi (bu holda hovuz) va kesh ma'lumotlari asosiy vositadan ma'lumotlarning bir qismini takrorlaydi (yoki agar bo'lsa, takrorlanadi). keshdagi ma'lumotlar hali yozilmagan). Shuningdek, ma'lumotlarni darajalar bo'yicha taqsimlash foydalanuvchidan yashiringan. Ya'ni, u har bir darajada qanday ma'lumotlar joylashganligini aniq ko'rmaydi, garchi u siyosatni belgilash orqali (ular haqida keyinroq) bilvosita ta'sir qilishi mumkin.

Endi Unity-da saqlash darajasini amalga oshirish xususiyatlarini ko'rib chiqaylik. Unity-da 3 daraja yoki daraja mavjud:

  • Ekstremal ishlash (SSD)
  • Ishlash (SAS HDD 10k/15k RPM)
  • Imkoniyatlar (NL-SAS HDD 7200 RPM)

Ular ishlash va narxning kamayish tartibida keltirilgan. Ekstremal unumdorlikka faqat qattiq hol disklari (SSD) kiradi. Qolgan ikki qavatda aylanish tezligi va shunga mos ravishda ishlash jihatidan farq qiluvchi magnit diskli drayverlar mavjud.

Xuddi shu darajadagi va bir xil o'lchamdagi saqlash vositalari RAID qatoriga birlashtirilib, RAID guruhini (RAID guruhi, RG deb qisqartiriladi); mavjud va tavsiya etilgan RAID darajalari haqida rasmiy hujjatlarda o'qishingiz mumkin. Bir yoki bir nechta darajadagi RAID guruhlaridan saqlash hovuzlari hosil bo'lib, undan keyin bo'sh joy taqsimlanadi. Va allaqachon hovuzdan fayl tizimlari va LUNlar uchun joy ajratilgan.

Unity xotirasida FAST VP: u qanday ishlaydi

Nima uchun menga Tiering kerak?

Qisqa va mavhum: eng kam resurslar bilan ko'proq natijalarga erishish. Aniqroq aytganda, natija odatda saqlash tizimining xarakteristikalari to'plami sifatida tushuniladi - kirish tezligi va vaqti, saqlash narxi va boshqalar. Resurslarning minimal miqdori eng kam xarajatlarni bildiradi: pul, energiya va boshqalar. FAST VP shunchaki Unity / Unity XT saqlash tizimidagi turli darajadagi ma'lumotlarni qayta taqsimlash mexanizmlarini amalga oshiradi. Agar menga ishonsangiz, keyingi paragrafni o'tkazib yuborishingiz mumkin. Qolganlari uchun men sizga bir oz ko'proq gapirib beraman.

Ma'lumotlarni to'g'ri tartiblash orqali siz ba'zi kamdan-kam ishlatiladigan ma'lumotlarga kirish tezligini yo'qotib, saqlashning umumiy narxini tejashingiz va tez-tez foydalaniladigan ma'lumotlarni tezroq mediaga ko'chirish orqali ishlashni yaxshilashingiz mumkin. Bu erda kimdir e'tiroz bildirishi mumkin, hatto darajali bo'lmasa ham, oddiy administrator qanday ma'lumotlarni qaerga qo'yish kerakligini, saqlash tizimining qaysi xususiyatlari uning vazifasi uchun ma'qul ekanligini va hokazo. Albatta, bu to'g'ri, lekin ma'lumotlarni "qo'lda" tarqatish o'zining kamchiliklariga ega:

  • ma'murning vaqtini va e'tiborini talab qiladi;
  • o'zgaruvchan sharoitlarda saqlash resurslarini "qayta shakllantirish" har doim ham mumkin emas;
  • muhim afzallik yo'qoladi: turli xil saqlash darajalarida joylashgan resurslarga yagona kirish.

Saqlash ma'murlari ish xavfsizligi haqida kamroq tashvishlanishlari uchun men bu erda resurslarni malakali rejalashtirish kerakligini qo'shimcha qilaman. Endi bosqichma-bosqich vazifalar qisqacha bayon qilingan bo'lsa, keling, FAST VP-dan nimani kutish mumkinligini ko'rib chiqamiz. Bu ta'rifga qaytish vaqti. Birinchi ikkita so'z - To'liq avtomatlashtirilgan - so'zma-so'z "to'liq avtomatlashtirilgan" deb tarjima qilinadi va darajalarning taqsimlanishi avtomatik ravishda sodir bo'lishini anglatadi. Xo'sh, Virtual Pool - bu turli xil saqlash darajalaridagi resurslarni o'z ichiga olgan ma'lumotlar hovuzi. Bu qanday ko'rinishga ega:

Unity xotirasida FAST VP: u qanday ishlaydi

Oldinga qarab, men FAST VP ma'lumotlarni bir nechta hovuzlar o'rtasida emas, balki faqat bitta hovuz ichida ko'chirishini aytaman.

FAST VP tomonidan hal qilingan vazifalar

Keling, avval mavhum tarzda gapiraylik. Bizda bu hovuz ichida ma'lumotlarni qayta taqsimlay oladigan hovuz va ba'zi mexanizmlar mavjud. Bizning vazifamiz maksimal mahsuldorlikka erishish ekanligini yodda tutib, o'zimizga savol beraylik: bunga qanday yo'llar bilan erishish mumkin? Ulardan bir nechtasi bo'lishi mumkin va bu erda FAST VP foydalanuvchiga nimadir taklif qiladi, chunki texnologiya shunchaki saqlash darajasidan ko'proq narsadir. FAST VP hovuz unumdorligini oshirishning ba'zi usullari:

  • Har xil turdagi disklar, darajalar bo'yicha ma'lumotlarni taqsimlash
  • Bir xil turdagi disklar o'rtasida ma'lumotlarni taqsimlash
  • Hovuzni kengaytirishda ma'lumotlarni taqsimlash

Ushbu vazifalar qanday bajarilishini ko'rib chiqishdan oldin, biz FAST VP qanday ishlashi haqida ba'zi muhim faktlarni bilishimiz kerak. FAST VP ma'lum o'lchamdagi bloklar bilan ishlaydi - 256 megabayt. Bu ko'chirilishi mumkin bo'lgan ma'lumotlarning eng kichik "bo'lagi". Hujjatlarda u shunday deyiladi: tilim. FAST VP nuqtai nazaridan, barcha RAID guruhlari shunday "bo'laklar" to'plamidan iborat. Shunga ko'ra, bunday ma'lumotlar bloklari uchun barcha kiritish-chiqarish statistikasi to'planadi. Nima uchun bu blok hajmi tanlangan va u kamayadimi? Blok juda katta, ammo bu ma'lumotlarning granularligi (kichikroq blok hajmi - aniqroq taqsimlash) va mavjud hisoblash resurslari o'rtasidagi kelishuvdir: RAMda mavjud jiddiy cheklovlar va ko'p sonli bloklar bilan statistik ma'lumotlar juda ko'p vaqt talab qilishi mumkin va hisob-kitoblar soni mutanosib ravishda oshadi.

FAST VP ma'lumotlarni hovuzga qanday joylashtiradi. Siyosatchilar

FAST VP yoqilgan hovuzga maΚΌlumotlarni joylashtirishni boshqarish uchun quyidagi siyosatlar mavjud:

  • Mavjud eng yuqori daraja
  • Avtomatik daraja
  • Yuqoridan boshlang, keyin avtomatik daraja (standart)
  • Mavjud eng past daraja

Ular blokning dastlabki taqsimlanishiga (ma'lumotlar birinchi bo'lib yoziladi) va keyingi qayta taqsimlanishiga ta'sir qiladi. Ma'lumotlar disklarga allaqachon joylashtirilgan bo'lsa, qayta taqsimlash jadvalga muvofiq yoki qo'lda boshlanadi.

Mavjud bo'lgan eng yuqori daraja yangi blokni eng yuqori samarali darajaga joylashtirishga harakat qiladi. Unda etarli joy bo'lmasa, ishlash jihatidan keyingisi, lekin keyin ma'lumotlar yanada samarali darajaga ko'chirilishi mumkin (agar bo'sh joy bo'lsa yoki boshqa ma'lumotlarni siqib chiqarsa). Auto-Tier mavjud bo'sh joy miqdori asosida yangi ma'lumotlarni turli darajalarga joylashtiradi va ularni talab va bo'sh joy asosida qayta taqsimlaydi. Yuqoridan boshlang, keyin Auto-Tier standart siyosat bo'lib, u ham tavsiya etiladi. Dastlab eng yuqori mavjud daraja sifatida ishlaydi va keyin foydalanish statistikasi asosida ma'lumotlarni ko'chiradi. Mavjud bo'lgan eng past daraja siyosati ma'lumotlarni eng kam ishlaydigan darajaga joylashtirishga intiladi.

Saqlash tizimining foydali ishiga xalaqit bermaslik uchun ma'lumotlarni uzatish past ustuvorlik bilan amalga oshiriladi, ammo ustuvorlikni o'zgartiradigan "Ma'lumotlarni ko'chirish tezligi" sozlamasi mavjud. Bu erda o'ziga xoslik bor: barcha ma'lumotlar bloklari bir xil qayta taqsimlash tartibiga ega emas. Masalan, metadata sifatida belgilangan bloklar birinchi navbatda tezroq darajaga ko'chiriladi. Meta-ma'lumotlar, ta'bir joiz bo'lsa, "ma'lumotlar to'g'risidagi ma'lumotlar", ba'zi qo'shimcha ma'lumotlar bo'lib, foydalanuvchi ma'lumotlari emas, balki ularning tavsifini saqlaydi. Masalan, fayl tizimidagi ma'lum bir fayl qaysi blokda ekanligi haqida ma'lumot. Bu shuni anglatadiki, ma'lumotlarga kirish tezligi metama'lumotlarga kirish tezligiga bog'liq. Meta-ma'lumotlar odatda ancha kichik bo'lishini hisobga olsak, uni tezroq disklarga ko'chirishning foydasi kattaroq bo'lishi kutilmoqda.

Fast VP o'z ishida foydalanadigan mezonlar

Har bir blok uchun asosiy mezon, agar juda qo'pol bo'lsa, ma'lumotlarning "talabi" ning xarakteristikasi bo'lib, u ma'lumotlar fragmentining o'qish va yozish operatsiyalari soniga bog'liq. Bu xususiyat "harorat" deb ataladi. Da'vo qilinmagan ma'lumotlardan issiqroq ma'lumotlar mavjud. U vaqti-vaqti bilan, sukut bo'yicha bir soatlik interval bilan hisoblab chiqiladi.

Haroratni hisoblash funktsiyasi quyidagi xususiyatlarga ega:

  • Kirish / chiqish bo'lmasa, ma'lumotlar vaqt o'tishi bilan "sovib ketadi".
  • Vaqt o'tishi bilan ko'proq yoki kamroq bir xil yuk bilan harorat birinchi navbatda oshadi va keyin ma'lum bir diapazonda barqarorlashadi.

Bundan tashqari, yuqorida tavsiflangan siyosatlar va har bir darajadagi bo'sh joy hisobga olinadi. Aniqlik uchun men hujjatlardan rasm beraman. Bu erda qizil, sariq va ko'k ranglar mos ravishda yuqori, o'rta va past haroratli bloklarni bildiradi.

Unity xotirasida FAST VP: u qanday ishlaydi

Ammo vazifalarga qaytish. Shunday qilib, biz FAST VP muammolarini hal qilish uchun nima qilinayotganini tahlil qilishni boshlashimiz mumkin.

A. Har xil turdagi disklar, darajalar bo'yicha ma'lumotlarni taqsimlash

Aslida, bu FAST VP ning asosiy vazifasi. Qolganlari, qaysidir ma'noda, uning hosilalaridir. Tanlangan siyosatga qarab, ma'lumotlar turli xil saqlash darajalari bo'ylab taqsimlanadi. Avvalo, joylashtirish siyosati, keyin bloklarning harorati va RAID guruhlarining o'lchami / tezligi hisobga olinadi.

Mavjud eng yuqori/eng past darajadagi siyosatlar uchun hamma narsa juda oddiy. Qolgan ikkitasi uchun bu shunday. Ma'lumotlar RAID guruhlari hajmi va ishlashini hisobga olgan holda turli darajalarda taqsimlanadi: bloklarning umumiy "harorati" ning har bir RAID guruhining "shartli maksimal ishlashi" ga nisbati taxminan bir xil bo'lishi uchun. Shunday qilib, yuk ko'proq yoki kamroq taqsimlanadi. Ko'proq talab qilinadigan ma'lumotlar tezroq ommaviy axborot vositalariga o'tkaziladi, kamdan-kam ishlatiladigan ma'lumotlar sekinroq mediaga o'tkaziladi. Ideal holda, tarqatish quyidagicha ko'rinishi kerak:

Unity xotirasida FAST VP: u qanday ishlaydi

B. Bir turdagi disklar o'rtasida ma'lumotlarni taqsimlash

Esingizda bo'lsin, boshida men ma'lumot tashuvchilardan yozgan edim bir yoki bir nechta darajalar bitta hovuzga birlashtirilganmi? Yagona darajadagi bo'lsa, FAST VP ham ishlashi kerak. Har qanday darajadagi ishlashni maksimal darajada oshirish uchun ma'lumotlarni disklar bo'ylab teng ravishda taqsimlash maqsadga muvofiqdir. Bu (nazariy jihatdan) maksimal IOPS sonini olish imkonini beradi. RAID guruhidagi ma'lumotlar disklar bo'ylab teng taqsimlangan deb hisoblanishi mumkin, ammo bu har doim ham RAID guruhlari o'rtasida shunday emas. Nomutanosiblik bo'lsa, FAST VP ma'lumotlarni RAID guruhlari o'rtasida ularning o'lchamiga va "shartli ishlashga" (raqamli ma'noda) mutanosib ravishda o'tkazadi. Aniqlik uchun men uchta RAID guruhi o'rtasida muvozanatlash sxemasini ko'rsataman:

Unity xotirasida FAST VP: u qanday ishlaydi

C. Hovuzni kengaytirishda ma'lumotlarni taqsimlash

Bu vazifa avvalgisining alohida ishi bo'lib, hovuzga RAID guruhi qo'shilganda amalga oshiriladi. Yangi qo'shilgan RAID guruhining bo'sh turishiga yo'l qo'ymaslik uchun ma'lumotlarning bir qismi unga o'tkaziladi, ya'ni barcha RAID guruhlaridagi yuk qayta taqsimlanadi.

SSD eskirish darajasini aniqlash

Kiyinishni tekislash orqali FAST VP SSD ning ishlash muddatini uzaytirishi mumkin, ammo bu xususiyat Saqlash darajasiga bevosita bog'liq emas. Harorat ma'lumotlari allaqachon mavjud bo'lganligi sababli, yozish operatsiyalari soni ham hisobga olinadi, biz ma'lumotlar bloklarini qanday ko'chirishni bilamiz, FAST VP uchun bu muammoni ham hal qilish mantiqan to'g'ri keladi.

Agar bitta RAID guruhiga yozishlar soni boshqasiga yozishlar sonidan sezilarli darajada oshsa, FAST VP ma'lumotlarni yozishlar soniga qarab qayta taqsimlaydi. Bir tomondan, bu yukni olib tashlaydi va ba'zi disklarning resursini tejaydi, boshqa tomondan, kamroq yuklanganlar uchun "ish" ni qo'shib, umumiy ish faoliyatini oshiradi.

Shunday qilib, FAST VP an'anaviy Storage Tiering vazifalarini oladi va bundan biroz ko'proq narsani bajaradi. Bularning barchasi Unity saqlash tizimida ma'lumotlarni samarali saqlash imkonini beradi.

Bir necha maslahatlar

  1. Hujjatlarni o'qishni e'tiborsiz qoldirmang. Eng yaxshi amaliyotlar mavjud va ular juda yaxshi ishlaydi. Agar siz ularga amal qilsangiz, unda jiddiy muammolar, qoida tariqasida, paydo bo'lmaydi. Qolgan maslahatlar asosan ularni takrorlaydi yoki to'ldiradi.
  2. Agar siz FAST VP-ni sozlagan va yoqilgan bo'lsangiz, uni yoqilgan holda qoldiring. Ajratilgan vaqt ichida va yiliga bir martadan kam bo'lmagan ma'lumotlarni taqsimlasin va boshqa vazifalarning bajarilishiga jiddiy ta'sir ko'rsatsin. Bunday hollarda ma'lumotlarni qayta taqsimlash uzoq vaqt talab qilishi mumkin.
  3. Ko'chirish oynasini tanlashda ehtiyot bo'ling. Bu aniq bo'lsa-da, Unity-da eng kam yuklangan vaqtni tanlashga harakat qiling va etarli vaqtni ajrating.
  4. Xotirani kengaytirishni rejalashtiring, uni o'z vaqtida bajaring. Bu FAST VP uchun ham muhim bo'lgan umumiy tavsiya. Agar bo'sh joy miqdori juda kichik bo'lsa, unda ma'lumotlar harakati sekinlashadi yoki imkonsiz bo'ladi. Ayniqsa siz 2-bandni e'tiborsiz qoldirgan bo'lsangiz.
  5. FAST VP yoqilgan hovuzni kengaytirganda, eng sekin disklardan boshlamang. Ya'ni, biz bir vaqtning o'zida barcha rejalashtirilgan RAID guruhlarini qo'shamiz yoki birinchi navbatda eng tezkor disklarni qo'shamiz. Bunday holda, ma'lumotlarni yangi "tezkor" disklarga qayta taqsimlash hovuzning umumiy tezligini oshiradi. Aks holda, "sekin" disklardan boshlab, siz juda yoqimsiz vaziyatga duch kelishingiz mumkin. Birinchidan, ma'lumotlar yangi, nisbatan sekin disklarga o'tkaziladi, keyin esa tezroq qo'shilganda, teskari yo'nalishda. Turli FAST VP siyosatlari bilan bog'liq nuanslar mavjud, ammo umumiy holatda bu holat mumkin.

Agar siz ushbu mahsulotni ko'rayotgan bo'lsangiz, Unity VSA virtual qurilmasini yuklab olish orqali Unity-ni bepul sinab ko'rishingiz mumkin.

Unity xotirasida FAST VP: u qanday ishlaydi

Maqolaning oxirida men bir nechta foydali havolalarni baham ko'raman:

xulosa

Men ko'p narsa haqida yozmoqchiman, lekin hamma tafsilotlar ham o'quvchini qiziqtirmasligini tushunaman. Masalan, FAST VP ma'lumotlarni uzatish to'g'risida qaror qabul qiladigan mezonlar, I/U statistikasini tahlil qilish jarayonlari haqida batafsilroq gapirishingiz mumkin. Shuningdek, bilan o'zaro aloqa mavzusi Dinamik hovuzlar, va bu alohida maqolani tortadi. Siz hatto ushbu texnologiyaning rivojlanishi haqida tasavvur qilishingiz mumkin. Umid qilamanki, bu zerikarli emas edi va men sizni zeriktirmadim. Ko'rishguncha!

Manba: www.habr.com

a Izoh qo'shish