Partager via


Présentation de Redis managé Azure

Azure Managed Redis fournit un magasin de données en mémoire basé sur le logiciel Redis Enterprise . Redis Enterprise améliore les performances et la fiabilité de l’édition communautaire de Redis, tout en conservant la compatibilité. Microsoft exploite le service, hébergé sur Azure et utilisable par n’importe quelle application au sein ou en dehors d’Azure. Pour plus d’informations sur les différents composants d’Azure Managed Redis, consultez Architecture d’Azure Managed Redis.

Azure Managed Redis peut améliorer les performances et la scalabilité d’une application qui utilise abondamment les magasins de données back-end. Il est en mesure de traiter de grands volumes de demandes d’application en conservant rapidement les données fréquemment consultées dans la mémoire du serveur, qui peuvent être écrites et lues rapidement.

Redis constitue une solution de stockage de données à faible latence et à haut débit critique pour les applications modernes. En outre, Redis est de plus en plus utilisé pour les applications non-cache, y compris l'intégration des données, la déduplication, la messagerie et les classements.

Azure Managed Redis peut être déployé autonome ou déployé avec d’autres services d’application ou de base de données Azure, tels qu’Azure Container Apps, Azure App Service, Azure Functions, Azure SQL ou Azure Cosmos DB.

Scénarios clés

Azure Managed Redis améliore les performances des applications grâce à la prise en charge de modèles d’architecture d’application courants. Les modèles les plus courants sont les suivants :

Modèle Descriptif
Cache de données Les bases de données sont souvent trop grandes pour être chargées directement dans un cache. Le modèle cache-aside est couramment utilisé pour charger des données dans le cache uniquement en cas de besoin. Quand le système modifie les données, il peut également mettre à jour le cache, qui est alors distribué à d’autres clients. En outre, le système peut définir un délai d’expiration pour les données ou utiliser une stratégie d’éviction pour déclencher les mises à jour de données dans le cache.
Cache de contenu De nombreuses pages web sont générées à partir de modèles qui utilisent du contenu statique comme des en-têtes, des pieds de page ou des bannières. Ces éléments statiques ne doivent pas changer souvent. Par rapport aux magasins de données back-end, l’utilisation d’un cache en mémoire permet d’accéder rapidement au contenu statique. Ce modèle réduit le temps de traitement et la charge du serveur, améliorant la réactivité des serveurs web. Il peut vous permettre de réduire le nombre de serveurs nécessaires au traitement des charges. Azure Managed Redis propose le fournisseur de caches de sortie Redis pour la prise en charge de ce modèle avec ASP.NET.
Magasin de sessions Ce modèle est souvent utilisé avec les paniers d’achat et d’autres données d’historique utilisateur qu’une application web peut associer avec les cookies des utilisateurs. Le stockage de trop nombreuses informations dans un cookie peut avoir un effet négatif sur les performances à mesure que la taille du cookie augmente, ce dernier devant être transmis et validé à chaque requête. Une solution classique consiste à utiliser le cookie comme clé pour interroger les données dans une base de données. Lorsque vous utilisez un cache en mémoire tel qu’Azure Managed Redis, associer des informations à un utilisateur est beaucoup plus rapide que l’interaction avec une base de données relationnelle complète.
Déduplication Souvent, vous devez déterminer si une action s’est déjà produite dans un système, par exemple si un nom d’utilisateur est pris ou si un client a déjà envoyé un e-mail. Dans Azure Managed Redis, les filtres de Bloom peuvent rapidement déterminer les doublons et prémunir contre les problèmes.
Classements Redis offre une prise en charge simple et puissante pour le développement de classements de toutes sortes à l’aide de la structure de données d'ensemble trié. En outre, l’utilisation de la géoréplication active peut autoriser le partage mondial d’un classement.
Mise en file d’attente des travaux et des messages Les applications ajoutent fréquemment des tâches à une file d’attente quand l’exécution des opérations associées à la requête prend un certain temps. Les opérations dont l’exécution est plus longue sont mises en file d’attente pour être traitées en séquence, souvent par un autre serveur. Cette méthode est appelée mise en file d’attente des tâches. Azure Managed Redis fournit une file d’attente distribuée pour activer ce modèle dans votre application.
Accélération PowerBI/Analytique Vous pouvez utiliser le pilote ODBC Redis pour tirer parti de Redis pour les cas d’usage de décisionnel, de création de rapports et d’analytique. Étant donné que Redis est généralement beaucoup plus rapide que les bases de données relationnelles, l’utilisation de Redis de cette façon peut augmenter considérablement la réactivité des requêtes.
Transactions distribuées Les applications nécessitent parfois qu’une série de commandes sur un magasin de données en arrière-plan soit exécutée comme une seule opération atomique. Toutes les commandes doivent réussir, ou elles devront toutes être restaurées à leur état initial. Azure Managed Redis prend en charge l’exécution d’un lot de commandes comme transaction unique.

Version de Redis

Azure Managed Redis prend en charge Redis version 7.4.x. Pour plus d’informations, consultez Guide pratique pour mettre à niveau la version de votre instance d’Azure Managed Redis.

Choix du niveau approprié

Quatre niveaux Azure Managed Redis sont disponibles, chacun présentant des caractéristiques de performances et des niveaux de prix différents.

Niveaux et références SKU en un clin d’œil

Voici trois niveaux de stockage qui stockent les données en mémoire :

  • Mémoire optimisée est idéal pour les cas d’utilisation nécessitant beaucoup de mémoire et un ratio mémoire/processeur virtuel élevé (8:1), mais qui n’ont pas besoin des performances de débit les plus élevées. Il fournit un niveau de prix inférieur pour les scénarios où moins de puissance de traitement ou de débit est nécessaire, ce qui en fait un excellent choix pour les environnements de développement et de test.

  • Équilibré (mémoire et calcul) offre un ratio mémoire/processeur virtuel équilibré (4:1), ce qui le rend idéal pour les charges de travail standard. Ce niveau fournit un équilibre sain de ressources de mémoire et de calcul.

  • Optimisé pour le calcul est conçu pour des charges de travail nécessitant un débit maximal en mémoire, avec un ratio mémoire/processeur virtuel faible (2:1). Ce niveau est idéal pour les applications qui demandent les performances les plus élevées.

    Image d’une table qui montre une comparaison des SKU et des catégories.

Voici le niveau qui stocke les données en mémoire et sur disque :

  • Flash Optimized (préversion) Permet aux clusters Redis de déplacer automatiquement les données moins fréquemment sollicitées de la mémoire (RAM) vers le stockage NVMe. Cela réduit les performances, mais permet une mise à l’échelle rentable des caches avec des jeux de données volumineux.

    Image d’une table qui affiche des niveaux Flash Optimisés dans une table affichant l’utilisation du stockage.

Vous pouvez également utiliser la fonctionnalité de persistance des données pour stocker des données sur disque pour les niveaux en mémoire. La persistance des données stocke une copie de sauvegarde de données sur disque pour une récupération rapide si vous rencontrez une panne inattendue. La persistance des données est différente du niveau Optimisé flash, qui est conçu pour stocker des données sur disque pour les opérations classiques.

Le stockage de certaines données sur disque à l’aide du niveau Mémoire optimisée flash n’augmente pas la résilience des données. Vous pouvez également utiliser la persistance des données sur le niveau Optimisé Flash.

Remarque

Pour plus d’informations sur la conception du niveau Flash optimisé, consultez Architecture d’Azure Managed Redis.

Important

Tous les niveaux en mémoire qui utilisent plus de 235 Go de stockage sont en préversion publique, y compris mémoire optimisée M350 et versions ultérieures ; B350 équilibré et supérieur ; et optimisé pour le calcul X350 et versions ultérieures. Tous ces niveaux et versions ultérieures sont en préversion publique.

Tous les niveaux flash optimisés sont en préversion publique.

Comparaison des fonctionnalités

Le tableau suivant décrit quelques-unes des fonctionnalités prises en charge par niveau :

Description de la fonctionnalité Mémoire optimisée Équilibré Optimisé pour le calcul Optimisé pour le stockage flash
Taille (Go) 12 - 1 920 0,5 - 960 3 - 720 250 - 4 500
Contrat de niveau de service (SLA) Oui Oui Oui Oui
Chiffrement des données en transit Oui (point de terminaison privé) Oui (point de terminaison privé) Oui (point de terminaison privé) Oui (point de terminaison privé)
Réplication et basculement Oui Oui Oui Oui
Isolement réseau Oui Oui Oui Oui
Authentification basée sur Microsoft Entra ID Oui Oui Oui Oui
Mise à l'échelle Oui Oui Oui Oui
Disponibilité élevée *Oui *Oui *Oui *Oui
Persistance des données Oui Oui Oui Oui
Géoréplication Oui (actif) Oui (actif) Oui (actif) Non
Instances non cluster Oui Oui Oui Non
Journaux d’audit de connexion Oui (basé sur un événement) Oui (basé sur un événement) Oui (basé sur un événement) Oui (basé sur un événement)
Structures de données JSON (autrement dit, Redis JSON) Oui Oui Oui Oui
Fonctionnalité de recherche (y compris la recherche vectorielle) Oui Oui Oui Non
Structures de données probabilistes (autrement dit, Redis Bloom) Oui Oui Oui Oui
Fonctionnalité de base de données de série chronologique (autrement dit, Redis TimeSeries) Oui Oui Oui Oui
Importation/exportation Oui Oui Oui Oui

* Lorsque la haute disponibilité est activée, Azure Managed Redis est redondant interzone dans les régions avec plusieurs zones de disponibilité.

Lorsque vous utilisez la haute disponibilité (HA), une instance Redis managée Azure est déployée avec des fragments principaux et répliques sur deux nœuds. Dans les régions sans zones de disponibilité, les fragments principaux et répliques sont déployés sur deux nœuds dans la même zone.

Important

Les options de référence SKU B0 et B1 équilibrée ne prennent pas en charge la géoréplication active.

Remarque

La prise en charge du scale-down est limitée dans certaines situations. Pour plus d’informations, consultez Limitations de la mise à l’échelle d’Azure Managed Redis.

Performances réseau

Si vous avez une charge de travail nécessitant un débit élevé, la bande passante réseau peut entraîner un goulot d’étranglement. Vous pouvez augmenter la bande passante en basculant vers un niveau de performance supérieur ou vers une grande taille d’instance. Les instances de taille supérieure offrent davantage de bande passante en raison de la machine virtuelle sous-jacente qui héberge le cache. Des limites de bande passante plus élevées vous permettent d’éviter la saturation du réseau qui provoque des délais d’expiration dans votre application. Pour plus d’informations sur les performances de bande passante, consultez Test de performance.

Nombre maximal de connexions clientes

Chaque référence SKU a un nombre maximal de connexions clientes. Cette limite augmente avec les niveaux de performances plus élevés et les tailles d’instances supérieures. Le tableau suivant indique le nombre maximal de connexions clientes autorisées par référence SKU Redis managée Azure.

Références SKU optimisées pour la mémoire, équilibrées et optimisées pour le calcul

Ce tableau présente les connexions maximales par niveau et taille de mémoire dans les SKU Mémoire Optimisée, Équilibrée, et de Calcul.

Taille (Go) Mémoire
Optimisée
Équilibré Compute
Optimisée
0,5 - 15,000 -
1 - 15,000 -
3 - 15,000 30,000
6 - 15,000 30,000
12 15,000 30,000 75 000
Vingt-quatre 30,000 75 000 150 000
60 75 000 150 000 200 000
120 150 000 200 000 200 000
175 200 000 200 000 200 000
235 200 000 200 000 200 000
360 * 200 000 200 000 200 000
480 * 200 000 200 000 200 000
720 * 200 000 200 000 200 000
960 * 200 000 200 000 -
1440 * 200 000 - -
1920 * 200 000 - -
4500 * - - -

* Les tailles avec un astérisque sont en aperçu public.

SKU optimisé pour le flash

Ce tableau présente les connexions maximales par niveau et taille de mémoire dans la référence SKU optimisée pour la mémoire flash (préversion).

Taille (Go) Flash
Optimisée
(préversion)
235 * 75 000
480 * 150 000
720 * 200 000
960 * 200 000
1440 * 200 000
1920 * 200 000
4500 * 200 000

* Les tailles avec un astérisque sont en aperçu public.

Disponibilité élevée

Azure Managed Redis offre une haute disponibilité. Celui-ci couvre uniquement la connectivité aux points de terminaison du cache. Le contrat SLA ne couvre pas la protection contre la perte de données. Pour plus d’informations sur le contrat SLA, consultez le contrat SLA. Il est possible de désactiver la haute disponibilité dans une instance Azure Managed Redis. La désactivation de la haute disponibilité réduit le prix, mais entraîne une perte de données et un temps d’arrêt. Nous vous recommandons de désactiver la haute disponibilité uniquement pour les scénarios de développement/test.

Autres considérations relatives à la tarification

Important

Azure Managed Redis Enterprise nécessite une adresse IP pour chaque instance de cache. Actuellement, les frais d’adresse IP sont absorbés par Azure Managed Redis, et ne sont pas assumés par les clients. La facturation peut changer à l’avenir. Pour plus d’informations, consultez Tarification des adresses IP.

Important

L’utilisation de la géoréplication active produit un transfert de données entre les régions Azure. Ces frais de bande passante sont actuellement absorbés par Azure Managed Redis, et ne sont pas assumés par les clients. La facturation peut changer à l’avenir. Pour plus d’informations, consultez Tarification de la bande passante.

Disponibilité par région

Azure Managed Redis s’étend continuellement dans de nouvelles régions. Pour vérifier la disponibilité dans votre région, consultez Disponibilité des produits par région.

Migration depuis Azure Cache pour Redis

Pour plus d’informations sur la migration d’Azure Cache pour Redis vers Azure Managed Redis, consultez Move from Azure Cache for Redis to Azure Managed Redis.