SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

SSD-levyjen käyttöön perustuvia ja tallennusjärjestelmissä laajalti käytettyjä tekniikoita suorituskyvyn parantamiseksi on keksitty pitkään. Ensinnäkin se on SSD:n käyttö tallennustilana, mikä on 100% tehokasta, mutta kallista. Siksi käytetään väsyviä ja välimuistitekniikoita, joissa SSD-levyjä käytetään vain suosituimmille ("kuumille") tiedoille. Tasoitus on hyvä skenaarioihin, joissa käytetään "kuumaa" dataa pitkällä aikavälillä (päiviä-viikkoja). Välimuisti päinvastoin on tarkoitettu lyhytaikaiseen (minuutit-tunnit) käyttöön. Molemmat näistä vaihtoehdoista on toteutettu tallennusjärjestelmässä QSAN XCubeSAN. Tässä artikkelissa tarkastelemme toisen algoritmin toteutusta - SSD-välimuisti.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

SSD-välimuistitekniikan ydin on SSD-levyjen käyttö välimuistina kiintolevyjen ja ohjaimen RAM-muistin välillä. SSD-levyn suorituskyky on luonnollisesti pienempi kuin ohjaimen oman välimuistin suorituskyky, mutta äänenvoimakkuus on suuruusluokkaa suurempi. Siksi saamme tietyn kompromissin nopeuden ja äänenvoimakkuuden välillä.

Ohjeet SSD-välimuistin käyttämiseen lukemiseen:

  • Lukutoimintojen ylivalta kirjoitustoimintoihin nähden (useimmiten tyypillinen tietokantoille ja verkkosovelluksille);
  • Pullonkaulan esiintyminen kiintolevyryhmän suorituskyvyn muodossa;
  • Tarvittavan tiedon määrä on pienempi kuin SSD-välimuistin koko.

Ohjeet luku+kirjoitus SSD-välimuistin käyttöön ovat samat lukuun ottamatta toimintojen luonnetta – sekatyyppiä (esimerkiksi tiedostopalvelin).

Useimmat tallennustilatoimittajat käyttävät tuotteissaan vain luku -tilassa olevaa SSD-välimuistia. Perusteellinen ero QSAN Ne tarjoavat mahdollisuuden käyttää välimuistia myös kirjoittamiseen. SSD-välimuistitoiminnon aktivoimiseksi QSAN-tallennusjärjestelmissä sinun on ostettava erillinen lisenssi (toimitetaan sähköisesti).

XCubeSANin SSD-välimuisti on toteutettu fyysisesti erillisten SSD-välimuistipoolien muodossa. Niitä voi olla järjestelmässä enintään neljä. Jokainen pooli käyttää tietysti omaa SSD-sarjaansa. Ja jo virtuaalisen levyn ominaisuuksissa määritämme, käyttääkö se välimuistipoolia ja mitä. Välimuistin käytön ottaminen käyttöön ja poistaminen käytöstä taltioilla voidaan tehdä verkossa ilman I/O:n pysäyttämistä. Voit myös lisätä SSD-levyjä altaaseen ja poistaa ne sieltä. Kun luot SSD-poolvälimuistin, sinun on valittava, missä tilassa se toimii: vain luku vai luku+kirjoitus. Sen fyysinen organisaatio riippuu tästä. Koska välimuistipooleja voi olla useita, niiden toiminnallisuus voi olla erilainen (eli järjestelmässä voi olla samanaikaisesti sekä luku- että luku- ja kirjoitusvälimuistipoolit).

Jos käytetään vain luku -välimuistia, se voi koostua 1-8 SSD-levystä. Levyjen ei tarvitse olla samaa kapasiteettia ja samaa toimittajaa, koska ne yhdistetään NRAID+ -rakenteeksi. Kaikki altaan SSD-levyt ovat yhteisiä. Järjestelmä yrittää itsenäisesti rinnastaa saapuvat pyynnöt kaikkien SSD-levyjen välillä parhaan suorituskyvyn saavuttamiseksi. Jos jokin SSD-levyistä epäonnistuu, mitään pahaa ei tapahdu: välimuisti sisältää loppujen lopuksi vain kopion kiintolevyryhmään tallennetuista tiedoista. Se vain, että käytettävissä olevan SSD-välimuistin määrä vähenee (tai tulee nollaan, jos käytetään alkuperäistä SSD-välimuistia yhdestä asemasta).

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Jos välimuistia käytetään luku- ja kirjoitustoimintoihin, poolissa olevien SSD-levyjen määrän tulee olla kahden kerrannainen, koska sisältö peilataan kiintolevypareihin (käytetään NRAID 1+ -rakennetta). Välimuistin kopioiminen on välttämätöntä, koska se voi sisältää tietoja, joita ei ole vielä kirjoitettu kiintolevyille. Ja tässä tapauksessa SSD-levyn epäonnistuminen välimuistipoolista johtaisi tiedon menettämiseen. NRAID 1+:n tapauksessa SSD-levyn vika johtaa yksinkertaisesti välimuistin siirtämiseen vain luku -tilaan, jolloin kirjoittamattomat tiedot siirretään kiintolevyryhmään. Viallisen SSD:n vaihtamisen jälkeen välimuisti palaa alkuperäiseen toimintatilaansa. Muuten, turvallisuuden parantamiseksi voit määrittää luku- ja kirjoitusvälimuistiin omistetut hot varaosat.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Kun käytät SSD-välimuistitoimintoa XCubeSANissa, tallennusohjainten muistin määrälle on asetettu useita vaatimuksia: mitä enemmän järjestelmämuistia, sitä suurempi välimuisti on käytettävissä.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Toisin kuin useimmat tallennusjärjestelmien valmistajat, jotka tarjoavat vain vaihtoehdon kytkeä SSD-välimuisti päälle/pois päältä, QSAN tarjoaa enemmän vaihtoehtoja. Erityisesti voit valita välimuistin toimintatilan kuormituksen luonteen mukaan. Esiasetettuja malleja on kolme, jotka ovat toiminnaltaan lähimpänä vastaavia palveluita: tietokanta, tiedostojärjestelmä, verkkopalvelu. Lisäksi ylläpitäjä voi luoda oman profiilinsa asettamalla tarvittavat parametriarvot:

  • Lohkon koko (Cache Block Size) – 1/2/4 Mt
  • Pyyntöjen määrä lukea lohko niin, että se kopioidaan välimuistiin (täytä lukukynnys) – 1...4
  • Pyyntöjen määrä kirjoittaa lohko niin, että se kopioidaan välimuistiin (Populate-on-Write Threshold) – 0...4

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Profiilit voidaan vaihtaa lennossa, mutta tietysti välimuistin sisällön nollauksen ja sen uuden "lämmittelyn" kanssa.

Ottaen huomioon SSD-välimuistin toimintaperiaatteen, voimme korostaa tärkeimmät toiminnot työskennellessään sen kanssa:

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Lukee dataa, kun se ei ole välimuistissa

  1. Pyyntö isännältä saapuu ohjaimelle;
  2. Koska pyydetyt eivät ole SSD-välimuistissa, ne luetaan kiintolevyiltä;
  3. Luetut tiedot lähetetään isännälle. Samalla tarkistetaan, ovatko nämä lohkot "kuumia";
  4. Jos kyllä, ne kopioidaan SSD-välimuistiin myöhempää käyttöä varten.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Lue tiedot, kun ne ovat välimuistissa

  1. Pyyntö isännältä saapuu ohjaimelle;
  2. Koska pyydetyt tiedot ovat SSD-välimuistissa, ne luetaan sieltä;
  3. Luetut tiedot lähetetään isännälle.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Tietojen kirjoittaminen lukuvälimuistia käytettäessä

  1. Kirjoituspyyntö isännältä saapuu ohjaimelle;
  2. Tiedot kirjoitetaan kiintolevyille;
  3. Vastaus, joka osoittaa onnistuneen tallennuksen, palautetaan isännälle;
  4. Samalla tarkistetaan, onko lohko "kuuma" (verrataan Populate-on-Write Threshold -parametria). Jos kyllä, se kopioidaan SSD-välimuistiin myöhempää käyttöä varten.

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Tietojen kirjoittaminen luku- ja kirjoitusvälimuistia käytettäessä

  1. Kirjoituspyyntö isännältä saapuu ohjaimelle;
  2. Tiedot kirjoitetaan SSD-välimuistiin;
  3. Vastaus, joka osoittaa onnistuneen tallennuksen, palautetaan isännälle;
  4. SSD-välimuistin tiedot kirjoitetaan taustalla oleville kiintolevyille;

Tarkista toiminnassa

Testiteline

Kaksi palvelinta (CPU: 2 x Xeon E2-5v2620 3 Hz / RAM: 2.4 Gt) on yhdistetty kahdella portilla Fibre Channel 32G:n kautta suoraan XCubeSAN XS16D -tallennusjärjestelmään (5224 Gt RAM-muistia/ohjain).

Käytimme 16 x Seagate Constellation ES, ST500NM0001, 500GB, SAS 6Gb/s, yhdistettynä RAID5:een (15+1), datajoukkoon ja 8 x HGST Ultrastar SSD800MH.B, HUSMH8010BSS200, välimuisti 100GB, S/ASs 12GB, ass,

2 taltiota luotiin: yksi jokaiselle palvelimelle.

Testi 1. Vain luku -muotoinen SSD-välimuisti 1–8 SSD-levyltä

SSD-välimuisti

  • I/O-tyyppi: Räätälöinti
  • Välimuistin lohkokoko: 4 Mt
  • Täytä lukujen mukaan -kynnys: 1
  • Kirjoitusaikakynnys: 0

I/O-malli

  • Työkalu: IOmeter V1.1.0
  • Työntekijät: 1 XNUMX
  • Erinomainen (jonon syvyys): 128
  • Käyttöoikeustiedot: 4 kt, 100 % luku, 100 % satunnainen

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Teoriassa mitä enemmän SSD-levyjä välimuistissa on, sitä korkeampi suorituskyky. Käytännössä tämä on vahvistettu. Ainoa merkittävä lisäys SSD-levyjen lukumäärässä pienellä määrällä ei johda räjähtävään vaikutukseen.

Testi 2. SSD-välimuisti luku + kirjoitustilassa 2-8 SSD:llä

SSD-välimuisti

  • I/O-tyyppi: Räätälöinti
  • Välimuistin lohkokoko: 4 Mt
  • Täytä lukujen mukaan -kynnys: 1
  • Kirjoitusaikakynnys: 1

I/O-malli

  • Työkalu: IOmeter V1.1.0
  • Työntekijät: 1 XNUMX
  • Erinomainen (jonon syvyys): 128
  • Käyttöoikeustiedot: 4 kt, 100 % kirjoitus, 100 % satunnainen

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

Sama tulos: räjähdysmäinen suorituskyvyn kasvu ja skaalautuminen SSD-levyjen määrän kasvaessa.

Molemmissa testeissä työdatan määrä oli pienempi kuin välimuistin kokonaiskoko. Siksi ajan myötä kaikki lohkot kopioitiin välimuistiin. Ja itse asiassa työ tehtiin jo SSD-levyillä, käytännössä vaikuttamatta kiintolevyihin. Näiden testien tarkoituksena oli osoittaa selkeästi välimuistin lämmittämisen ja sen suorituskyvyn skaalauksen tehokkuus SSD-levyjen lukumäärän mukaan.

Nyt palataan maan pinnalle ja tarkistetaan realistisempi tilanne, kun datamäärä on suurempi kuin välimuistin koko. Jotta testi menisi läpi kohtuullisessa ajassa (välimuistin "lämpenemisaika" kasvaa huomattavasti volyymin koon kasvaessa), rajoitamme talteen koon 120 Gt.

Testi 3. Tietokannan emulointi

SSD-välimuisti

  • I/O-tyyppi: Tietokanta
  • Välimuistin lohkokoko: 1 Mt
  • Täytä lukujen mukaan -kynnys: 2
  • Kirjoitusaikakynnys: 1

I/O-malli

  • Työkalu: IOmeter V1.1.0
  • Työntekijät: 1 XNUMX
  • Erinomainen (jonon syvyys): 128
  • Käyttöoikeustiedot: 8 kt, 67 % luku, 100 % satunnainen

SSD-välimuistin käyttöönotto QSAN XCubeSAN -tallennusjärjestelmässä

tuomio

Ilmeinen johtopäätös on tietysti SSD-välimuistin käytön hyvä tehokkuus minkä tahansa tallennusjärjestelmän suorituskyvyn parantamiseksi. Sovellettu QSAN XCubeSAN Tämä väite pätee täysin: SSD-välimuistitoiminto on toteutettu täydellisesti. Tämä koskee luku- ja luku+kirjoitustilojen tukea, joustavia asetuksia minkä tahansa käyttöskenaarion mukaan sekä järjestelmän yleistä suorituskykyä kokonaisuutena. Siksi erittäin kohtuullisin kustannuksin (lisenssihinta on verrattavissa 1-2 SSD-levyn hintaan) voit parantaa merkittävästi yleistä suorituskykyä.

Lähde: will.com

Lisää kommentti