Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Π’ nakaraang materyal napag-isipan na namin ang tanong na "Ilalapat ba namin ang RAID sa SSD" gamit ang halimbawa ng mga drive ng Kingston, ngunit ginawa namin ito sa loob lamang ng zero level. Sa kasalukuyang artikulo, susuriin namin ang mga opsyon para sa paggamit ng mga propesyonal at home NVMe na solusyon sa mga pinakasikat na uri ng RAID arrays at pag-uusapan ang tungkol sa compatibility ng controller. Broadcom sa Kingston drive.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Bakit kailangan mo ng RAID sa isang SSD?

Kasama sa mga bentahe ng SSD-based na storage array kaysa sa HDD storage arrays ang mas mabilis na oras ng pag-access sa data sa drive at superior read/write performance. Gayunpaman, ang perpektong SSD-based na RAID performance ay nangangailangan ng pinakamainam na kumbinasyon ng processor, cache, software, at hardware. Kapag ang lahat ng mga salik na ito ay gumagana nang perpekto, ang isang SSD RAID ay maaaring lubos na madaig ang isang maihahambing na pagsasaayos gamit ang mga tradisyonal na HDD.

Ang isang tipikal na SSD ay kumokonsumo ng mas kaunting kapangyarihan kaysa sa mga HDD, kaya kapag pinagsama mo ang isang malaking bilang ng mga SSD sa isang RAID array, ang pagtitipid ng enerhiya kumpara sa isang HDD RAID array ay maaari ding isalin sa mas mababang gastos sa mga singil sa enerhiya ng kumpanya.

Gayunpaman, ang SSD RAID ay may mga limitasyon at disadvantages, lalo na ang mas mataas na presyo bawat gigabyte ng espasyo kumpara sa mga hard drive na may maihahambing na kapasidad. At ang oras sa pagitan ng mga pagkabigo ng flash memory ay limitado sa isang tiyak na bilang ng mga ikot ng muling pagsulat. Iyon ay, ang mga SSD drive ay may isang tiyak na buhay ng serbisyo, na nakasalalay sa operasyon: mas maraming impormasyon ang na-overwrite dito, mas mabilis na mabibigo ang drive. Sa kabilang banda, ang mga enterprise SSD ay may disenteng habang-buhay na maihahambing sa mga mekanikal na hard drive.

Paano nabubuhay ang Kingston SSDs sa RAID mode gamit ang mga Broadcom controllers

Sa mga unang araw ng SSD, ang mga disenyo ng RAID ay may maraming mga nuances. Kasama dahil sa paggamit ng mga hindi gaanong fault-tolerant na HDD. Ang mga solid state drive ay mas maaasahan kaysa sa kanilang mga katapat batay sa mga magnetic disk. Tulad ng alam natin, walang mga gumagalaw na bahagi sa mga solusyon sa SSD, kaya ang pinsala sa makina ay nabawasan sa zero. Ang pagkabigo ng mga solid-state drive dahil sa mga power surges ay hindi rin malamang, dahil sa antas ng isang home PC at anumang server, ang UPS, mga surge protector, at kahit isang power supply ay nagpoprotekta sa iyo.

Kasabay nito, ang mga solid-state drive ay may isa pang makabuluhang plus: kahit na ang mga cell ng memorya ay pagod para sa pagsulat, ang data ay maaari pa ring basahin mula sa kanila, ngunit kung ang magnetic disk ay nasira, sayang.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Ngayon, medyo normal na kasanayan ang paggamit ng mga solusyon sa SSD sa mga array ng RAID ng iba't ibang antas. Ang pangunahing bagay ay ang pumili ng tamang SSD, ang latency na kung saan ay minimal. At pinakamainam, gumamit ng mga SSD ng parehong tagagawa at ng parehong modelo upang hindi ka magkaroon ng hodgepodge ng mga drive na sumusuporta sa iba't ibang uri ng mga load at binuo batay sa iba't ibang uri ng memorya, controllers at iba pang mga teknolohiya. Iyon ay, kung magpasya kaming bumili ng apat o 16 na NVMe SSD mula sa Kingston upang lumikha ng isang RAID array, mas mabuti kung lahat sila ay nagmula sa parehong serye at hanay ng modelo.

Siyanga pala, sa huling artikulo binanggit namin ang mga controller ng Broadcom para sa isang dahilan nang pag-usapan namin ang tungkol sa NVMe SSD mula sa Kingston. Ang katotohanan ay ang mga manual para sa mga device na ito ay agad na nagrereseta ng mga katugmang drive (kabilang ang mga solusyon mula sa nabanggit na tagagawa ng American SSD), kung saan ang controller ay gagana nang walang kamali-mali. Dapat umasa ang impormasyong ito kapag pumipili ng controller-SSD bundle para sa RAID.

Sinusuri namin ang gawain ng SSD Kingston sa mga pinakasikat na uri ng RAID - "1", "5", "10", "50"

Kaya, ang "zero" na antas ng RAID ay hindi nagbibigay ng data redundancy, ngunit pinapataas lamang ang pagganap. Ang RAID 0 ay hindi nagbibigay ng anumang proteksyon sa data, kaya hindi namin ito isasaalang-alang sa loob ng corporate segment. Ang RAID 1, sa kabilang banda, ay nagbibigay ng ganap na redundancy ngunit katamtaman lamang na mga natamo sa pagganap, at samakatuwid ay dapat isaalang-alang kung ang mga nadagdag sa pagganap ay hindi pangunahing pagsasaalang-alang kapag bumubuo ng SSD RAID array.

RAID 1 batay sa Kingston SSDs at Broadcom controllers

Kaya, ang unang antas ng RAID array batay sa Broadcom MegaRAID 9460-16i controller ay pinagsasama mula dalawa hanggang 32 Kingston drive, na mga kopya ng bawat isa, at nagbibigay ng kumpletong redundancy. Kung kapag gumagamit ng mga tradisyunal na HDD, ang bilis ng pagsulat at pagbabasa ng data ay nanatili sa antas ng mismong HDD na ito, kung gayon ang paggamit ng mga solusyon sa NVMe SSD ay nakakakuha tayo ng sampung beses na pagtaas sa pagganap. Lalo na sa mga tuntunin ng oras ng pag-access ng data. Halimbawa, sa dalawang Kingston DC1000M U.2 NVMe SSD sa server RAID 1, nakakakuha kami ng 350 random read IOPS at 000 write IOPS.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Sa mga tuntunin ng sunud-sunod na bilis ng pagbasa, ang mga resulta ay tutugma sa mga katangian ng drive - 3200 MB / s. Ngunit dahil ang parehong mga NVMe SSD ay gumagana, ang data ay maaaring basahin mula sa kanila nang sabay-sabay, na ginagawang medyo mabilis ang mga operasyon sa pagbabasa. Ngunit ang bilis ng pagsulat (na sinasabing 2000 MB / s) ay magiging mas mabagal, dahil ang bawat operasyon ng pagsulat ay isinasagawa nang dalawang beses.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Ang RAID 1 ay perpekto para sa maliliit na database o anumang iba pang kapaligiran na nangangailangan ng fault tolerance ngunit mababang kapasidad. Ang pag-mirror ng drive ay partikular na nakakatulong sa mga sitwasyon ng pagbawi ng sakuna (ang pagganap ay bahagyang bumababa) dahil nagbibigay ito ng instant na "resuscitation" ng mahalagang data kung nabigo ang isa sa mga drive sa array. Ngunit dahil ang antas ng proteksyong ito ay nangangailangan ng pagdodoble sa kapasidad ng storage ng naka-mirror na data (100 TB ay mangangailangan ng 200 TB ng storage), maraming enterprise system ang gumagamit ng mas matipid na mga opsyon sa storage: RAID 5 at RAID 6.

RAID 5 batay sa Kingston SSDs at Broadcom controllers

Para mag-ayos ng fifth-level RAID array, kailangan namin ng hindi bababa sa tatlong drive, ang data na kung saan ay interleaved (cyclically nakasulat sa lahat ng drive sa array), ngunit hindi duplicate. Kapag inayos ang mga ito, dapat isaalang-alang ng isa ang kanilang mas kumplikadong istraktura, dahil dito lilitaw ang isang konsepto bilang "checksum" (o "parity"). Ang konseptong ito ay nangangahulugan ng lohikal na algebraic na XOR function (aka eksklusibong "OR"), na nagdidikta ng paggamit ng hindi bababa sa tatlong drive sa array (maximum - 32). Sa kasong ito, ang impormasyon ng parity ay nakasulat sa lahat ng "disks" sa array.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Para sa hanay ng apat na Kingston DC500R SATA SSD na may kapasidad na 3,84 TB bawat isa, nakakakuha kami ng 11,52 TB na espasyo at 3,84 para sa mga checksum. At kung pagsasamahin mo ang 16 na Kingston DC1000M U.2 NVMe drive na may kapasidad na 7,68 TB sa isang Level 115,2 RAID, matututo tayo ng 7,68 TB na may pagkawala ng 5 TB. Tulad ng nakikita mo, mas maraming drive, mas mahusay sa huli. Mas mainam din ito dahil mas maraming drive sa RAID 0, mas mataas ang pangkalahatang pagganap ng pagsulat. At ang linear reading ay aabot sa antas ng RAID XNUMX.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Ang RAID 5 disk group ay nagbibigay ng mataas na throughput (lalo na para sa malalaking file) at redundancy na may kaunting pagkawala ng kuryente. Ang ganitong uri ng array organization ay pinakaangkop para sa mga network na gumaganap ng maraming maliliit na input/output (I / O) na operasyon sa parehong oras. Ngunit hindi mo ito dapat gamitin para sa mga gawain na nangangailangan ng malaking bilang ng mga operasyon sa pagsulat para sa maliliit o maliliit na bloke.
May isa pang nuance: kung hindi bababa sa isa sa mga NVMe drive ang nabigo, ang RAID 5 ay napupunta sa degradation mode at ang pagkabigo ng isa pang storage device ay maaaring maging kritikal para sa lahat ng data. Kung nabigo ang isang drive sa array, gagamitin ng RAID controller ang parity information upang muling likhain ang anumang nawawalang data.

RAID 10 batay sa Kingston SSDs at Broadcom controllers

Kaya, ang RAID 0 ay nagbibigay sa amin ng dalawang beses na pagtaas sa bilis at oras ng pag-access, at ang RAID 1 ay nagbibigay ng pagiging maaasahan. Sa isip, sila ay pinagsama, at dito ang RAID 10 (o 1 + 0) ay dumating sa pagsagip. Ang "Ten" ay binuo mula sa apat na SATA SSD o NVMe drive (maximum - 32) at nagpapahiwatig ng hanay ng "mirror", ang bilang ng mga drive kung saan dapat palaging isang multiple ng apat. Ang data sa array na ito ay nakasulat gamit ang fixed block partitioning (tulad ng kaso ng RAID 0) at striping sa pagitan ng mga drive, na nagkakalat ng mga kopya sa mga "drive" sa isang RAID 1 array. At may kakayahang mag-access ng maraming grupo ng mga drive sa Sa parehong oras, ang RAID 10 ay nagpapakita ng mataas na pagganap.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Dahil ang RAID 10 ay may kakayahang mag-stripe ng data sa maraming naka-mirror na pares, nangangahulugan ito na maaari nitong tiisin ang pagkabigo ng isang drive sa isang pares. Gayunpaman, kung ang parehong mga pares ng salamin (iyon ay, lahat ng apat na drive) ay nabigo, magkakaroon ng hindi maiiwasang pagkawala ng data. Bilang resulta, nakakakuha din kami ng magandang pagpapahintulot at pagiging maaasahan ng kasalanan. Ngunit tandaan na, tulad ng RAID 1, ang ika-sampung antas ng array ay gumagamit lamang ng kalahati ng kabuuang kapasidad, at samakatuwid ay isang mamahaling solusyon. At mahirap din i-set up.

Ang RAID 10 ay angkop para sa paggamit sa mga data warehouse na nangangailangan ng 100% redundancy ng mga mirrored disk group, pati na rin ang tumaas na I/O performance ng RAID 0. Ito ang pinakamahusay na solusyon para sa mga medium-sized na database o anumang kapaligiran na nangangailangan ng mas mataas na fault tolerance kaysa sa RAID 5.

RAID 50 batay sa Kingston SSDs at Broadcom controllers

Isang pinagsamang array na katulad ng level 5 RAID, na isang level 50 array na binuo mula sa level 5 na array. Tulad ng dati, ang pangunahing layunin ng array na ito ay upang makamit ang dobleng pagganap habang pinapanatili ang pagiging maaasahan ng data sa mga array ng RAID XNUMX. Kasabay nito, ang RAID XNUMX ay nagbibigay ng pinahusay na pagganap ng pagsulat at mas mahusay na proteksyon ng data kaysa sa karaniwang RAID XNUMX sa kaganapan ng isang pagkabigo sa drive , at may kakayahang mas mabilis na pagbawi kung sakaling mabigo ang isa sa mga drive.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Hinahati ng grupo ng drive ng RAID 50 ang data sa mas maliliit na bloke at pagkatapos ay i-strip ito sa bawat array ng RAID 5. Hinahati naman ng grupo ng drive ng RAID 5 ang data sa mas maliliit na bloke, kinakalkula ang parity, nagsasagawa ng lohikal na OR na operasyon sa mga bloke, at pagkatapos gumaganap ng data block write at parity operations para sa bawat disk sa disk group.

At habang ang pagganap ay hindi maaaring hindi masiraan ng loob kung ang isa sa mga drive ay nabigo, ito ay hindi kasinghalaga ng sa isang RAID 5 array, dahil ang isang pagkabigo ay nakakaapekto lamang sa isa sa mga array, na iniiwan ang iba pang ganap na pagpapatakbo. Sa katunayan, ang RAID 50 ay maaaring makaligtas ng hanggang walong HDD/SSD/NVMe drive failures kung ang bawat nabigong "disk" ay nasa isang hiwalay na RAID 5 array.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Ang RAID 50 ay pinakamahusay na ginagamit para sa mga application na nangangailangan ng mataas na pagiging maaasahan at dapat magproseso ng mataas na bilang ng mga kahilingan habang pinapanatili ang mataas na rate ng paglilipat ng data at mas mababang gastos sa drive kaysa sa RAID 10. Gayunpaman, dahil ang minimum na anim na drive ay kinakailangan upang mag-set up ng isang RAID 50 array , hindi ganap na ibinubukod ang gastos bilang isang salik. Ang isang kawalan ng RAID 50 ay, tulad ng RAID 5, kailangan nito ng isang kumplikadong controller: tulad ng binanggit namin sa huling artikulo MegaRAID 9460-16i mula sa Broadcom.

Nararapat ding tandaan na ang RAID 50 ay may mas kaunting paggamit ng espasyo sa disk kaysa sa RAID 5 dahil sa paglalaan ng kapasidad na humawak ng mga talaan ng parity. Gayunpaman, mayroon pa rin itong mas magagamit na espasyo kaysa sa iba pang antas ng RAID, lalo na sa mga gumagamit ng pag-mirror. Sa isang minimum na kinakailangan ng anim na drive, ang RAID 50 ay maaaring maging isang magastos na opsyon, ngunit ang dagdag na espasyo sa disk ay nagbibigay-katwiran sa gastos sa pamamagitan ng pagprotekta sa corporate data. Inirerekomenda ang ganitong uri ng array para sa data na nangangailangan ng mataas na pagiging maaasahan ng storage, mataas na rate ng kahilingan, mataas na rate ng paglipat, at mataas na kapasidad ng storage.

RAID 6 at RAID 60: hindi rin namin sila nakakalimutan

Dahil napag-usapan natin ang tungkol sa mga arrays ng ikalima at ikalimampung antas, magiging kasalanan kung hindi banggitin ang mga uri ng array organization gaya ng RAID 6 at RAID 60.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Ang pagganap ng RAID 6 ay katulad ng RAID 5, ngunit dito hindi bababa sa dalawang drive ang binibigyan ng parity, na nagpapahintulot sa array na makaligtas sa pagkabigo ng dalawang drive nang hindi nawawala ang data (sa RAID 5, ang sitwasyong ito ay lubos na hindi kanais-nais). Nagreresulta ito sa mas mataas na pagiging maaasahan. Kung hindi, ang lahat ay pareho sa array ng ikalimang antas: sa kaganapan ng pagkabigo ng isa o dalawang disk, ang RAID controller ay gumagamit ng mga parity block upang muling likhain ang lahat ng nawawalang impormasyon. Kung ang dalawang drive ay nabigo, ang pagbawi ay hindi mangyayari nang sabay-sabay: una, ang unang drive ay reanimated, pagkatapos ay ang pangalawa. Kaya, ang dalawang operasyon sa pagbawi ng data ay isinasagawa.

Ibinabahagi namin ang aming karanasan, kung paano gumaganap ang mga SSD sa loob ng balangkas ng RAID at kung aling antas ng array ang mas kumikita

Madaling hulaan na kung ang RAID 50 ay isang level 60 array ng level 6 arrays, ang RAID 50 ay isang level 8 array ng level 16 arrays na kakausap lang natin. Iyon ay, ang organisasyong ito ng RAID storage ay nagbibigay-daan sa iyo na makaligtas sa pagkawala ng dalawang SSD sa bawat grupo ng RAID XNUMX drive. Ang prinsipyo ng operasyon ay katulad ng napag-usapan natin sa seksyong RAID XNUMX, ngunit ang bilang ng mga pagkabigo na isang antas XNUMX array ay maaaring makatiis lumalaki mula XNUMX hanggang XNUMX na drive. Karaniwan, ang mga naturang array ay ginagamit para sa online na serbisyo sa customer, na nangangailangan ng mataas na fault tolerance.

Summing up:

Bagama't ang pag-mirror ay nagbibigay ng mas maraming fault tolerance kaysa sa RAID 50/60, nangangailangan din ito ng mas maraming espasyo. Dahil nadoble ang dami ng data, 50% lang talaga ng kabuuang kapasidad ng mga drive na naka-install sa server para sa pag-record at pag-iimbak ng impormasyon. Ang pagpili sa pagitan ng RAID 50/60 at RAID 10 ay malamang na nakasalalay sa mga magagamit na badyet, kapasidad ng server, at iyong mga pangangailangan sa proteksyon ng data. Bukod dito, ang gastos ay nauuna kapag pinag-uusapan natin ang tungkol sa mga solusyon sa SSD (parehong corporate at consumer class).

Tulad ng mahalaga, alam na natin ngayon na sigurado na ang SSD-based na RAID ay isang ganap na ligtas na solusyon at isang normal na kasanayan para sa negosyo ngayon. Bilang bahagi ng paggamit sa bahay, mayroon ding dahilan upang lumipat sa NVMe, kung pinapayagan ng mga badyet. At kung mayroon ka pa ring tanong, bakit kailangan ang lahat ng ito, bumalik sa simula ng artikulo - nasagot na namin ito nang detalyado.

Ang artikulong ito ay inihanda sa suporta ng aming mga kasamahan sa Broadcom, na nagbibigay ng kanilang mga controller sa mga inhinyero ng Kingston para sa pagsubok gamit ang enterprise-class na SATA/SAS/NVMe drive. Salamat sa magiliw na symbiosis na ito, hindi kailangang pagdudahan ng mga customer ang pagiging maaasahan at katatagan ng mga drive ng Kingston na may mga HBA at RAID controllers mula sa produksyon. Broadcom.

Higit pang impormasyon tungkol sa mga produkto ng Kingston ay matatagpuan sa opisyal na website kumpanya.

Pinagmulan: www.habr.com

Magdagdag ng komento