Implementimi i SSD caching në SAN QSAN XCubeSAN

Teknologjitë për rritjen e performancës, të bazuara në përdorimin e SSD dhe të aplikuara gjerësisht në sistemet e ruajtjes, janë shpikur prej kohësh. Para së gjithash, kjo është përdorimi i SSD si hapësirë për ruajtje, e cila është 100% efektive, por e shtrenjtë. Prandaj, përdoren teknologjitë e tierimit dhe caching, ku SSD përdoren vetëm për të dhënat më të kërkuara (“të nxehta”). Tierimi është i mirë për skenarë afatgjatë (ditë-javë) të përdorimit të të dhënave “të nxehta”. Caching, nga ana tjetër, për përdorim afatshkurtër (minuta-orë). Të dy këta opsione realizohen në sistemet e ruajtjes. QSAN XCubeSAN. Në këtë artikull do të shqyrtojmë realizimin e algoritmit të dytë – SSD caching.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Thelbi i teknologjisë së SSD caching është përdorimi i SSD si një ndërlidhës midis disqeve të forta dhe memories operative të kontrollorit. Performanca e SSD, sigurisht, është më e ulët se performanca e caches së vet kontrollorit, por volumi është shumë më i madh. Prandaj, ne kemi një kompromis ndërmjet shpejtësisë dhe kapacitetit.

Shqyrtimi për përdorimin e SSD cache për lexim:

  • Përparësia e operacioneve të leximit krahas operacioneve të shkruar (më së shumti karakteristike për bazat e të dhënave dhe aplikacionet web);
  • Prania e një ngushtice në formë të performancës së grupit të disqeve të forta;
  • Vëllimi i të dhënave të kërkuara është më i vogël se vëllimi i SSD cache.

Shqyrtimi për përdorimin e SSD cache për lexim + shkruar janë të njëjtat arsye, përveç natyrës së operacioneve – tip të përzier (p.sh., serveri i skedarëve).

Shumica e ofruesve të sistemit të ruajtjes përdorin në produktet e tyre SSD cache vetëm për operacione të leximit. Dallimi thelbësor QSAN nga ata është mundësia e përdorimit të cache edhe për shkruar. Për aktivizimin e funksionalitetit të SSD caching në sistemin e ruajtjes QSAN, kërkohet blerja e një licence të veçantë (ofrohet në format elektronik).

SSD cache in XCubeSAN is physically implemented as separate SSD cache pools. The system can have up to four of them. Each pool, of course, uses its own set of SSDs. In the properties of the virtual disk, we specify whether it will use the cache pool and which one exactly. Enabling and disabling cache usage for volumes can be done online without interrupting input/output operations. Additionally, SSDs can be added to and removed from the pool on-the-fly. When creating an SSD cache pool, it is necessary to choose the mode in which it will operate: read-only or read+write. This determines its physical organization. Since there can be multiple cache pools, their functionality can be different (meaning the system can simultaneously have cache pools for reading and for reading+writing).

In the case of using a cache pool for reading only, it can consist of 1-8 SSDs. The drives do not necessarily have to be of the same capacity and vendor, as they are combined into an NRAID+ structure. All SSDs in the pool are used collectively. The system independently tries to parallelize incoming requests between all SSDs to achieve maximum performance. If one of the SSDs fails, nothing serious will happen: the cache only contains a copy of the data stored on the hard disk array. The available SSD cache capacity will simply be reduced (or become zero if the original SSD cache consists of a single drive).

Implementimi i SSD caching në SAN QSAN XCubeSAN

If the cache is used for read + write operations, then the number of SSDs in the pool must be an even number, as the content is mirrored across pairs of drives (an NRAID 1+ structure is used). The duplication of the cache is necessary because it may contain data that has not yet been written to the hard disks. In this case, the failure of an SSD from the cache pool would lead to information loss. However, with an NRAID 1+ configuration, the failure of an SSD would simply switch the cache to 'read-only' mode while flushing unsaved data to the hard disk array. After replacing the faulty SSD, the cache will return to its original operating mode. For greater security, a dedicated hot spare can be assigned to a cache operating in read + write mode.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Kur përdoret funksioni i keqimin SSD në XCubeSAN, ka një sërë kërkesash për kapacitetin e memorjes së kontrollorëve të SCK: sa më shumë memorie sistemike, aq më shumë hapësirë do të jetë e disponueshme në pool-in e keqimit.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Përveç kësaj, ndryshe nga shumica e prodhuesve të SCK, të cilët ofrojnë vetëm një opsion për të aktivizuar / çaktivizuar keqimin SSD, QSAN ofron mundësi më të mëdha. Konkretisht, mund të zgjidhni modalitetin e funksionimit të keqimit në varësi të natyrës së ngarkesës. Ka tre modele të paracaktuara, më të afërta me shërbimet përkatëse: baza e të dhënave, sistemi i skedarëve, shërbimi web. Përveç kësaj, administratori mund të krijojë një profil të tij, duke vendosur vlerat përkatëse të parametrave:

  • Madhësia e bllokut (Cache Block Size) – 1/2/4 MB
  • Numri i kërkesave për të lexuar një bllok, që ai të kopjohet në keqim (Populate-on-Read Threshold) – 1..4
  • Numri i kërkesave për të shkruar një bllok, që ai të kopjohet në keqim (Populate-on-Write Threshold) – 0..4

Implementimi i SSD caching në SAN QSAN XCubeSAN

Profilit mund të ndryshohet "në flakë", por, natyrisht, me ri-nullimin e përmbajtjes së keqimit dhe me "ngrohjen" e re të tij.

Duke shqyrtuar parimin e funksionimit të keqimit SSD, mund të dallohen operacionet kryesore gjatë punës me të:

Implementimi i SSD caching në SAN QSAN XCubeSAN

Leximi i të dhënave kur ato nuk janë në keqim.

  1. Kërkesa nga hosti arrin në kontrollor;
  2. Pasi të dhënat e kërkuara nuk janë në keqim SSD, ato lexohen nga disqet e ngurtë;
  3. Të dhënat e lexuara dërgohen te hosti. Njëkohësisht bëhet një kontroll nëse këto blloqe janë "të nxehta";
  4. Nëse po, ato kopjohen në keqim SSD për përdorim të mëtejshëm.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Leximi i të dhënave kur ato janë në keqim.

  1. Kërkesa nga hosti arrin në kontrollor;
  2. Pasi të dhënat e kërkuara janë në keqim SSD, ato lexohen prej andej;
  3. Të dhënat e lexuara dërgohen te hosti.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Shkrimi i të dhënave kur përdoret keqimi për lexim.

  1. Kërkesa për shkrim nga hosti arrin në kontrollor;
  2. Të dhënat shkruhen në disqet e ngurtë;
  3. Hostit i kthehet një përgjigje për shkrimin e suksesshëm;
  4. Njëkohësisht kontrollohet nëse blloku është "i nxehtë" (krahason parametër Populate-on-Write Threshold). Nëse po, ai kopjohet në keqim SSD për përdorim të mëtejshëm.

Implementimi i SSD caching në SAN QSAN XCubeSAN

Shkrimi i të dhënave kur përdoret keqimi për lexim + shkrim.

  1. Kërkesa për shkrim nga hosti arrin në kontrollor;
  2. Të dhënat shkruhen në keqim SSD;
  3. Hostit i kthehet një përgjigje për shkrimin e suksesshëm;
  4. Të dhënat nga SSD cache regjistrohen pasivisht në hard disqet.

Kontrolli në veprim

Standi i testimit

2 servera (CPU: 2 x Xeon E5-2620v3 2.4Hz / RAM: 32GB) janë lidhur me dy porta përmes Fibre Channel 16G direkt në Storage XCubeSAN XS5224D (16GB RAM / kontrollues).

U përdorën 16 x Seagate Constellation ES, ST500NM0001, 500GB, SAS 6Gb/s, të kombinuar në RAID5 (15+1) për masivin e të dhënave dhe 8 x HGST Ultrastar SSD800MH.B, HUSMH8010BSS200, 100GB, SAS 12Gb/s si cache.

U krijuan 2 vëllime: një për çdo server.

Testi 1. SSD cache vetëm për lexim me 1-8 SSD

SSD Cache

  • Lloji I/O: Personalizim
  • Madhësia e Bllokut të Cache: 4MB
  • Popullimi në prag për lexim: 1
  • Popullimi në prag për shkruar: 0

Pattern I/O

  • Mjeti: IOmeter V1.1.0
  • Punëtorët: 1
  • Derdhja e jashtme (Thellësia e Radhës): 128
  • Specifikimet e Qasjes: 4KB, 100% Lexim, 100% Rastësor

Implementimi i SSD caching në SAN QSAN XCubeSAN

Implementimi i SSD caching në SAN QSAN XCubeSAN

Teorikisht, sa më shumë SSD në grupin e caches, aq më shumë performancë. Në praktikë, kjo u konfirmua gjithashtu. E vetmja, rritja e konsiderueshme e numrit të SSD-ve me një numër të vogël vëllimesh nuk çon në një efekt eksploziv.

Testi 2. SSD cache në modus leximi + shkrimi me 2-8 SSD

SSD Cache

  • Lloji I/O: Personalizim
  • Madhësia e Bllokut të Cache: 4MB
  • Popullimi në prag për lexim: 1
  • Popullimi në prag për shkruar: 1

Pattern I/O

  • Mjeti: IOmeter V1.1.0
  • Punëtorët: 1
  • Derdhja e jashtme (Thellësia e Radhës): 128
  • Specifikimet e Qasjes: 4KB, 100% Shkrim, 100% Rastësor

Implementimi i SSD caching në SAN QSAN XCubeSAN

Implementimi i SSD caching në SAN QSAN XCubeSAN

I njëjti rezultat: rritje eksplozive e performancës dhe shkallëzim me rritjen e numrit të SSD-ve.

Në të dy testet, volumi i të dhënave të punës ishte më i vogël se volumi total i caches. Prandaj, me kalimin e kohës të gjitha blloqet u kopjuan në cache. Dhe puna në thelb u krye me SSD, duke prekur praktikisht hard disqet. Qëllimi i këtyre testeve ishte të tregohej qartë efektiviteti i ngrohjes së caches dhe shkallëzimi i performancës së tij në varësi të numrit të SSD-ve.

Tani, le të kthehemi nga qiejt në tokë dhe të kontrollojmë një situatë më realiste, kur volumi i të dhënave është më i madh se madhësia e caches. Në mënyrë që testi të kalojë brenda një kohe të arsyeshme (koha e ‘ngrohjes’ së caches rritet ndjeshëm me rritjen e madhësisë së vëllimit), do të kufizohemi në madhësinë e vëllimit prej 120GB.

Testi 3. Emulimi i punës së bazës së të dhënave

SSD Cache

  • Lloji I/O: Baza e të dhënave
  • Madhësia e Bllokut të Cache: 1MB
  • Popullimi në prag për lexim: 2
  • Popullimi në prag për shkruar: 1

Pattern I/O

  • Mjeti: IOmeter V1.1.0
  • Punëtorët: 1
  • Derdhja e jashtme (Thellësia e Radhës): 128
  • Specifikimet e Qasjes: 8KB, 67% Lexim, 100% Rastësor

Implementimi i SSD caching në SAN QSAN XCubeSAN

Verdikti

Si një përfundim të dukshëm, padyshim se del një efikasitet i mirë në përdorimin e SSD cache për të rritur performancën e çdo sistemi ruajtjeje. QSAN XCubeSAN Ky kjo deklaratë i përket plotësisht: funksioni i keqazhitjes SSD është realizuar shkëlqyeshëm. Kjo përfshin mbështetje për modulet e leximit dhe leximit + shkrimit, konfigurimin fleksibël të operimit për çdo skenar përdorimi, si dhe performancën përfundimtare të sistemit në tërësi. Prandaj, për një çmim shumë të arsyeshëm (çmimi i licencës është i krahasueshëm me çmimin e 1-2 SSD), është e mundur të rritet ndjeshëm performanca e përgjithshme.

Burimi: habr.com

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster