PowerScale | Comprendre les stratégies de cache N3 et de métadonnées
Summary: PowerScale offre une flexibilité dans l’utilisation des disques SSD (Solid State Drive) au sein d’un pool de nœuds pour améliorer les performances. Les deux stratégies principales sont le cache N3 et l’accélération des métadonnées. Le cache N3 est conçu pour mettre en cache les métadonnées et les données fréquemment consultées afin d’améliorer les performances de lecture. L’accélération des métadonnées dédie les disques SSD au stockage et à l’accélération des opérations de métadonnées, ce qui peut être bénéfique pour les charges applicatives gourmandes en métadonnées. ...
Instructions
Comprendre le cache N3 :
Mémoire cache L3 : Le cache N3 est un niveau de cache secondaire qui réside sur les disques SSD, en complément du cache de mémoire primaire (L1 et L2). Il fonctionne comme un cache d’éviction, stockant les données et métadonnées fréquemment consultées afin d’améliorer la latence de lecture. Le cache N3 est particulièrement avantageux pour les workflows impliquant un accès aléatoire aux fichiers. Il peut fonctionner en mode de métadonnées uniquement pour les nœuds de stockage de série d’archivage. L’activation du cache N3 sur un pool de nœuds avec des données existantes sur des disques SSD nécessite que les disques évacuent ces données vers des disques durs avant que les disques SSD puissent être utilisés pour la mise en cache. La désactivation du cache N3 est généralement une opération plus rapide.
Workflows qui bénéficient du cache N3 :
-
- Le cache N3 est avantageux pour les workflows présentant les caractéristiques suivantes :
- Accès aléatoire aux fichiers : Les charges applicatives qui impliquent des lectures fréquentes de différentes parties non séquentielles de fichiers peuvent constater des réductions de latence significatives avec le cache N3.
- Excellent ratio lecture/écriture : Étant donné que le cache N3 accélère principalement les lectures, c’est le workflow avec un composant de lecture dominant qui en bénéficie le plus.
- Mise en cache des données « chaudes » fréquemment consultées : Le cache N3 identifie et stocke automatiquement les données fréquemment consultées, ce qui améliore les performances en cas d’accès répété.
- Streaming et accès simultané aux fichiers (dans une certaine mesure) : Bien que l’accès aléatoire soit le plus avantageux, les workflows avec accès en continu et simultané peuvent également bénéficier d’améliorations de performances avec le cache N3.
Quand choisir le cache N3 :
-
- Lorsque le principal goulot d’étranglement des performances est la latence de lecture aléatoire pour les données et les métadonnées.
- Pour étendre la capacité de mémoire effective des nœuds sans engendrer le coût d’une RAM supplémentaire.
- Pour les charges applicatives qui présentent une quantité importante de relecture des données et métadonnées qui ont été récemment exclues de L2.
- Pour les nœuds de classe archive, où les performances de métadonnées pour le parcours du système de fichiers sont essentielles.
- Lorsqu’une amélioration plus simple des performances de lecture « configuration et oubli » est souhaitée sans surcharge de configuration importante.
Quand choisir l’accélération des métadonnées : - Lorsque les opérations de métadonnées (recherches, accès, modifications) constituent le principal goulot d’étranglement des performances.
- Pour les charges applicatives avec un volume élevé de lectures de métadonnées (accélération de la lecture des métadonnées) ou les lectures et écritures (accélération des lectures/écritures des métadonnées).
- Dans des scénarios tels que l’interprétation sismique, où l’accès rapide aux métadonnées est primordial, même si les données sous-jacentes résident sur un stockage plus lent.
- Lorsqu’un contrôle granulaire sur l’emplacement des métadonnées est requis.
- Il est nécessaire d’étendre les avantages de lecture des métadonnées aux nœuds sans disques SSD locaux (à l’aide de la GNA avec accélération de la lecture des métadonnées sur d’autres nœuds).
- Les charges applicatives telles que les répertoires de base, les workflows avec une forte énumération de fichiers et les activités nécessitant de nombreuses comparaisons présentent souvent une activité de lecture élevée des métadonnées. Dans de tels cas, l’accélération de l’accès direct aux métadonnées peut entraîner une amélioration significative des performances
Comprendre les stratégies de métadonnées :
Stratégie en matière de métadonnées : Au lieu de mettre les données en cache, les disques SSD peuvent être configurés pour stocker et accélérer principalement les opérations de métadonnées. Cette stratégie peut s’avérer avantageuse pour les charges applicatives avec un volume élevé d’accès aux métadonnées, telles que de nombreux petits fichiers, des recherches fréquentes dans les répertoires et des tâches de moteur de tâches gourmandes en métadonnées. OneFS prend en charge différentes stratégies de disque SSD de métadonnées, notamment la lecture et l’écriture des métadonnées.
Metadata-Read : Les disques SSD sont principalement utilisés pour accélérer les opérations de lecture des métadonnées.
Écriture des métadonnées : Les disques SSD sont utilisés pour accélérer les opérations d’écriture des métadonnées.
- Avantages d’une stratégie de métadonnées par rapport au cache N3 :
- L’accélération des métadonnées offre un contrôle plus ciblé et granulaire sur la façon dont les disques SSD sont utilisés afin d’améliorer les performances de métadonnées pour des jeux de données et des workflows spécifiques. Le cache N3, quant à lui, est une couche de mise en cache plus générale qui profite à un plus large éventail de charges applicatives, en particulier celles avec un accès en lecture aléatoire répété aux données et aux métadonnées. Bien que le cache N3 excelle dans l’amélioration des performances de lecture des données fréquemment consultées, une stratégie de métadonnées dédiée peut offrir des avantages spécifiques :
- Amélioration des performances des métadonnées : Pour les charges applicatives où les opérations de métadonnées constituent le goulot d’étranglement (par exemple, ouverture, fermeture, changement de nom, liste d’un grand nombre de fichiers), dédier des disques SSD aux métadonnées peut réduire considérablement la latence et améliorer le débit global.
- Amélioration des performances du moteur de tâches : Certaines tâches du moteur de tâches OneFS sont gourmandes en métadonnées. L’accélération de l’accès aux métadonnées peut accélérer l’exécution de ces tâches.
- Performances prévisibles pour les charges applicatives gourmandes en métadonnées : Dans les environnements présentant un modèle cohérent d’activité élevée des métadonnées, une stratégie de métadonnées dédiées peut fournir des améliorations de performances plus prévisibles et plus durables par rapport à un cache basé sur l’éviction.
- Certaines applications et certains workflows génèrent un nombre disproportionné d’opérations de métadonnées par rapport aux lectures et écritures de données réelles. Il s’agit, par exemple, de l’archivage de fichiers, de la gestion des ressources multimédias, de l’automatisation de la conception électronique (EDA), des environnements de développement logiciel avec des compilations fréquentes et des pipelines génomiques qui impliquent de nombreux accès et analyses de petits fichiers. Dans ce cas, la latence associée à l’accès et à la manipulation des métadonnées peut devenir un goulot d’étranglement important pour les performances
- Les opérations qui impliquent de naviguer dans des structures de répertoire complexes ou de répertorier le contenu de nombreux répertoires dépendent fortement des performances des métadonnées. L’accélération des métadonnées garantit que le système peut accéder rapidement aux informations sur les inodes et aux entrées de répertoire, ce qui accélère considérablement ces opérations par rapport à un cache N3 qui aurait pu évincer ces informations en raison de contraintes de capacité ou d’un accès moins fréquent
- Sauvegarde, réplication et migration : Ces tâches de gestion des données impliquent souvent une analyse et un traitement approfondis des métadonnées. L’accès plus rapide aux métadonnées via l’accélération peut réduire considérablement le temps nécessaire à l’exécution de ces tâches, ce qui minimise les interruptions des charges applicatives principales et améliore l’efficacité opérationnelle.
- Recherche et indexation : Lorsque les utilisateurs ou les processus automatisés doivent rechercher des fichiers spécifiques en fonction de leurs attributs de métadonnées (par exemple, nom, taille, date de modification), l’accès accéléré aux métadonnées permet d’accélérer l’exécution des requêtes. Cela est pertinent pour des solutions telles que MetadataIQ, qui indexe les métadonnées du système de fichiers pour une interrogation et une découverte de données efficaces sur plusieurs clusters
- Quand choisir les métadonnées :
- Navigation intensive dans les répertoires, recherches de fichiers ou de données, indexation.
- Opérations de fichier telles que l’ouverture, la fermeture, la suppression, la création de répertoires (mkdir).
- Opérations de recherche, getattr et d’accès.
- Répertoires personnels, en particulier ceux qui contiennent de nombreux objets.
- Workflows impliquant des énumérations ou des comparaisons intensives.
- Interprétation des données sismiques, où l’actualité des métadonnées est essentielle.
- L’accélération des métadonnées peut apporter des améliorations significatives des performances pour ces types d’activités, en augmentant le débit et en diminuant la latence
Résumé : Quand choisir
-
- Choisissez une stratégie d’accélération des métadonnées (lecture de métadonnées ou lecture/écriture de métadonnées) si votre charge applicative est fortement axée sur les opérations d’accès ou de modification des métadonnées de fichier (navigation, recherche, indexation, création, suppression, modification d’attributs).
- Choisissez l’accélération de la lecture des métadonnées si votre charge applicative est principalement gourmande en lecture de métadonnées et que vous souhaitez utiliser moins de capacité SSD.
- Choisissez l’accélération des lectures/écritures de métadonnées si votre charge applicative implique une quantité importante d’écritures de métadonnées, nécessite des suppressions de snapshots plus rapides ou si une charge applicative HPC de petits fichiers comme EDA bénéficie de petits fichiers intégrés sur Flash. Assurez-vous que vous disposez d’une capacité SSD suffisante.
- Envisagez la GNA si vous disposez d’un cluster mixte (nœuds avec et sans disques SSD) et que vous devez accélérer les lectures de métadonnées pour les données résidant sur des nœuds non SSD sur l’ensemble du cluster. Cela est pertinent pour les charges applicatives gourmandes en métadonnées qui sont réparties.
- Global namespace Acceleration (GNA) : La GNA est un mécanisme plus ancien (destiné à être remplacé par le cache N3 lorsque tous les nœuds disposent de disques SSD) qui permet aux pools de nœuds sans disques SSD de tirer parti des disques SSD ailleurs dans le cluster en stockant des miroirs de métadonnées supplémentaires sur ces disques SSD. Cela accélère les opérations de lecture des métadonnées pour les données stockées sur des pools de disques durs uniquement. Le cache N3 et la GNA peuvent coexister dans le même cluster, mais fonctionnent généralement sur des pools de nœuds différents.
- Envisagez le cache N3 si votre charge applicative implique des lectures aléatoires importantes, bénéficie d’une mise en cache étendue pour un ensemble de travail important ou a besoin d’améliorer les performances du moteur de tâches, à condition que vos nœuds disposent de disques SSD.
Outils et commandes :
- Surveillance des performances : Utilisez des outils tels que InsightIQ, CloudIQ et MetadataIQ pour surveiller l’intégrité du cluster, les mesures de performances et les prévisions d’utilisation. InsightIQ permet de suivre les tendances de performances, d’identifier des schémas et d’effectuer une analytique de fichiers. Elle peut également vous aider à estimer le moment où un cluster atteint sa capacité maximale. CloudIQ fournit des informations sur les performances du cluster. MetadataIQ facilite l’indexation et l’interrogation des données sur l’ensemble des clusters et peut être utilisé pour la gestion du cycle de vie des données et la compréhension de la distribution des données.
- L’utilitaire isi_cache_stats peut vous aider à déterminer la taille du jeu de données de travail, ce qui est pertinent pour le dimensionnement des disques SSD pour le cache L2 et L3. En règle générale, la capacité N2 + la capacité N3 doit être >= 150 % de la taille de l’ensemble de travail.
- MetadataIQ (OneFS 9.10+) : Déployez et configurez MetadataIQ pour indexer et créer un catalogue global des métadonnées sur l’ensemble des clusters. Utilisez le tableau de bord Kibana pour visualiser la distribution des données, le nombre de fichiers et les attributs de métadonnées. Cela vous aide à comprendre la composition de vos données et la croissance des métadonnées. Les synchronisations régulières maintiennent la base de métadonnées à jour
- InsightIQ fournit des rapports sur la capacité du cluster, y compris la capacité totale, provisionnée et utilisée, ce qui vous permet de prévoir les besoins en stockage en fonction de tendances historiques. Il peut surveiller les performances des charges applicatives, la latence, les E/S par seconde et le débit, ce qui vous permet de détecter les goulots d’étranglement potentiels à mesure que les données augmentent. Les rapports d’analytique du système de fichiers InsightIQ peuvent afficher la distribution de la taille et du nombre de fichiers, ce qui vous donne un aperçu de l’échelle et de la composition de vos données, qui sont directement liées à la croissance du nombre de LIN.