Tous les produits
Search
Centre de documentation

:Utiliser la fonctionnalité d'accélération des E/S des disques ESSD généraux

Dernière mise à jour :Aug 08, 2026

Pour améliorer l'efficacité des opérations d'E/S sur disque et la vitesse de réponse du système, activez la fonctionnalité d'accélération des E/S des disques Enterprise SSD (ESSD) généraux pour une instance ApsaraDB RDS for MySQL. Cette fonctionnalité augmente la taille du pool de tampons (buffer pool), met en œuvre une accélération par cache et améliore les performances globales en lecture et en écriture de l'instance RDS. Cette rubrique explique le fonctionnement de la fonctionnalité d'accélération des E/S et son utilisation. Elle présente également les détails des tests de performance associés.

Informations générales

La lecture des données depuis un disque vers la mémoire et l'écriture des données depuis la mémoire vers un disque constituent des opérations d'E/S courantes dans les systèmes de base de données. Les opérations d'E/S sur disque sont plus lentes que les opérations en mémoire et nécessitent plus de temps. Si votre système de base de données subit de lourdes charges de travail en lecture et en écriture ou doit traiter des requêtes fréquentes, les E/S sur disque peuvent devenir un goulot d'étranglement au niveau des performances.

ApsaraDB RDS lance les disques ESSD généraux, un nouveau type de stockage. Les disques ESSD généraux sont compatibles avec toutes les fonctionnalités des disques ESSD, utilisent une architecture de stockage à trois niveaux pour gérer, lire et écrire hiérarchiquement différents types de données et de caches, et prennent en charge les fonctionnalités de rafale d'E/S (I/O burst) et d'accélération des E/S afin d'améliorer les performances d'E/S des instances ApsaraDB RDS.

Accélération des E/S

Présentation

Un pool de tampons (buffer pool) est une zone de mémoire utilisée pour mettre en cache les données du disque. Lorsqu'un bloc de données doit être lu depuis un disque ou écrit sur un disque, le système recherche ce bloc dans le pool de tampons.

  • Si le bloc de données se trouve dans le pool de tampons, le système lit et écrit les données directement depuis et vers le pool de tampons.

  • Si le bloc de données ne se trouve pas dans le pool de tampons, le système lit les données depuis le disque ou les écrit sur le disque, puis stocke les données dans le pool de tampons.

Le pool de tampons réduit efficacement le nombre d'opérations d'E/S sur disque et améliore les performances d'E/S de votre instance RDS. La taille du pool de tampons varie en fonction de la quantité de mémoire disponible. Si les ressources mémoire sont insuffisantes, la taille du pool de tampons est limitée, ce qui affecte les performances d'E/S.

La fonctionnalité d'accélération des E/S d'ApsaraDB RDS for MySQL fournit l'extension du pool de tampons (Buffer Pool Extension, BPE) pour augmenter la taille du pool de tampons. Cette fonctionnalité améliore également les performances globales en lecture et en écriture d'une instance RDS en s'appuyant sur les capacités du noyau du moteur de base de données requis, permettant ainsi à l'instance RDS de traiter davantage de requêtes en lecture et en écriture sur une période donnée. Cela améliore l'efficacité des E/S sur disque et la vitesse de réponse du système, tout en mettant en œuvre une accélération par cache.

Avantages

Une fois que l'extension du pool de tampons (BPE) est prise en charge pour la fonctionnalité d'accélération des E/S, une architecture de stockage à trois niveaux est proposée pour ApsaraDB RDS for MySQL. Cela permet de répondre aux besoins de stockage dans différents scénarios, d'exploiter pleinement les divers supports de stockage de la base Alibaba Cloud et d'améliorer les performances d'E/S de votre instance RDS.

  • Amélioration des performances en lecture et en écriture et réduction de la durée d'exécution des requêtes SQL

    • La BPE améliore considérablement la vitesse d'accès aux pages de données et réduit la durée d'exécution des requêtes SQL grâce à la mise en cache des données.

    • La BPE réduit significativement la fréquence d'accès aux fichiers de données sur les disques ESSD généraux d'une instance RDS et diminue la bande passante consommée par ces disques.

  • Amélioration de la stabilité de l'instance

    Le disque pour lequel la BPE est activée présente une latence inférieure à celle des disques ESSD généraux. La BPE réduit considérablement l'impact des variations d'E/S (jitters) des disques ESSD généraux sur une instance RDS et améliore la stabilité de cette dernière.

Remarque

Dans le Centre d'expérience des solutions de système de fondation commerciale d'Alibaba Cloud, vous pouvez consulter les résultats des tests de charge en temps réel avant et après l'activation de la fonctionnalité d'accélération des E/S, basés sur des instances RDS réelles. Cette fonctionnalité est fournie gratuitement. Pour plus d'informations, consultez Observer les performances de la fonctionnalité d'accélération des E/S des disques ESSD généraux.

Valeurs

Si vous activez la fonctionnalité d'accélération des E/S pour une instance RDS, aucun frais supplémentaire ne vous sera facturé et vous n'aurez pas besoin de modifier le code de vos applications.

Les performances d'E/S de votre instance RDS sont considérablement améliorées sans modification des coûts ni du code applicatif. Par exemple, si une instance RDS exécute RDS High-availability Edition et utilise un type d'instance à usage général offrant 8 cœurs et 16 Go de mémoire, et que vous activez la fonctionnalité d'accélération des E/S pour cette instance, le nombre de requêtes par seconde (QPS) pour les opérations de lecture et d'écriture augmente. Pour plus d'informations, consultez Test de performance.

Fonctionnement de la fonctionnalité d'accélération des E/S

La fonctionnalité d'accélération des E/S des disques ESSD généraux utilise la BPE pour améliorer les performances des disques ESSD sans augmenter les coûts. Elle hérite de la capacité de séparation du stockage des données chaudes et froides, et augmente la taille du pool de tampons InnoDB pour mettre en cache les pages de données et les données tièdes dans la BPE. Ainsi, InnoDB peut utiliser de manière flexible plusieurs supports de stockage pour augmenter le QPS.

Architecture

La figure suivante illustre l'architecture de déploiement de la BPE.

c2a2493768b021f69aa2ff9d5011102b

La BPE utilise divers disques haute vitesse comme supports de cache entre la mémoire et les disques ESSD généraux. Comparés aux disques ESSD généraux, les disques haute vitesse offrent une latence d'E/S plus faible et de meilleures performances.

Remarque
  • Les disques haute vitesse servent uniquement de supports de cache.

  • Les fichiers de données, les fichiers journaux binaires (binary log) et les fichiers redo sont stockés sur les disques ESSD généraux.

La fonctionnalité augmente la taille du pool de tampons InnoDB pour mettre en cache les pages de données du pool de tampons dans la BPE. Ainsi, InnoDB peut utiliser de manière flexible plusieurs supports de stockage.

Implémentation

Après avoir activé la fonctionnalité d'accélération des E/S, les pages de données d'une instance RDS sont mises en cache dans la BPE des disques haute vitesse.

Remarque

Toutes les pages de données mises en cache dans la BPE sont des pages propres (clean pages). Ces pages sont cohérentes avec les données des fichiers de données stockés sur les disques ESSD généraux.

La liste suivante décrit le processus de lecture d'une page de données :

  1. Le client initie une requête de lecture d'une page de données.

  2. La requête atteint le pool de tampons de la mémoire pour interroger la page de données.

    • Si la page de données se trouve dans le pool de tampons, le résultat de la requête est renvoyé au client, et la procédure de requête et de lecture prend fin.

    • Si la page de données ne se trouve pas dans le pool de tampons, le système passe à l'étape 3.

  3. La requête atteint la BPE des disques haute vitesse pour interroger la page de données.

    • Si la page de données se trouve dans la BPE, elle est renvoyée au pool de tampons, puis le résultat de la requête est renvoyé au client. La procédure de requête et de lecture prend fin.

    • Si la page de données ne se trouve pas dans la BPE, le système passe à l'étape 4.

  4. La requête atteint le fichier de table de données des disques ESSD généraux pour interroger la page de données. Si la page de données est trouvée, elle est renvoyée au pool de tampons, puis le résultat de la requête est renvoyé au client.

  5. La procédure de requête et de lecture prend fin.

Périmètre d'application

  • L'instance RDS exécute MySQL.

  • L'instance RDS exécute MySQL 8.0 avec une version mineure du moteur égale ou supérieure à 20230914.

  • L'instance RDS exécute RDS High-availability Edition ou RDS Cluster Edition.

  • Le type de produit de l'instance RDS est standard.

  • L'instance RDS utilise un type d'instance à usage général.

  • L'instance RDS réside dans l'une des régions et zones suivantes. Vous pouvez consulter les régions et zones prises en charge dans la console ApsaraDB RDS.

    Région

    Zone

    Chine (Chengdu)

    Zone B

    Chine (Pékin)

    Zone I

    Chine (Shanghai)

    Zone M

    Zone N

    Chine (Hangzhou)

    Zone J

    Remarque

    Après avoir activé la fonctionnalité I/O acceleration sur la page d'achat d'ApsaraDB RDS, vous pouvez vérifier si la fonctionnalité est disponible dans la section Zone and Network of Primary Node.

Règles de facturation

Si vous activez la fonctionnalité d'accélération des E/S des disques ESSD généraux pour une instance RDS utilisant un type d'instance à usage général, cette fonctionnalité vous est facturée gratuitement.

Remarques importantes

  • La fonctionnalité d'accélération des E/S est fournie gratuitement pour les instances RDS utilisant des types d'instances à usage général.

  • Les données métier sont stockées de manière persistante sur les disques de données. Par conséquent, une perte de données dans la BPE n'affecte pas les données métier ni l'utilisation normale des instances RDS.

  • L'utilisation de la fonctionnalité d'accélération des E/S occupe une certaine quantité de mémoire, équivalente à 4 % de la quantité de mémoire spécifiée par le paramètre buffer_pool_size. La quantité de mémoire allouée selon la valeur par défaut du paramètre buffer_pool_size est automatiquement réduite de 4 %. Si vous souhaitez modifier la valeur du paramètre buffer_pool_size lors d'opérations ultérieures, vous pouvez ajuster cette valeur en fonction de la métrique d'utilisation de la mémoire.

  • Après avoir activé ou désactivé la fonctionnalité d'accélération des E/S pour votre instance RDS, une interruption de service d'environ 30 secondes se produit. Nous vous recommandons d'activer ou de désactiver la fonctionnalité pendant les heures creuses.

  • Si vous activez la fonctionnalité d'accélération des E/S pour votre instance RDS, les performances de l'instance s'améliorent considérablement. Plus les spécifications de l'instance RDS sont élevées, plus l'amélioration des performances est importante. Par exemple, si votre instance RDS standard exécute RDS High-availability Edition et utilise un type d'instance à usage général offrant 8 cœurs et 16 Go de mémoire, les performances de l'instance RDS peuvent être améliorées de 103 %.

  • Le pool de tampons réduit efficacement le nombre d'opérations d'E/S sur disque et améliore les performances d'E/S de votre instance RDS. La taille du pool de tampons varie en fonction de la quantité de mémoire disponible. Si les ressources mémoire sont insuffisantes, la taille du pool de tampons est limitée, ce qui affecte les performances d'E/S.

Utiliser la fonctionnalité d'accélération des E/S

Activer la fonctionnalité d'accélération des E/S

Activer la fonctionnalité d'accélération des E/S lors de la création d'une instance RDS

Lors de la création d'une instance RDS, configurez les paramètres requis pour utiliser la fonctionnalité d'accélération des E/S et activez-la pour l'instance RDS. Pour plus d'informations, consultez Utiliser la fonctionnalité d'accélération des E/S des disques ESSD généraux.

image

Activer la fonctionnalité d'accélération des E/S pour une instance RDS existante qui répond aux exigences d'utilisation de la fonctionnalité

  1. Connectez-vous à la console ApsaraDB RDS et accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où réside l'instance RDS. Recherchez ensuite l'instance RDS et cliquez sur son ID.

  2. Dans la section Basic Information, cliquez sur Configure General ESSD à droite du paramètre Storage Type. Dans la boîte de dialogue qui s'affiche, activez I/O Acceleration.

    image

Désactiver la fonctionnalité d'accélération des E/S

  1. Connectez-vous à la console ApsaraDB RDS et accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où réside l'instance RDS. Recherchez ensuite l'instance RDS et cliquez sur son ID.

  2. Dans la section Basic Information, cliquez sur Configure General ESSD à droite du paramètre Storage Type. Dans la boîte de dialogue qui s'affiche, désactivez I/O Acceleration.

    image

Test de performance

Préparatifs du test

  • Méthode : Effectuez des opérations de lecture et d'écriture sur des instances RDS utilisant le même type d'instance et comparez les performances QPS avant et après l'activation de la fonctionnalité d'accélération des E/S pour ces instances.

  • Volume de données : 300 Go.

  • Outil : Sysbench. Pour plus d'informations, consultez Documentation Sysbench.

    Remarque

    Créez préalablement une instance Elastic Compute Service (ECS). Dans cet exemple, l'outil de test est installé sur l'instance ECS. Pour plus d'informations, consultez Créer et gérer une instance ECS via la console ECS.

  • Instances de test : deux instances RDS exécutant RDS High-availability Edition et utilisant un type d'instance à usage général. Une instance RDS offre 4 cœurs et 8 Go de mémoire, et l'autre offre 8 cœurs et 16 Go de mémoire. La fonctionnalité d'accélération des E/S est activée pour ces instances RDS.

    Édition RDS

    Type d'instance

    Nombre de cœurs CPU et capacité mémoire

    RDS High-availability Edition

    mysql.n2.large.xc

    4 cœurs, 8 Go

    RDS High-availability Edition

    mysql.n2.xlarge.xc

    8 cœurs, 16 Go

Méthode de test

Dans cette section, le système CentOS sert d'exemple pour effectuer le test de performance. Si vous souhaitez installer Sysbench sur d'autres systèmes d'exploitation, suivez les instructions fournies dans Documentation Sysbench.

Installer Sysbench

Exécutez la commande suivante pour installer Sysbench :

git clone https://github.com/akopytov/sysbench.git
cd sysbench
git checkout 0.5

yum -y install make automake libtool pkgconfig libaio-devel
yum -y install mariadb-devel

./autogen.sh
./configure
make -j
make install
 

Tester les performances QPS d'une instance RDS

Description

Le tableau suivant décrit les paramètres impliqués dans le test de performance.

Paramètre

Description

--tables

Le nombre de tables.

--table_size

Le nombre d'entrées dans chaque table.

--rand-type

Le type de distribution utilisé pour générer des nombres aléatoires.

--rand-spec-pct

Le pourcentage de nombres aléatoires spéciaux considérés comme des valeurs spéciales.

--threads

Le nombre de threads concurrents.

--time

La durée du test. Unité : secondes.

Tester les performances en lecture

  1. Exécutez la commande suivante pour générer 300 Go de données comprenant 30 tables avec 40 millions de lignes par table :

    sysbench oltp_read_only --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 prepare
  2. Exécutez la commande suivante pour tester les performances en lecture de l'instance RDS :

    sysbench oltp_read_only --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 run

Tester les performances en écriture

  1. Exécutez la commande suivante pour générer 300 Go de données comprenant 30 tables avec 40 millions de lignes par table :

    sysbench oltp_write_only --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 prepare
  2. Exécutez la commande suivante pour tester les performances en écriture de l'instance RDS :

    sysbench oltp_write_only --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 run

Tester les performances en lecture et en écriture

  1. Exécutez la commande suivante pour générer 300 Go de données comprenant 30 tables avec 40 millions de lignes par table :

    sysbench oltp_read_write --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 prepare
  2. Exécutez la commande suivante pour tester les performances en lecture et en écriture de l'instance RDS :

    sysbench oltp_read_write --tables=30 --table_size=40000000 --rand-type=special --rand-spec-pct=15 --threads=64 --time=100 run

Résultats du test

  • La liste suivante décrit les résultats du test pour l'instance RDS standard exécutant RDS High-availability Edition et utilisant un type d'instance à usage général offrant 4 cœurs et 8 Go de mémoire :

    • Performances en lecture : Les performances QPS sont essentiellement les mêmes avant et après l'activation de la fonctionnalité d'accélération des E/S.

    • Performances en écriture : Après l'activation de la fonctionnalité d'accélération des E/S, les performances QPS s'améliorent de 30 %.

    • Performances en lecture et en écriture : Après l'activation de la fonctionnalité d'accélération des E/S, les performances QPS s'améliorent de 26 %.

    image.png

  • La liste suivante décrit les résultats du test pour l'instance RDS standard exécutant RDS High-availability Edition et utilisant un type d'instance à usage général offrant 8 cœurs et 16 Go de mémoire :

    • Performances en lecture : Après l'activation de la fonctionnalité d'accélération des E/S, les performances QPS s'améliorent de 80 %.

    • Performances en écriture : Après l'activation de la fonctionnalité d'accélération des E/S, les performances QPS s'améliorent de 33 %.

    • Performances en lecture et en écriture : Après l'activation de la fonctionnalité d'accélération des E/S, les performances QPS s'améliorent de 103 %.

    image.png

Références