Un contrôleur RAID avec un cache NV améliore-t-il les performances ou l'intégrité d'une baie SSD?

20

Je prévois d'acheter un serveur (Dell PowerEdge R740) avec des SSD en RAID 10, et mes priorités sont les performances d'écriture et l'intégrité des données. Il exécutera Linux. Les SSD ont des caches d'écriture avec protection contre les coupures de courant.

Il semble que ce soient mes options RAID:

  • PERC H330 (pas de cache), RAID logiciel (pass-through)
  • PERC H330 (pas de cache), RAID matériel (écriture directe)
  • PERC H730P (cache NV 2 Go), RAID matériel (écriture directe)
  • PERC H740P (cache NV 8 Go), RAID matériel (écriture directe)

Mes questions:

  • Certaines de ces configurations risquent-elles de perdre des données ou d'être corrompues en cas de panne de courant?
  • Quelle configuration dois-je m'attendre à avoir les meilleures performances d'écriture?
  • Y a-t-il d'autres avantages à un cache NV que je n'ai pas pris en compte?

Questions connexes:

M. Dudley
la source
1
Contre-intuitivement, les configurations de contrôleur RAID matériel soutenues par des disques SSD peuvent fonctionner avec un débit inférieur au débit maximal attendu lorsque la mise en cache en écriture différée est activée. Mais je vois que vous n'envisagez déjà que l'écriture, vous semblez donc en être conscient.
le-wabbit

Réponses:

16

S'il est utilisé avec des disques SSD sans cache d'écriture protégé contre la perte de puissance, le NVCACHE du contrôleur RAID est extrêmement important pour obtenir de bonnes performances.

Cependant, comme vous utilisez des SSD avec des caches d'écriture protégés contre la perte de puissance, les performances ne devraient pas varier beaucoup entre les différentes options. D'un autre côté, il y a d'autres facteurs à considérer:

  • avec le RAID matériel, il est souvent plus simple d'identifier et de remplacer un disque défectueux: le contrôleur marque clairement le lecteur affecté (par exemple: avec un voyant orange) et le remplacer est généralement aussi simple que de retirer l'ancien lecteur / insérer le nouveau. Avec une solution RAID logicielle, vous devez entrer les commandes appropriées pour identifier et remplacer le disque défectueux;
  • le RAID matériel présente au BIOS un volume unique pour le démarrage, tandis que le RAID logiciel affiche les différents composants;
  • avec le bon contrôleur (par exemple: H730 ou H740) et les disques (SAS 4Kn), vous pouvez très facilement activer le champ étendu d'intégrité des données (T10 / T13);
  • le RAID matériel exécute un blob binaire opaque sur lequel vous n'avez aucun contrôle;
  • Le RAID logiciel Linux est beaucoup plus flexible que tout RAID matériel que j'ai jamais utilisé.

Cela dit, sur une telle configuration, je vous conseille vivement d'envisager d'utiliser ZFS sur Linux: les caches d'écriture protégés contre les pertes de puissance signifient que vous pouvez continuer sans périphérique ZIL dédié, et les fonctionnalités ajoutées ZFS (compression, somme de contrôle, etc.) peuvent être très utiles .

Pour répondre directement à vos questions:

  1. Certaines de ces configurations risquent-elles de perdre des données ou d'être corrompues en cas de panne de courant? Non: comme tous les caches sont protégés, vous ne devez corrompre aucune donnée sur les pertes de puissance.
  2. Quelle configuration dois-je m'attendre à avoir les meilleures performances d'écriture? Le H740P configuré en mode cache de réécriture devrait vous donner les performances d'écriture maximales absolues. Cependant, dans certaines circonstances, en fonction de votre charge de travail spécifique, l'écriture directe peut être plus rapide. Les contrôleurs DELL (et LSI) ont même des fonctionnalités SSD spécifiques (par exemple: CTIO et FastPath) qui s'appuient sur l'écriture et peuvent augmenter vos performances d'écriture aléatoire.
  3. Y a-t-il d'autres avantages à un cache NV que je n'ai pas pris en compte? Oui: un contrôleur avec une NVCACHE appropriée ne laissera jamais les deux branches RAID1 / 10 avoir des données différentes. Dans certaines circonstances, le RAID logiciel Linux est sujet à des incompatibilités RAID1 (inoffensives) . ZFS ne souffre pas de ce problème.
shodanshok
la source
2
ZFS est vraiment plus qu'un RAID: il a des bandes de parité variable, donc il n'y a pas d'écriture prête à modifier ou de "trou d'écriture". Au lieu d'un cache de page, il a également avancé ARC. Il manque une chose: la RAM NV ... qui peut être résolue avec l'intégration NV DIMM :)
BaronSamedi1958
13

Q1: l'une de ces configurations risque-t-elle de perdre ou d'altérer les données en cas de panne de courant?

A1: Vous ne devriez avoir aucun problème, sauf si vous configurez le cache en mode réécriture et sans RAM NV.

Q2: Quelle configuration dois-je m'attendre à avoir les meilleures performances d'écriture?

A2: Celui qui a le plus de cache évidemment! ... et pas de parité RAID, mais RAID10 bien sûr.

Q3: Y a-t-il d'autres avantages à un cache NV que je n'ai pas pris en compte?

A3: Écriture coalescente, usurpation d'identité, etc. Mais elles sont vraiment mineures.

BaronSamedi1958
la source
Je ne savais pas si le cache aiderait, car j'ai lu que la réorganisation de l'écriture n'avait pas beaucoup d'impact sur les SSD et parce que les SSD avaient leurs propres caches d'écriture.
M. Dudley
@ M.Dudley oui, ils ont des caches, mais vous ne pouvez pas avoir trop de cache . Le cache est bon, plus il y a de cache, mieux c'est.
ThoriumBR
7
@M. Dudley: le contrôleur RAID possède des gigaoctets de cache derrière un bus PCIe x4-x8 voies à latence relativement rapide et faible, tandis que les caches SSD sont en mégaoctets et sont derrière des liaisons SATA / SAS 6-12 Gbps.
BaronSamedi1958
@ BaronSamedi1958, cela n'a pas autant d'importance qu'il n'y paraît. Les "gigaoctets de cache" sont répartis sur l'ensemble du volume logique que vous avez défini, donc décomposé en un seul disque, il peut se limiter à quelques mégaoctets par disque. En outre, même le Samsung 850 Pro daté était livré avec 1 Go de cache DRAM, soit environ la moitié de la totalité du cache du H730P. Dernier point mais non le moindre: l'interface SAS3 délivre 12 Go / s sur une seule liaison, surpassant les voies PCIe 3 x8 sur lesquelles les contrôleurs RAID sont généralement branchés.
le-wabbit
2
@ the-wabbit alors que je suis généralement d'accord avec vous, votre calcul de bande passante est erroné: SAS3 a 12 Gb / s ou 1,5 Go / s maximum par direction. Un PCI-E 8x possède une bande passante maximale de 128 Gb / s ou 16 Go / s par direction. De plus, le contrôleur SAS lui-même est généralement suspendu à une liaison PCI-E en amont, tout comme le contrôleur RAID.
shodanshok
0

Vous voudrez peut-être utiliser Bonnie ++ pour effectuer des tests sur les cartes de raid serveur / Perc vs SSD. les vitesses du disque dur 5k / 10 / 16k rpm ou les disques hybrides varieront les statistiques et l'utilisation du cache.

un autre défenseur de ZFS .. J'ai commencé à utiliser les serveurs de SGI au milieu des années 90 et ZFS a éliminé tout ce qui concernait UFS / ext2 / 3 ... à l'épreuve des bombes.

Munkeh72
la source
0

En plus des bonnes réponses ci-dessus: un élément souvent oublié mais requis pour l'intégrité étendue de tout RAID est le nettoyage des données aka patrouille multimédia ou patrouille de lecture . Cela garantit que toutes les données sur tous les disques sont lisibles sur une période prolongée.

Sans nettoyage, il est possible - et après une longue période de temps et un grand nombre de secteurs, même probable - que les secteurs de données qui n'ont pas été utilisés depuis très longtemps ne soient plus lisibles. En mode de fonctionnement normal, ce n'est pas un problème car le mauvais secteur peut être reconstruit à l'aide de données de redondance. Cependant, si un disque tombe en panne, vous avez déjà perdu la redondance (à l'exception des niveaux RAID 6 ou RAID imbriqués) et lorsqu'un mauvais secteur fait surface pendant la reconstruction, vous êtes mort dans l'eau.

Donc, activez toujours le nettoyage des données, sauf si vous aimez les mauvaises surprises.

Zac67
la source