Données du cache de groupe : un aperçu
Les éléments des données du cache qui ont une relation ou relèvent de la même catégorie peuvent être regroupés à l'aide de NCacheLa fonctionnalité des groupes de. À l'aide de groupes, vous pouvez logiquement partitionner vos données pour une meilleure efficacité.
Notes
Cette fonctionnalité est uniquement disponible dans NCache Enterprise.
Quand utiliser les groupes de données de cache ?
Supposons que vous ayez un nombre important de clients dans votre entreprise et que vous souhaitiez classer les clients en fonction des revenus générés. Par exemple, la première catégorie doit ajouter tous les clients dont les revenus générés sont supérieurs à 1000 XNUMX $ Les clients importants à la cachette.
Cela peut être fait en exécutant une requête SQL sur la base de données qui obtient les données résultantes contenant ces clients. Cependant, pour éviter d'exécuter cette requête SQL à chaque fois sur l'ensemble de la base de données, vous pouvez ajouter une fois l'ensemble aux données du cache avec un nom de groupe, afin que les données résident sous ce groupe particulier.
Le tableau ci-dessous est une illustration du scénario ci-dessus.
Pourquoi utiliser les groupes ?
Les groupes améliorent l'efficacité et offrent à l'utilisateur la possibilité de récupérer ou de supprimer facilement les données du cache en fonction de catégories logiques. Lorsque les données mises en cache sont regroupées selon certains critères rationnels, le temps de recherche des données relevant des mêmes critères est considérablement réduit. Par conséquent, le regroupement produit des résultats de recherche plus rapides, améliorant ainsi l’évolutivité de votre application.
De plus, l'utilisation de groupes pour mettre en cache les données fréquemment consultées relevant de critères de recherche spécifiques permet d'économiser le coût de la recherche dans la base de données à chaque fois.
Propriétés
Hiérarchie à un niveau : Il n'y a pas d'autre niveau de hiérarchie après le groupe. Les éléments du cache peuvent être logiquement séparés par un seul groupe.
Sensible aux majuscules et minuscules: Les groupes sont sensibles à la casse.
Type de données de chaîne : Les groupes ne peuvent être que de type chaîne de données.
Pas de chevauchement : Les groupes ne se chevauchent pas et portent des noms distincts.
Opérations CRUD avec des groupes
NCache vous permet d'effectuer des opérations CRUD sur des données avec des informations de groupe en utilisant le CacheItem
classe. CacheItem
permet de définir des spécifications supplémentaires associées à un objet en tant que property
de groupes. Les détails et le comportement pertinents sont expliqués ci-dessous.
Ajouter/mettre à jour des données avec des groupes
Vous pouvez ajouter ou mettre à jour un CacheItem
dans le cache en spécifiant un groupe. Pendant ce temps, un élément peut appartenir à un groupe unique, tandis qu'un groupe peut avoir de nombreux éléments associés.
La Add
opération ajoute un CacheItem
avec un groupe dans le cache et échoue avec une exception si la clé existe déjà dans le cache. Vous pouvez mettre à jour le groupe d'un élément existant à l'aide d'un Insert
opération qui écrase le groupe précédent par rapport à l'élément spécifié. Si la clé ou le groupe associé à la clé n'existe pas dans le cache, l'élément est ajouté avec le groupe.
En outre, vous pouvez également ajouter/insérer une collection d'éléments avec des groupes dans le cache à l'aide de la AddBulk
/InsertBulk
méthodes.
Notes
Le Insert
est une approche recommandée lors de l'ajout d'un élément avec le groupe au cache car il est à sécurité intégrée.
Vous pouvez ajouter ou mettre à jour un CacheItem
dans le cache avec les groupes. Dans le cas d'un ajout, si le groupe existe déjà, l'opération échouera. Dans le cas d'une mise à jour, si le groupe n'existe pas dans le cache, il sera ajouté au cache, sinon il écrasera le groupe précédent.
Comportement
Il ne peut y avoir qu'un seul élément associé à un seul groupe. Cela signifie que vous ne pouvez pas affecter plusieurs groupes à un CacheItem
.
Récupérer des données avec des groupes
Une fois les éléments ajoutés avec des groupes au cache, vous pouvez récupérer les éléments du cache en spécifiant le groupe comme critère de recherche. Vous pouvez récupérer une liste de clés et un dictionnaire de clés avec des éléments de cache en utilisant le GetGroupKeys
ainsi que GetGroupData
méthodes, respectivement.
Vous pouvez récupérer une grande partie de CacheItem
du cache à l'aide de groupes. Vous pouvez soit récupérer une liste de clés, soit un dictionnaire de clés et d'éléments à l'aide de la GetGroupKeys
ainsi que GetGroupData
méthodes, respectivement.
Supprimer des données avec des groupes
Vous pouvez supprimer une grande partie de CacheItem
du cache à l'aide de groupes. Vous spécifiez un groupe à l'aide de la RemoveGroupData
, puis toutes les clés et métadonnées appartenant au groupe spécifié sont supprimées du cache.
Comportement du cache client
Les opérations d'écriture telles que l'ajout et la mise à jour sont d'abord effectuées sur le cache du cluster et répliquées respectivement sur le cache du client. Les opérations de lecture sont directement effectuées sur les nœuds du serveur.
Voir aussi
Ajouter/Mettre à jour les données du cache avec des groupes
Récupérer les données du cache avec des groupes
Supprimer les données du cache avec le groupe