Deux modes d'écriture du cache de la carte RAID
Sep 02, 2024
Pour les E/S d'écriture de couche supérieure, il existe deux modes pour les contrôleurs RAID :(1) Mode écriture différée : Lorsque les données arrivent de la couche supérieure, le contrôleur RAID les enregistre dans le cache et informe immédiatement que l'E/S hôte est terminée. Cela permet à l'hôte de passer à l'IO suivante sans attendre, tandis que les données restent dans le cache de la carte RAID sans être écrites sur le disque. Le contrôleur RAID optimise les écritures sur le disque soit en écrivant sur le disque individuellement, par lots, soit en mettant les E/S en file d'attente à l'aide de techniques de mise en file d'attente. Cependant, cette approche présente un inconvénient majeur : en cas de panne de courant, les données du cache de la carte RAID sont perdues tandis que l'hôte suppose que les E/S sont terminées, ce qui entraîne des incohérences importantes entre les couches supérieure et inférieure. Ainsi, certaines applications critiques, comme les bases de données, mettent en œuvre leurs propres mesures de détection de cohérence. Pour cette raison, les cartes RAID haut de gamme nécessitent des piles pour protéger le cache. En cas de panne de courant, la batterie continue d'alimenter le cache, garantissant ainsi l'intégrité des données. Lors du rétablissement de l'alimentation, la carte RAID donne la priorité à l'écriture sur le disque des E/S incomplètes stockées dans le cache. (2) Mode écriture: Dans ce mode, les E/S de la couche supérieure ne sont considérées comme terminées qu'une fois que le contrôleur RAID a écrit les données sur le disque. Cette approche garantit une grande fiabilité. Bien que l'avantage en termes de performances du cache soit perdu dans ce mode, sa fonction de mise en mémoire tampon reste efficace. En plus d’être un cache en écriture, le cache en lecture est également très important. L’algorithme de cache est un sujet très complexe, avec un ensemble de mécanismes complexes. L'un des algorithmes s'appelle PreFetch, ce qui signifie que les données sur le disque qui sont « susceptibles » d'être consultées par l'hôte la prochaine fois sont « lues dans le cache » avant que l'hôte n'émette une requête de lecture I0. Comment est calculé ce « probable » ? En fait, on suppose que l'hôte a une forte probabilité de lire les données dans la position adjacente du disque où se trouvent les données lues cette fois dans la prochaine IO. Cette hypothèse est très applicable à la lecture séquentielle continue des E/S, telle que la lecture de données stockées logiquement continues. De telles applications, telles que les services de transfert de fichiers volumineux FTP et les services de vidéo à la demande, sont toutes des applications permettant de lire des fichiers volumineux. Si de nombreux petits fichiers fragmentés sont également stockés en permanence dans des emplacements adjacents sur le disque, la mise en cache améliorera considérablement les performances, car les IOPS requises pour lire les petits fichiers sont très élevées. S'il n'y a pas de cache, cela dépend entièrement de la recherche de la tête pour terminer chaque IO, ce qui prend beaucoup de temps. STOR Technology Limited vous offre des produits de haute qualité 9560-16I, 9560-8I, 9361-4I, 9540-8I, etc. Nous vous fournissons des services de meilleure qualité et un service après-vente assuré. Bienvenue à nous rendre visite et à discuter des produits connexes avec nous.Notre site Internet : https://www.cloudstorserver.com/Contactez-nous: alice@storservers.com / +86-755-83677183WhatsApp : +8613824334699