Onk Kong ... ou ... Hong-Kong ?
C'est un kingFast
Oui c'est vrai que les prix sont intéressant, coté sécurité il n'y pas beaucoup de risque, le cache est checksumé en sortie, donc, qu'il soit fiable ou pas, peu importe.
Avant, tu peux essayer les choses suivantes pour te familiariser avec le système, je te donne les commandes en "ligne de commande", je ne sais pas si ça existe sur le webgui (étant donné que N4F et Linux/ZOL sont identique coté ZFS, je ne fais tout qu'en ligne de commande).
Info: les commandes ci-dessous sont valables pour la totalité du pool ou pour un dataset, c'est ce qui est génial d'ailleurs, on peut compresser un dataset précis et ne pas compresser le pool, de même on peut enlever une compression de type lz4 en plein fonctionnement, ça ne pose aucun soucis, ce sont juste des attributs lié à des blocs.
Place toi en root et si tu as un pool appelé mypool, tu tapes
zfs get all mypool
Là, tu verras des informations, celles qui nous intéresse sont primarycache et secondarycache
Le primarycache est le cache en RAM, si il est à none, ZFS utilisera très peu de RAM (pour le cache), si il est à metadata, il utilisera un peu plus de RAM et, si il est à all, il stockera tout "ce qui passe" dans les transactions ZFS.
Le secondarycache est le cache disque, si il est à none, ZFS utilisera très peu de mémoire disque, si il est à metadata, il en utilisera un peu et, si il est à all, il stockera tout ce qui passe. Si le cache disque est important et que le disque est petit, il risque de remplir le cache (et vidage des données les plus anciennes) et du coup risque de ne pas retrouver la donnée dans le cache ... là c'est un comble !
L'idéal est all partout, mais l'idéal est aussi d'avoir plein de mémoire* et ce n'est pas toujours le cas.
Pour changer la valeur du primarycache, il faut faire par exemple:
zfs get primarycache=none mypool
essaie de mettre les deux à none, ensuite regarde le fonctionnement de ton N4F avec zpool iostat, tu ne risque rien, tu auras juste un fonctionnement le moins performant mais le moins gourmand en mémoire*.
Ensuite, fais l'essai avec metadata, puis all, sur le primary, sur le secondary et sur les deux.
Un secondarycache=all est super intéressant sur des pools distant (iscsi).
Après à toi de voir ce qui te conviens le mieux, ça dépend de tes disques et de ta RAM.
Mais en gros:
peu de mémoire*=none et beaucoup=all
Pour le topics de Velivole18, oui, c'est vrai, en fait, le cache de ZFS est totalement remis à zéro à chaque démarrage, c'est voulu car on considère qu'un nas tourne 24h/24h, y'à eu des discussion sur une éventuelle "garde" du cache mais pour l'instant, c'est vidé.
Donc, un cache en all qui est arrêté tous les jours fera beaucoup d'écritures dans les cellules, alors qu'en metadata ou none, fera peu d'écritures et comme le trim est activé, l'usure des cellules sera moins importantes
*mémoire: RAM ou disque dur/SSD