Tous les produits
Search
Centre de documentation

Object Storage Service:Cache de données

Dernière mise à jour :Sep 22, 2026

Le cache de données ossfs convient aux scénarios de lecture fréquente d'un faible volume de données. Une fois activé, il réduit efficacement la latence en lecture et améliore l'efficacité des opérations sur les objets. Cette rubrique explique comment configurer et utiliser correctement le cache de données ossfs.

Important

Lorsque vous utilisez des données mises en cache, veillez à leur cohérence et à leur actualité. Nous vous déconseillons donc d'activer le cache de données ossfs dans les scénarios exigeant une haute réactivité des données.

Contexte

Lorsqu'ossfs accède aux objets, il crée par défaut un fichier temporaire nommé tmpfile dans le répertoire /tmp pour servir de cache disque. Ce fichier est invisible pour l'utilisateur. Le système supprime automatiquement ce fichier temporaire dès que tous les descripteurs de fichiers ouverts sont fermés. Toutefois, dans les scénarios où les mêmes objets sont fréquemment consultés, ce mécanisme impose de télécharger les objets depuis OSS à chaque ouverture, lecture et fermeture, ce qui consomme une grande partie du débit OSS.

L'activation du cache de données ossfs réduit efficacement la pression exercée sur le stockage distant par la lecture fréquente des données chaudes, diminue la latence en lecture et limite le nombre d'accès au stockage distant.

Scénarios

Le cache de données ossfs est adapté aux scénarios impliquant la lecture fréquente d'un volume restreint de données. Assurez-vous que la capacité du disque local est suffisante pour stocker les données chaudes.

Comparaison des modes

Le tableau suivant présente les différences entre le mode par défaut d'ossfs (sans cache de données) et le mode avec cache de données ossfs. Dans le mode par défaut, nous vous recommandons d'utiliser l'option tmpdir pour déplacer le fichier temporaire du répertoire /tmp vers le répertoire du disque de données afin d'éviter de saturer le disque système.

Mode

Opération de lecture

Opération d'écriture

Performances

Mode par défaut d'ossfs (sans cache de données)

À chaque lecture, les données sont téléchargées depuis le bucket vers un fichier temporaire, puis lues à partir de ce fichier. Le fichier temporaire est supprimé lorsque tous les descripteurs de fichiers sont fermés.

Un fichier temporaire est généré et n'est supprimé qu'une fois tous les descripteurs de fichiers fermés. L'écriture d'un grand nombre de fichiers dans le fichier temporaire consomme une importante capacité disque.

Si la capacité du disque local est insuffisante, le système télécharge préalablement les parties du fichier temporaire et supprime le cache. Dans ce cas, la vitesse d'écriture est limitée par la vitesse de téléchargement vers OSS.

Les performances de ce mode varient selon les performances du disque et la latence d'OSS.

Cache de données ossfs

Lors de la première lecture des objets depuis le bucket, un fichier est créé dans le chemin de cache et les objets y sont stockés. Vous pouvez ensuite lire les objets à plusieurs reprises directement depuis ce fichier.

Les données sont d'abord écrites dans le cache local. Lorsqu'un fichier est actualisé ou fermé, il est téléchargé vers le bucket. Si la capacité du cache local est insuffisante, ossfs télécharge préalablement les parties du fichier et supprime le cache. Dans ce cas, la vitesse d'écriture est limitée par la vitesse de téléchargement vers OSS.

Si un cache local existe, les performances de ce mode dépendent des performances du disque. En l'absence de cache local, les performances sont identiques à celles du mode par défaut, variant selon les performances du disque et la latence d'OSS.

Options de configuration

Le tableau ci-dessous décrit les paramètres configurables pour le cache de données ossfs.

Paramètre

Description

Valeur par défaut

use_cache

Active le cache de données ossfs et spécifie le chemin du cache. Par défaut, le cache de données ossfs est désactivé.

Par exemple, si vous spécifiez -ouse_cache=path, le cache de données ossfs est activé et son chemin est défini sur path. Vous pouvez adapter le chemin selon vos besoins métier. Exemple : /tmp/your_foldername.

Aucune

ensure_diskfree

Taille de la capacité disque réservée pour éviter la saturation complète du disque, ce qui pourrait affecter l'écriture des données par d'autres applications. Par défaut, aucune capacité disque n'est réservée. Unité : Mo.

Par exemple, pour réserver 1 024 Mo de capacité disque pour ossfs, spécifiez -oensure_diskfree=1024.

Aucune

del_cache

Indique s'il faut supprimer le cache local. Par défaut, le cache local n'est pas supprimé.

Par exemple, si vous spécifiez -odel_cache, ossfs supprime les fichiers mis en cache dans le répertoire indiqué par l'option use_cache.

Aucune

max_dirty_data

Définit le seuil de taille pour le téléchargement d'un fichier. Si la taille du fichier dépasse cette valeur, le fichier est téléchargé même s'il n'est pas fermé. Unité : Mo.

Par exemple, pour télécharger un fichier de plus de 2 000 Mo même s'il n'est pas fermé, spécifiez -omax_dirty_data=2000.

5120

Mécanisme de gestion du cache de données

  • En mode cache de données ossfs, le fichier mis en cache sur le disque n'est pas supprimé lors de la fermeture du fichier. Ainsi, le fichier en cache peut être réutilisé directement lors d'une lecture ultérieure.

  • Si la capacité du cache est insuffisante, les données mises en cache sont supprimées.

    Lors des opérations de lecture et d'écriture, le système vérifie l'utilisation de la capacité disque. En cas d'insuffisance, une opération de récupération d'espace est déclenchée. Cette opération s'effectue fichier par fichier, chaque fichier mis en cache constituant l'unité minimale.

Recommandations

  • Si vous accédez fréquemment à des objets chauds, activez le cache de données ossfs et configurez son chemin. Les objets seront ainsi directement récupérés depuis le cache local lors des lectures répétées, réduisant la latence d'accès, accélérant le chargement des objets fréquemment consultés et diminuant le nombre de requêtes adressées à OSS.

  • Si le disque contenant votre cache est partagé avec d'autres applications, spécifiez l'option ensure_diskfree lors de son utilisation. Cela permet de réserver une certaine capacité disque pour garantir le bon fonctionnement du système.

  • Nous vous déconseillons d'activer le cache de données ossfs dans les scénarios où plusieurs clients écrivent ou lisent des données via ossfs, ou lorsqu'un client écrit tandis que plusieurs autres lisent, si la cohérence des données entre les différents clients est requise.

  • Si le cache de données ossfs est activé, la présence du cache est obligatoire dans les scénarios d'écriture par un client. Pour éviter de gaspiller de la capacité disque, nous vous recommandons d'utiliser ossutil.

  • Dans les scénarios impliquant la lecture simultanée de grands objets, les performances du cache sont limitées. Nous vous recommandons donc d'activer le mode de lecture directe afin de réduire l'utilisation de la capacité disque.

  • Les performances du cache de données ossfs dépendent des performances du disque sur lequel les données sont stockées. Privilégiez des disques hautes performances, tels que les disques ESSD AutoPL avec activation du burst de performances, les disques éphémères flexibles ou les disques locaux. Pour plus d'informations, consultez la documentation relative aux disques ESSD AutoPL.