Folytatva a tárolási rendszerek I/O műveleteinek felgyorsítására szolgáló technológiák vizsgálatát, amelyek megkezdődtek , nem hagyhatjuk figyelmen kívül egy olyan meglehetősen népszerű opciót, mint a tiering (Auto Tiering). Bár ennek a funkciónak a működési filozófiája különböző tárolórendszerek gyártói között nagyon hasonló, megvizsgáljuk a tiering megvalósításának sajátosságait a következő példán: .

Annak ellenére, hogy a tárolórendszereken eltérő típusú adatok találhatók, ezt az adatot csoportokra lehet osztani azok gyakorisága (használati gyakoriság) alapján. A legnépszerűbb („forró”) adatokhoz rendkívül fontos a lehető leggyorsabb hozzáférés biztosítása, míg a kevésbé keresett („hideg”) adatok feldolgozása alacsonyabb prioritással történhet.
A hasonló séma megszervezésére éppen a tiering funkció alkalmazható. Az adathalmaz ekkor nem azonos típusú lemezekből áll, hanem több adattároló csoportot alkot, amelyek különböző tárolási szinteket (tier) alkotnak. Egy speciális algoritmus segítségével az adatok automatikusan mozgatva vannak a szintek között, hogy maximális végső teljesítményt biztosítsanak.

Tárolórendszer támogatnak akár három tárolási szintet:
- Tier 1: SSD, maximális teljesítmény
- Tier 2: HDD SAS 10K/15K, magas teljesítmény
- Tier 3: HDD NL-SAS 7.2K, maximális kapacitás
Az Auto Tiering pool tartalmazhat akár mindhárom szintet, akár csak kettőt bármilyen kombinációban. Minden Tieren belül az adattárolók a megszokott RAID csoportokba vannak egyesítve. A maximális rugalmasság érdekében a RAID szint minden Tieren eltérő lehet. Tehát például semmi sem akadályozza meg, hogy a következő struktúrát hozzuk létre: 4x SSD RAID10 + 6x HDD 10K RAID5 + 12 HDD 7.2K RAID6.
Miután létrehoztuk a köteteket (virtuális lemezek) a poolon, elkezdődik a háttérben a statisztikai adatok gyűjtése az összes I/O műveletről. Ehhez a tárolóterület 1 GB méretű blokkokra (úgynevezett sub LUN) van felosztva. Minden egyes hozzáféréskor ennek a blokknak 1-es értéket rendelnek. Az idő múlásával ez az érték csökken. 24 óra elteltével, ha nincs I/O kérés ehhez a blokkhoz, már 0,5-re fog csökkenni, és tovább fog csökkenni minden egyes további órában.
Egy adott időpontban (alapértelmezés szerint minden nap éjfélkor) a sub LUN aktivitása alapján a begyűjtött eredmények rangsorolása történik a megfelelő tényezők figyelembevételével. Ebből következik, hogy mely blokkokat és milyen irányba kell áthelyezni. Ezután elkezdődik az adatok áthelyezése a szintek között.

A Qsan tárolórendszerben kiválóan megvalósították a terhelés elosztásának kezelését számos paraméter segítségével, ami lehetővé teszi a rendszer végső teljesítményének rugalmas beállítását.
Az adatok alaphelyzetének meghatározására és azok áthelyezésének prioritási irányának megállapítására politikákat alkalmaznak, amelyeket minden kötethez külön-külön állítanak be:
- Auto Tiering – alapértelmezett politika, az alaphelyzet és az áthelyezések iránya automatikusan kerül meghatározásra, azaz a 'forró' adatok a legmagasabb szintre törekednek, míg a 'hideg' adatok alacsonyabb szintekre kerülnek. Az alaphelyzet a rendelkezésre álló hely alapján kerül kiválasztásra minden szinten. De fontos megérteni, hogy a rendszer elsődlegesen arra törekszik, hogy maximálisan kihasználja a leggyorsabb tárolókat. Ezért ha a szabad hely áll rendelkezésre, az adatok a legmagasabb szinteken kerülnek elhelyezésre. Ez a politika megfelel a legtöbb forgatókönyvnek, amikor nem lehet előre megjósolni az adatok iránti keresletet.
- Kezdni a magasról, majd Auto Tiering – az előzőtől abban különbözik, hogy az adatok alaphelyzete a leggyorsabb szinten van
- Maximálisan magas szint – az adatok mindig a leggyorsabb szint elfoglalására törekednek. Ha a működés során lefelé helyezik őket, akkor első lehetőség adtán vissza is kerülnek. Ez a politika megfelelő azok számára az adatokhoz, amelyekhez a lehető leggyorsabb hozzáférés szükséges.
- Minimális szint – az adatok mindig a legalacsonyabb szint elfoglalására törekednek. Ez a politika tökéletesen alkalmas a ritkán használt adatok számára (például archívumok).
- Mozgatás nélkül – a rendszer automatikusan meghatározza az adatok alaphelyzetét, és nem végez áthelyezést. Azonban a statisztikák folyamatosan gyűjtésre kerülnek arra az esetre, ha később szükség lenne azok áthelyezésére.
Meg kell jegyezni, hogy bár a politikák minden kötet létrehozásakor meg vannak határozva, azokat többször is lehet változtatni 'útközben' a rendszer életciklusa során.
A tirálási mechanizmus beállításain túl a szintek közötti adatrekonstrukció frekvenciáját és ütemét is be lehet állítani. Külön időintervallumot lehet megadni a mozgásra: napi rendszerességgel vagy meghatározott hétköznapokon, valamint a statisztikai gyűjtés intervallumát is csökkenteni lehet néhány órára (minimum 2 órás frekvencia). Ha szükséges korlátozni az adatok áthelyezési működésének időtartamát, időkeretek (áthelyezési ablak) adhatók meg. Ezen kívül a relocáció sebessége is meg van határozva – 3 üzemmód: gyors, közepes, lassú.

Ha az adatok azonnali áthelyezésére van szükség, lehetőség van manuális üzemmódban bármikor végrehajtani azt az adminisztrátor parancsára.
Nyilvánvaló, hogy minél gyakrabban és gyorsabban történik az adatok mozgása a szintek között, annál rugalmasabban fog alkalmazkodni a tárolórendszer a működési körülményekhez. De azt is figyelembe kell venni, hogy a mozgás plusz terhet jelent (elsősorban a meghajtókra), ezért nem érdemes szükségtelenül 'száguldozni' az adatokat. Jobb megtervezni a mozgást a minimális terhelésű időszakokra. Ha azonban a tárolórendszer folyamatosan magas teljesítményt követel 24/7 üzemmódban, érdemes a relocáció ütemét a minimálisra csökkenteni.
A sokféle tirálás beállítása kétségtelenül örömet okoz a haladó felhasználóknak. Azonban azok számára sem kell félelmet keltőnek lenni, akik először találkoznak ezzel a technológiával. Teljesen megbízhatunk az alapértelmezett beállításokban (Auto Tiering politika, maximális sebességű mozgás éjszaka naponta egyszer), és a statisztikai adatok gyűjtésével fokozatosan korrigálhatjuk a különböző paramétereket a kívánt eredmény elérése érdekében.
Összehasonlítva a tirálást egy másik népszerű teljesítménynövelő technológiával, mint a , emlékezzünk meg különböző algoritmusműködési elveikről.
SSD gyorsítótárazás
Auto Tiering
A hatás megjelenésének sebessége
Majdnem azonnal. De a tapasztalható hatás csak a gyorsítótár 'bemelegítése' után (percek-órák) következik be.
A statisztikai adatok gyűjtése után (2 órától, ideális esetben – 24 óra) plusz idő az adatok áthelyezésére.
A hatás időtartama
Amíg az adatok ki nem kerülnek egy új mennyiség miatt (percek-órák)
Amíg az adatok iránti kereslet fennáll (24 óra és több)
Jelzések alkalmazásra
Azonnali teljesítménynövelés rövid időszakra (adatbázisok, virtualizáló környezetek)
Teljesítménynövelés hosszú távon (fájlszerverek, web- és levélszerverek)
A tiering egyik jellemzője, hogy nemcsak az „SSD + HDD” forgatókönyvhez használható, hanem „gyors HDD + lassú HDD” vagy akár mindhárom szint kombinációjához, ami SSD gyorsítótár alkalmazása esetén gyakorlatilag lehetetlen.
Tesztelés
A tiering algoritmusok működésének ellenőrzésére egyszerű tesztet végeztünk. Két szintű SSD-t (RAID 1) + 7.2K HDD-t (RAID 1) tartalmazó tömböt hoztunk létre, amelyen a „minimum szint” politikával helyeztük el a kötetet. Azaz az adatok mindig a lassú lemezeken kell, hogy elhelyezkedjenek.


A kezelőfelület világosan mutatja az adatok elhelyezkedését a szintek között.
Miután a kötet adatokkal megtelt, megváltoztattuk az elhelyezési politikát Auto Tieringra, és elindítottuk az IOmeter tesztet.

Több órás teszt után, amikor a rendszer már felhalmozta a statisztikát, elkezdődött az adatok relokációs folyamata.

Az adatok átköltöztetése után tesztkötetünk teljesen "átmászott" a legfelső szintre (SSD).


Verdikt
Az Auto Tiering egy nagyszerű technológia, amely minimális anyagi és időbeli költségekkel növelheti a tárolórendszer teljesítményét a gyors tárolók intenzívebb kihasználásával. Vonatkozóan az egyetlen beruházás a licenc, amelyet egyszer és mindenkorra vásárolnak meg, korlátozás nélkül a terjedelem/számú lemezekre/szekrényekre/stb. Ez a funkció annyira gazdag beállításokkal bír, hogy szinte bármilyen üzleti igényt kielégíthet. A folyamatok vizualizálása a felületen lehetővé teszi az eszköz hatékony kezelését.
Forrás: habr.com
