SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Jau sen ir izgudrotas tehnoloģijas veiktspējas uzlabošanai, pamatojoties uz SSD izmantošanu un plaši izmantotas uzglabāšanas sistēmās. Pirmkārt, tā ir SSD kā uzglabāšanas vietas izmantošana, kas ir 100% efektīva, taču dārga. Tāpēc tiek izmantotas nogurdinošas un kešatmiņas tehnoloģijas, kur SSD tiek izmantoti tikai populārākajiem (“karstajiem”) datiem. Līmeņu noteikšana ir piemērota ilgtermiņa (dienas-nedēļas) "karsto" datu izmantošanas scenārijiem. Kešatmiņa, gluži pretēji, ir paredzēta īslaicīgai (minūtes-stundu) lietošanai. Abas šīs iespējas ir ieviestas uzglabāšanas sistēmā QSAN XCubeSAN. Šajā rakstā mēs aplūkosim otrā algoritma ieviešanu - SSD kešatmiņa.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

SSD kešatmiņas tehnoloģijas būtība ir SSD izmantošana kā starpposma kešatmiņa starp cietajiem diskiem un kontrollera RAM. SSD veiktspēja, protams, ir zemāka par paša kontrollera kešatmiņas veiktspēju, taču skaļums ir par kārtu lielāks. Tāpēc mēs iegūstam zināmu kompromisu starp ātrumu un skaļumu.

Norādes par SSD kešatmiņas izmantošanu lasīšanai:

  • Lasīšanas operāciju pārsvars pār rakstīšanas operācijām (visbiežāk raksturīgs datu bāzēm un tīmekļa lietojumprogrammām);
  • Sašaurinājuma klātbūtne cietā diska masīva veiktspējas veidā;
  • Nepieciešamo datu apjoms ir mazāks par SSD kešatmiņas lielumu.

Norādes par lasīšanas/rakstīšanas SSD kešatmiņas lietošanu ir vienādas, izņemot darbību būtību – jaukta tipa (piemēram, failu serveris).

Lielākā daļa krātuves pārdevēju savos produktos izmanto tikai lasāmu SSD kešatmiņu. Būtiskā atšķirība QSAN Tie nodrošina iespēju izmantot kešatmiņu arī rakstīšanai. Lai aktivizētu SSD kešatmiņas funkcionalitāti QSAN uzglabāšanas sistēmās, jums ir jāiegādājas atsevišķa licence (piegādāta elektroniski).

SSD kešatmiņa XCubeSAN ir fiziski ieviesta atsevišķu SSD kešatmiņas kopu veidā. Sistēmā var būt līdz četriem no tiem. Katrs pūls, protams, izmanto savu SSD komplektu. Un jau virtuālā diska īpašībās mēs nosakām, vai tas izmantos kešatmiņas pūlu un kurš no tiem. Kešatmiņas izmantošanu sējumiem var iespējot un atspējot tiešsaistē, neapturot I/O. Varat arī karsti pievienot SSD diskus un noņemt tos no turienes. Veidojot SSD pūla kešatmiņu, jāizvēlas, kādā režīmā tas darbosies: tikai lasāms vai lasāms+rakstīšanas. No tā ir atkarīga tā fiziskā organizācija. Tā kā var būt vairāki kešatmiņas pūli, to funkcionalitāte var būt atšķirīga (tas ir, sistēmai vienlaikus var būt gan lasīšanas, gan lasīšanas+rakstīšanas kešatmiņas pūli).

Ja tiek izmantots tikai lasāms kešatmiņas pūls, tas var sastāvēt no 1–8 SSD. Diskiem nav jābūt ar tādu pašu ietilpību un vienam piegādātājam, jo ​​tie ir apvienoti NRAID+ struktūrā. Visi baseinā esošie SSD ir koplietoti. Sistēma neatkarīgi mēģina paralēli ienākošos pieprasījumus starp visiem SSD, lai sasniegtu maksimālu veiktspēju. Ja kāds no SSD diskiem neizdodas, nekas slikts nenotiks: galu galā kešatmiņā ir tikai cieto disku masīvā saglabāto datu kopija. Vienkārši pieejamās SSD kešatmiņas apjoms samazināsies (vai kļūs par nulli, ja izmantosit sākotnējo SSD kešatmiņu no viena diska).

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Ja kešatmiņa tiek izmantota lasīšanas un rakstīšanas darbībām, tad SSD skaitam pūlā ir jābūt reizinātam ar diviem, jo ​​saturs tiek atspoguļots disku pāros (tiek izmantota NRAID 1+ struktūra). Kešatmiņas dublēšana ir nepieciešama, jo tajā var būt dati, kas vēl nav ierakstīti cietajos diskos. Un šajā gadījumā SSD kļūme no kešatmiņas pūla izraisītu informācijas zudumu. NRAID 1+ gadījumā SSD kļūme vienkārši novedīs pie tā, ka kešatmiņa tiek pārsūtīta uz tikai lasāmu stāvokli, un nerakstītie dati tiek izmesti cietā diska masīvā. Pēc bojātā SSD nomaiņas kešatmiņa atgriezīsies sākotnējā darbības režīmā. Starp citu, lielākai drošībai varat piešķirt īpašas karstās rezerves daļas lasīšanas un rakstīšanas kešatmiņai.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Izmantojot SSD kešatmiņas funkciju XCubeSAN, ir vairākas prasības attiecībā uz atmiņas kontrolieru atmiņas apjomu: jo vairāk sistēmas atmiņas, jo lielāks būs pieejams kešatmiņas kopums.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Atšķirībā no vairuma uzglabāšanas sistēmu ražotāju, kuri piedāvā tikai iespēju ieslēgt/izslēgt SSD kešatmiņu, QSAN nodrošina vairāk iespēju. Jo īpaši jūs varat izvēlēties kešatmiņas darbības režīmu atkarībā no slodzes veida. Ir trīs iepriekš iestatītas veidnes, kas savā darbībā ir vistuvāk atbilstošajiem pakalpojumiem: datu bāze, failu sistēma, tīmekļa pakalpojums. Turklāt administrators var izveidot savu profilu, iestatot nepieciešamās parametru vērtības:

  • Bloka lielums (kešatmiņas bloka lielums) – 1/2/4 MB
  • Pieprasījumu skaits nolasīt bloku, lai tas tiktu kopēts kešatmiņā (Populate-on-Read Threshold) – 1..4
  • Pieprasījumu skaits rakstīt bloku, lai tas tiktu kopēts kešatmiņā (Aizpildīšanas-rakstīšanas slieksnis) – 0..4

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Profilus var mainīt lidojuma laikā, bet, protams, ar kešatmiņas satura atiestatīšanu un tā jauno “iesildīšanu”.

Ņemot vērā SSD kešatmiņas darbības principu, mēs varam izcelt galvenās darbības, strādājot ar to:

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Datu lasīšana, kad tie nav kešatmiņā

  1. Pie kontroliera pienāk resursdatora pieprasījums;
  2. Tā kā pieprasītie nav SSD kešatmiņā, tie tiek nolasīti no cietajiem diskiem;
  3. Nolasītie dati tiek nosūtīti saimniekdatoram. Tajā pašā laikā tiek pārbaudīts, vai šie bloki ir “karsti”;
  4. Ja jā, tie tiek kopēti SSD kešatmiņā turpmākai lietošanai.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Lasīt datus, kad tie atrodas kešatmiņā

  1. Pie kontroliera pienāk resursdatora pieprasījums;
  2. Tā kā pieprasītie dati atrodas SSD kešatmiņā, tie tiek nolasīti no turienes;
  3. Nolasītie dati tiek nosūtīti saimniekdatoram.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Datu rakstīšana, izmantojot lasīšanas kešatmiņu

  1. Pie kontroliera nonāk resursdatora rakstīšanas pieprasījums;
  2. Dati tiek ierakstīti cietajos diskos;
  3. Atbilde, kas norāda uz veiksmīgu ierakstīšanu, tiek atgriezta saimniekdatoram;
  4. Tajā pašā laikā tiek pārbaudīts, vai bloks ir “karsts” (tiek salīdzināts parametrs Populate-on-Write Threshold). Ja jā, tas tiek kopēts uz SSD kešatmiņu vēlākai lietošanai.

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Datu rakstīšana, izmantojot lasīšanas un rakstīšanas kešatmiņu

  1. Pie kontroliera nonāk resursdatora rakstīšanas pieprasījums;
  2. Dati tiek ierakstīti SSD kešatmiņā;
  3. Atbilde, kas norāda uz veiksmīgu ierakstīšanu, tiek atgriezta saimniekdatoram;
  4. Dati no SSD kešatmiņas tiek ierakstīti cietajos diskos fonā;

Pārbaudiet darbībā

Testa stends

2 serveri (CPU: 2 x Xeon E5-2620v3 2.4 Hz / RAM: 32 GB) ir savienoti ar diviem portiem, izmantojot Fibre Channel 16G tieši ar XCubeSAN XS5224D uzglabāšanas sistēmu (16 GB RAM/kontrolleris).

Datu masīvam izmantojām 16 x Seagate Constellation ES, ST500NM0001, 500 GB, SAS 6 Gb/s, kas apvienoti RAID5 (15+1), un 8 x HGST Ultrastar SSD800MH.B, HUSMH8010BSS200, 100 GB, S/AS12Gb,

Tika izveidoti 2 sējumi: pa vienam katram serverim.

1. pārbaude. Tikai lasāma SSD kešatmiņa no 1–8 SSD

SSD kešatmiņa

  • I/O tips: pielāgošana
  • Kešatmiņas bloka lielums: 4 MB
  • Aizpildīšanas lasīšanas slieksnis: 1
  • Aizpildīšanas rakstīšanas slieksnis: 0

I/O modelis

  • Rīks: IOmeter V1.1.0
  • Strādnieki: 1
  • Izcils (rindas dziļums): 128
  • Piekļuves specifikācijas: 4KB, 100% lasāms, 100% nejaušs

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Teorētiski, jo vairāk SSD ir kešatmiņas pūlā, jo augstāka ir veiktspēja. Praksē tas ir apstiprinājies. Vienīgais būtiskais SSD skaita pieaugums ar nelielu tilpumu skaitu neizraisa sprādzienbīstamu efektu.

2. tests. SSD kešatmiņa lasīšanas + rakstīšanas režīmā ar 2-8 SSD

SSD kešatmiņa

  • I/O tips: pielāgošana
  • Kešatmiņas bloka lielums: 4 MB
  • Aizpildīšanas lasīšanas slieksnis: 1
  • Aizpildīšanas rakstīšanas slieksnis: 1

I/O modelis

  • Rīks: IOmeter V1.1.0
  • Strādnieki: 1
  • Izcils (rindas dziļums): 128
  • Piekļuves specifikācijas: 4KB, 100% rakstīšanas, 100% nejaušības

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Tas pats rezultāts: sprādzienbīstams veiktspējas pieaugums un mērogošana, palielinoties SSD skaitam.

Abos testos darba datu apjoms bija mazāks par kopējo kešatmiņas lielumu. Tāpēc laika gaitā visi bloki tika kopēti kešatmiņā. Un darbs faktiski jau tika veikts ar SSD, praktiski neietekmējot cietos diskus. Šo testu mērķis bija skaidri parādīt kešatmiņas iesildīšanas un tās veiktspējas mērogošanas efektivitāti atkarībā no SSD skaita.

Tagad atgriezīsimies pie zemes un pārbaudīsim reālāku situāciju, kad datu apjoms ir lielāks par kešatmiņas lielumu. Lai tests tiktu izturēts saprātīgā laika posmā (kešatmiņas “iesildīšanās” periods ievērojami palielinās, palielinoties apjomam), mēs ierobežosim sējuma lielumu līdz 120 GB.

3. tests. Datu bāzes emulācija

SSD kešatmiņa

  • I/O tips: datu bāze
  • Kešatmiņas bloka lielums: 1 MB
  • Aizpildīšanas lasīšanas slieksnis: 2
  • Aizpildīšanas rakstīšanas slieksnis: 1

I/O modelis

  • Rīks: IOmeter V1.1.0
  • Strādnieki: 1
  • Izcils (rindas dziļums): 128
  • Piekļuves specifikācijas: 8KB, 67% lasāms, 100% nejaušs

SSD kešatmiņas ieviešana QSAN XCubeSAN uzglabāšanas sistēmā

Spriedums

Acīmredzamais secinājums, protams, ir labā SSD kešatmiņas izmantošanas efektivitāte, lai uzlabotu jebkuras uzglabāšanas sistēmas veiktspēju. Attiecas uz QSAN XCubeSAN Šis apgalvojums ir spēkā pilnībā: SSD kešatmiņas funkcija ir ieviesta perfekti. Tas attiecas uz atbalstu lasīšanas un lasīšanas + rakstīšanas režīmiem, elastīgiem iestatījumiem jebkuram lietošanas scenārijam, kā arī sistēmas vispārējo veiktspēju kopumā. Tāpēc par ļoti saprātīgām izmaksām (licences cena ir salīdzināma ar 1-2 SSD izmaksām) varat ievērojami palielināt kopējo veiktspēju.

Avots: www.habr.com

Pievieno komentāru