FAST VP á Unity geymslu: hvernig það virkar

Í dag munum við tala um áhugaverða tækni sem er innleidd í Unity/Unity XT geymslukerfi - FAST VP. Ef þetta er í fyrsta skipti sem þú heyrir um Unity, þá geturðu skoðað eiginleika kerfisins með því að nota hlekkinn í lok greinarinnar. Ég vann á FAST VP í Dell EMC verkefnateyminu í meira en ár. Í dag vil ég tala nánar um þessa tækni og sýna nokkrar upplýsingar um framkvæmd hennar. Auðvitað aðeins þeir sem leyfilegt er að koma í ljós. Ef þú hefur áhuga á málefnum um skilvirka gagnageymslu eða hefur einfaldlega ekki skilið skjölin að fullu, þá mun þessi grein vissulega vera gagnleg og áhugaverð.

FAST VP á Unity geymslu: hvernig það virkar

Ég segi þér strax hvað verður ekki í efninu. Ekki verður leitað að keppendum og samanburður við þá. Ég ætla heldur ekki að tala um svipaða tækni frá opnum hugbúnaði, vegna þess að forvitinn lesandi veit nú þegar um hana. Og auðvitað ætla ég ekki að auglýsa neitt.

Geymsluþrep. Markmið og markmið FAST VP

FAST VP stendur fyrir Fully Automated Storage Tiering fyrir sýndarlaug. Svolítið erfitt? Ekkert mál, við finnum það núna. Tiering er leið til að skipuleggja gagnageymslu þar sem það eru nokkur stig (tiers) þar sem þessi gögn eru geymd. Hver hefur sín sérkenni. Það mikilvægasta: afköst, magn og verð á að geyma einingu upplýsinga. Auðvitað er samband þarna á milli.

Mikilvægur eiginleiki við þrepaskiptingu er að aðgangur að gögnum er veittur á einsleitan hátt óháð því á hvaða geymslustigi þau eru núna og stærð safnsins er jöfn summan af stærðum auðlindanna sem eru í henni. Þetta er þar sem munurinn frá skyndiminni liggur: Stærð skyndiminni er ekki bætt við heildarmagn auðlindarinnar (safn í þessu tilfelli), og skyndiminnisgögnin afrita eitthvað brot af helstu miðlunargögnum (eða munu afrita ef gögn úr skyndiminni hafa ekki enn verið skrifuð). Einnig er dreifing gagna eftir stigum falin fyrir notandanum. Það er að segja að hann sér ekki nákvæmlega hvaða gögn eru staðsett á hverju stigi, þó hann geti haft áhrif á það óbeint með því að setja stefnur (nánar um þær síðar).

Nú skulum við skoða eiginleika innleiðingar á geymsluþrep í Unity. Unity hefur 3 stig, eða stig:

  • Mikil afköst (SSD)
  • Afköst (SAS HDD 10k/15k RPM)
  • Stærð (NL-SAS HDD 7200 RPM)

Þau eru sett fram í lækkandi röð eftir frammistöðu og verði. Mikil afköst fela aðeins í sér solid state drif (SSD). Hin tvö stigin innihalda segulmagnaðir diskadrif, sem eru mismunandi í snúningshraða og þar af leiðandi frammistöðu.

Geymslumiðlar frá sama stigi og sömu stærð eru sameinuð í RAID fylki og mynda RAID hóp (RAID hópur, skammstafað sem RG); Þú getur lesið um tiltæk og ráðlögð RAID stig í opinberu skjölunum. Geymslulaugar eru myndaðir úr RAID hópum frá einu eða fleiri stigum, þaðan sem lausu plássi er síðan dreift. Og úr lauginni er pláss úthlutað fyrir skráarkerfi og LUN.

FAST VP á Unity geymslu: hvernig það virkar

Af hverju þarf ég Tiering?

Í stuttu máli og óhlutbundnu: að ná meiri árangri með lágmarks fjármagni. Nánar tiltekið er niðurstaðan venjulega skilin sem safn eiginleika geymslukerfis - hraði og aðgangstími, geymslukostnaður og fleira. Lágmark auðlinda þýðir minnstu útgjöld: peningar, orka og svo framvegis. FAST VP útfærir aðferðir til að endurdreifa gögnum á mismunandi stig í Unity/Unity XT geymslukerfum. Ef þú trúir mér, þá geturðu sleppt næstu málsgrein. Fyrir rest skal ég segja þér aðeins meira.

Rétt dreifing gagna yfir geymsluþrep gerir þér kleift að spara heildarkostnað við geymslu með því að fórna aðgangshraða að sumum sjaldan notuðum upplýsingum og bæta árangur með því að færa oft notuð gögn yfir á hraðari miðla. Hér gæti einhver haldið því fram að jafnvel án stigaskiptingar viti venjulegur stjórnandi hvar hann á að staðsetja hvaða gögn, hverjir eru æskilegir eiginleikar geymslukerfis fyrir verkefni hans o.s.frv. Þetta er án efa rétt, en handvirkt dreifing gagna hefur sína galla:

  • krefst tíma og athygli stjórnandans;
  • Það er ekki alltaf hægt að „endurteikna“ geymsluauðlindir til að henta breyttum aðstæðum;
  • mikilvægur kostur hverfur: sameinaður aðgangur að auðlindum sem staðsettar eru á mismunandi geymslustigum.

Til að láta geymslustjórnendur hafa minni áhyggjur af atvinnuöryggi, bæti ég við að hæf tilfangaáætlun er nauðsynleg hér líka. Nú þegar verkefnin við stigaskipti eru lýst í stuttu máli skulum við kíkja á hvers þú getur búist við frá FAST VP. Nú er kominn tími til að fara aftur í skilgreininguna. Fyrstu tvö orðin – Alveg sjálfvirk – eru bókstaflega þýdd sem „fullkomlega sjálfvirk“ og þýða að dreifing milli stiga á sér stað sjálfkrafa. Jæja, Virtual Pool er gagnalaug sem inniheldur auðlindir frá mismunandi geymslustigum. Svona lítur það út:

FAST VP á Unity geymslu: hvernig það virkar

Þegar ég horfi fram á við mun ég segja að FAST VP flytur gögn aðeins innan einnar laugar, en ekki á milli nokkurra lauga.

Vandamál leyst af FAST VP

Við skulum tala abstrakt fyrst. Við erum með laug og einhvern búnað sem getur endurdreift gögnum innan þessarar laugar. Minnumst þess að markmið okkar er að ná hámarks framleiðni, við skulum spyrja okkur: hvaða leiðir getum við náð því? Þeir geta verið nokkrir og hér hefur FAST VP eitthvað að bjóða notandanum, þar sem tæknin er eitthvað meira en bara geymsluþrep. Hér eru nokkrar leiðir til að FAST VP getur aukið árangur sundlaugarinnar:

  • Dreifing gagna á mismunandi gerðir af diskum, stigum
  • Dreifing gagna á diska af sömu gerð
  • Gagnadreifing við stækkun laugarinnar

Áður en við skoðum hvernig þessi verkefni eru leyst þurfum við að vita nokkrar nauðsynlegar staðreyndir um hvernig FAST VP virkar. FAST VP starfar með blokkum af ákveðinni stærð - 256 megabæti. Þetta er minnsti samfelldi „klumpur“ gagna sem hægt er að færa. Í skjölunum er þetta það sem þeir kalla það: sneið. Frá sjónarhóli FAST VP samanstanda allir RAID hópar af setti af slíkum „hlutum“. Í samræmi við það safnast öll I/O tölfræði fyrir slíka gagnablokka. Hvers vegna var þessi blokkastærð valin og mun hún minnka? Kubburinn er nokkuð stór, en þetta er málamiðlun milli kornunar gagnanna (minni blokkarstærð þýðir nákvæmari dreifingu) og tiltækra tölvuauðlinda: miðað við núverandi strangar takmarkanir á vinnsluminni og miklum fjölda blokka, geta tölfræðigögn tekið upp of mikið og mun útreikningum fjölga hlutfallslega.

Hvernig FAST VP úthlutar gögnum í sundlaugina. Stjórnmálamenn

Til að stjórna staðsetningu gagna í laug með FAST VP virkt, eru eftirfarandi reglur til:

  • Hæsta fáanlega stig
  • Sjálfvirkt stig
  • Byrjaðu hátt og síðan sjálfvirkt stig (sjálfgefið)
  • Lægsta tiltæka stig

Þau hafa áhrif á bæði upphafsúthlutun blokkar (gögn fyrst skrifuð) og síðari endurúthlutun. Þegar gögnin eru þegar staðsett á diskum verður endurdreifing hafin samkvæmt áætlun eða handvirkt.

Hæsta tiltæka stig reynir að setja nýja blokk á hæsta stigið. Ef það er ekki nóg pláss á því er það sett á næsta afkastamesta stigi, en þá er hægt að færa gögnin á afkastameira stig (ef það er pláss eða með því að færa önnur gögn til). Auto-Tier setur ný gögn á mismunandi stig eftir því hversu mikið pláss er tiltækt og þeim er endurdreift eftir eftirspurn og lausu plássi. Byrjaðu hátt, þá er Auto-Tier sjálfgefin regla og einnig mælt með því. Þegar það er sett í upphafi virkar það sem hæsta tiltæka stigið og síðan eru gögnin færð eftir notkunartölfræði þeirra. Stefnan með lægsta fáanlegu stigi leitast við að setja gögn á lægsta stigi.

Gagnaflutningur á sér stað með lágum forgangi til að trufla ekki gagnlegan rekstur geymslukerfisins, hins vegar er stilling „Gagnaflutningshlutfall“ sem breytir forganginum. Það er sérkenni hér: ekki eru allir gagnablokkir með sömu endurdreifingarröð. Til dæmis verða blokkir merktir sem lýsigögn færðar á hraðara stig fyrst. Lýsigögn eru svo að segja „gögn um gögn“, sumar viðbótarupplýsingar sem eru ekki notendagögn, heldur geyma lýsingu þeirra. Til dæmis upplýsingar í skráarkerfinu um hvaða blokk tiltekin skrá er staðsett í. Þetta þýðir að hraði aðgangs að gögnum fer eftir hraða aðgangs að lýsigögnum. Í ljósi þess að lýsigögn eru venjulega mun minni að stærð, er búist við að ávinningurinn af því að færa þau yfir á afkastameiri diska verði meiri.

Viðmið sem Fast VP notar í starfi sínu

Meginviðmiðið fyrir hverja blokk, mjög gróflega, er einkenni „eftirspurnar“ gagnanna, sem fer eftir fjölda les- og skrifaaðgerða gagnabrots. Við köllum þetta einkenni „hitastig“. Það eru eftirsótt (heit) gögn sem eru „heitari“ en ósótt gögn. Það er reiknað reglulega, sjálfgefið með klukkutíma millibili.

Hitareikningsaðgerðin hefur eftirfarandi eiginleika:

  • Ef I/O er ekki til staðar „kólna“ gögn með tímanum.
  • Undir meira og minna jöfnu álagi með tímanum hækkar hitinn fyrst og jafnast síðan á ákveðnu bili.

Næst er tekið tillit til þeirra reglna sem lýst er hér að ofan og laust pláss á hverju stigi. Til glöggvunar mun ég koma með mynd úr skjölunum. Hér gefa rauðir, gulir og bláir litir til kynna blokkir með hátt, miðlungs og lágt hitastig, í sömu röð.

FAST VP á Unity geymslu: hvernig það virkar

En snúum okkur aftur að verkefnum. Svo við getum byrjað að greina hvað er gert til að leysa FAST VP vandamál.

A. Dreifing gagna yfir mismunandi gerðir af diskum, stigum

Reyndar er þetta aðalverkefni FAST VP. Restin er í vissum skilningi afleitt af því. Það fer eftir valinni stefnu, gögnum verður dreift á mismunandi geymslustig. Fyrst af öllu er staðsetningarstefnan tekin með í reikninginn, síðan blokkhitastig og stærð/hraði RAID hópa.

Fyrir hæsta/lægsta tiltæka flokksreglur er allt frekar einfalt. Fyrir hina tvo er þetta raunin. Gögnunum er dreift á mismunandi stig að teknu tilliti til stærðar og frammistöðu RAID hópa: þannig að hlutfall heildar „hita“ blokkanna og „skilyrts hámarksafkasta“ hvers RAID hóps er um það bil það sama. Þannig dreifist álagið meira og minna jafnt. Meira eftirsótt gögn eru færð yfir á hraðvirka miðla og sjaldan notuð gögn eru færð yfir á hægari miðla. Helst ætti dreifingin að líta svona út:

FAST VP á Unity geymslu: hvernig það virkar

B. Dreifing gagna milli diska af sömu gerð

Mundu, í upphafi skrifaði ég þessi geymslumiðill frá einn eða fleiri stig eru sameinuð í eina laug? Ef um eitt stig er að ræða hefur FAST VP einnig verk að vinna. Til að ná hámarksafköstum á hvaða stigi sem er er ráðlegt að dreifa gögnum jafnt á milli diska. Þetta mun (í orði) gera þér kleift að fá hámarks magn af IOPS. Gögn innan RAID hóps geta talist dreifð jafnt yfir diska, en það er ekki alltaf raunin á milli RAID hópa. Komi til ójafnvægis mun FAST VP færa gögn á milli RAID hópa í hlutfalli við magn þeirra og „skilyrta frammistöðu“ (í tölulegu tilliti). Til glöggvunar mun ég sýna endurjafnvægiskerfi meðal þriggja RAID hópa:

FAST VP á Unity geymslu: hvernig það virkar

B. Gagnadreifing við stækkun laugarinnar

Þetta verkefni er sérstakt tilfelli af því fyrra og er framkvæmt þegar RAID hópi er bætt við hópinn. Til að tryggja að nýbættur RAID hópur haldist ekki aðgerðalaus, verða sum gagna flutt til hans, sem þýðir að álaginu verður dreift yfir alla RAID hópa.

SSD slitjöfnun

Með því að nota slitjöfnun getur FAST VP lengt líftíma SSD, þó að þessi eiginleiki sé ekki beintengdur við geymsluþrep. Þar sem hitastigsgögn eru þegar tiltæk, er einnig tekið tillit til fjölda skrifaaðgerða og við vitum hvernig á að færa gagnakubba, þá væri rökrétt fyrir FAST VP að leysa þetta vandamál.

Ef fjöldi færslna í einum RAID hópi fer verulega yfir fjölda færslna í öðrum, mun FAST VP endurdreifa gögnunum í samræmi við fjölda skrifaðgerða. Annars vegar léttir þetta álagið og sparar auðlind sumra diska, hins vegar bætir það við „vinnu“ fyrir minna hlaðna og eykur heildarafköst.

Á þennan hátt tekur FAST VP á hefðbundnar áskoranir geymsluþrepunar og gerir aðeins meira en það. Allt þetta gerir þér kleift að geyma gögn á nokkuð skilvirkan hátt í Unity geymslukerfinu.

Nokkrar ábendingar

  1. Ekki vanrækja að lesa skjölin. Það eru til bestu starfsvenjur og þær virka nokkuð vel. Ef þú fylgir þeim, þá koma að jafnaði engin alvarleg vandamál upp. Restin af ráðunum endurtekur þau í grundvallaratriðum eða bætir þau við.
  2. Ef þú hefur stillt og virkjað FAST VP er betra að hafa það virkt. Láta það dreifa gögnunum á sínum tíma og smátt og smátt en einu sinni á ári og hafa alvarleg áhrif á frammistöðu annarra verkefna. Í slíkum tilvikum getur endurdreifing gagna tekið langan tíma.
  3. Vertu varkár þegar þú velur flutningsglugga. Þó að þetta sé augljóst, reyndu að velja tíma með minnsta álagi á Unity og úthlutaðu nægilegum tíma.
  4. Áformaðu að stækka geymslukerfið þitt, gerðu það á réttum tíma. Þetta eru almennar ráðleggingar sem eru mikilvægar fyrir FAST VP líka. Ef magn laust pláss er mjög lítið mun gagnaflutningur hægja á eða verða ómögulegur. Sérstaklega ef þú vanræktir lið 2.
  5. Þegar þú stækkar laug með FAST VP virkt ættirðu ekki að byrja á hægustu diskunum. Það er, við annað hvort bætum við öllum fyrirhuguðum RAID hópum í einu eða bætum við hröðustu diskunum fyrst. Í þessu tilviki mun endurdreifing gagna á nýja „hraða“ diska auka heildarhraða laugarinnar. Annars getur það leitt til mjög óþægilegra aðstæðna að byrja á „hægum“ diskum. Í fyrsta lagi verða gögn flutt yfir á nýja, tiltölulega hæga diska og síðan, þegar hraðari er bætt við, í gagnstæða átt. Það eru blæbrigði hér sem tengjast mismunandi FAST VP stefnum, en almennt er svipað ástand mögulegt.

Ef þú ert að skoða þessa vöru geturðu prófað Unity ókeypis með því að hlaða niður Unity VSA sýndartæki.

FAST VP á Unity geymslu: hvernig það virkar

Í lok efnisins deili ég nokkrum gagnlegum tenglum:

Ályktun

Mig langar að skrifa um margt, en mér skilst að ekki séu öll smáatriðin áhugaverð fyrir lesandann. Til dæmis er hægt að tala nánar um viðmiðin sem FAST VP tekur ákvarðanir um gagnaflutning eftir, um ferla við að greina I/O tölfræði. Einnig umræðuefnið um samskipti við Dynamic laugar, og þetta á skilið sérstaka grein. Þú getur jafnvel fantasað þér um þróun þessarar tækni. Ég vona að þetta hafi ekki verið leiðinlegt og ég hafi ekki leiðst þér. Sé þig aftur!

Heimild: www.habr.com

Bæta við athugasemd